transparent a virus... Dodał: grzywka18 Dnia: 2008-05-13 11:19:58 hmm Dodał: dzibi Dnia: 2007-12-12 10:01:14 Bez tytułu Dodał: grzywka18 Dnia: 2007-12-11 17:46:06 Bez tytułu Dodał: termid Dnia: 2007-05-09 18:01:11 Bez tytułu Dodał: sarelo33 Dnia: 2006-12-30 23:50:14 Jest ok ale.. Dodał: theviant Dnia: 2006-11-16 08:10:05
Google
Newsletter
Zapisz się na nasz newsletter, jeżeli chcesz być na bieżąco informowany o aktualnościach..
Zarządzanie paczkami we FreeBSD
środa, 08 października 2003 -
Napisał: Artur Kulda (20625 odsłon)
Wraz z systemem FreeBSD otrzymujemy doskonałego Menedżera
Pakietów (Packages System), dzięki któremu możemy w prosty i szybki
sposób zainstalować interesującą nas aplikację. Chcąc to uczynić możemy
użyć polecenia pkg_add i zainstalować aplikację z lokalnego pliku
(paczki) lub ze zdalnego serwera poprzez sieć. Aby ją odinstalować wystarczy
użyć polecenia pkg_delete.
Ręczne ściąganie paczek i ich instalowanie
Łączymy się z serwerem ftp np. ftp2.freebsd.org, ściągamy paczkę np.
lsof-4.56.4.tgz i ją instalujemy:
# ftp -a ftp2.FreeBSD.org
Connected to ftp2.FreeBSD.org.
220 ftp2.FreeBSD.org FTP server (Version 6.00LS) ready.
331 Guest login ok, send your email address as password.
230-
230- This machine is in Vienna, VA, USA, hosted by Verio.
230- Questions? E-mail
230-
230-
230 Guest login ok, access restrictions apply.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> cd /pub/FreeBSD/ports/packages/sysutils/
250 CWD command successful.
ftp> get lsof-4.56.4.tgz
local: lsof-4.56.4.tgz remote: lsof-4.56.4.tgz
200 PORT command successful.
150 Opening BINARY mode data connection for 'lsof-4.56.4.tgz' (92375 bytes).
100% |**************************************************| 92375 00:00 ETA
226 Transfer complete.
92375 bytes received in 5.60 seconds (16.11 KB/s)
ftp> exit
# pkg_add lsof-4.56.4.tgz
Jeżeli nie masz na lokalnym dysku paczki z programem, który Cię
interesuje (takich jak na dyskach FreeBSD CD-ROM) lub jeżeli nie chcesz ściągać
i instalować jej ręcznie, wtedy możesz użyć opcji -r dodając ją do
polecenia pkg_add. Spowoduje to automatyczne określenie poprawnej wersji tego
programu, ściągnięcie go i zainstalowanie ze zdalnego serwera FTP.
# pkg_add -r lsof
Powyższy przykład spowoduje ściągnięcie i zainstalowanie
paczki bez większej ingerencji użytkownika. pkg_add ściąga plik za pomocą
narzędzia fetch , które to używa zmiennych środowiskowych takich jak:
FTP_PASSIVE_MODE, FTP_PROXY i FTP_PASSWORD. Możesz potrzebować ustawić jedną
lub więcej z tych opcji jeżeli jesteś za firewallem, albo będziesz
potrzebował użyć FTP/HTTP proxy. Więcej informacji możesz uzyskać w podręczniku
manuala fetch(3). Kiedy używamy opcji -r (czyli zdalnego ściągania
paczek poprzez FTP)
pomijamy podawanie numeru wersji. pkg_add automatycznie ściągnie ostatnią
dostępną
wersję paczki.
Pliki z paczkami są dostępne w dwóch formatach: .tgz i
.tbz. Możesz je znaleźć
na ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/packages/,
albo na dyskach CD-ROM z FreeBSD. Na płytach CD paczki znajdują się w
katalogu /packages. Rozmieszczenie paczek jest podobne do drzewa portów (/usr/ports),
czyli podzielone na kategorie, które to znajdują się w osobnych katalogach.
Wyjątkiem jest katalog All, w którym to znajdują się wszystkie paczki (bez
podziału na kategorie).
Zarządzanie paczkami
pkg_info jest narzędziem, które pokazuje i opisuje paczki zainstalowane
w systemie.
# pkg_info
cvsup-16.1 A general network file distribution system optimized for CV
docbook-1.2 Meta-port for the different versions of the DocBook DTD
...
Aby dowiedzieć się czy dany pakiet jest zależny od innych
możemy zrobić to w łatwy sposób
# pkg_info -r wget-1.8.2_3
Information for wget-1.8.2_3:
Depends on:
Dependency: libiconv-1.8_2
Dependency: expat-1.95.6_1
Dependency: gettext-0.11.5_1
Jeżeli chcemy się dowiedzieć czy od danego pakietu zależą
inne (czyt. wymagają go) wystarczy użyć opcji -R
# pkg_info -R gettext-0.11.5_1
Information for gettext-0.11.5_1:
Required by:
mc-4.5.55_5
wget-1.8.2_3
gmake-3.80
pkg_version jest natomiast narzędziem reasumującym
wersje wszystkich zainstalowanych paczek. Porównuje ono wersję paczki
zainstalowanej z bieżącą wersją znalezioną w drzewie portów.
# pkg_version
cvsup
=
docbook =
...
Symbol znajdujący się w drugiej kolumnie pokazuje relatywny
wiek zainstalowanej wersji do wersji dostępnej w lokalnym drzewie portów.
Znaczenie symboli
= Zainstalowana wersja jest taka sama jak ta dostępna
w portach.
< Zainstalowana wersja jest starsza od wersji dostępnej
w portach.
> Zainstalowana wersja jest nowsza od wersji znajdującej
się w portach. (Lokalne drzewo portów prawdopodobnie jest stare).
? Zainstalowana paczka nie została znaleziona w
portach. (To się może zdarzyć np. jeżeli zainstalujemy port, który później
zostanie usunięty lub zostanie zmieniona nazwa portu).
* Jest wiele wersji dla tej paczki.
Uaktualnianie paczek
Komenda pkg_update jest używana do aktualizowania już
zainstalowanych paczek. To ona troszczy się oto aby poprawnie zamienić
zainstalowaną aplikację na nowo instalowaną wersję. Poniższe polecenie
uaktualni lsof do wersji 4.68.2.
# pkg_update lsof-4.68.2.tgz
Przy stosowaniu tej opcji należy zachować szczególną ostrożność
(zwłaszcza przy paczkach, od których zależne są inne pakiety), ponieważ
aktualizując taki pakiet musimy zaktualizować również wszystkie zależne
pakiety.
Normalne użycie pkg_update powoduje zamianę wszystkich
zainstalowanych wersji jednego programu na tą nowszą. Nie zawsze jednak jest
to pożądane ponieważ, istnieją sytuacje gdzie różne programy wymagają różnych
wersji paczek zainstalowanych w tym samym czasie (inaczej mówiąc: jeden
program wymaga lsof-4.68.2 a drugi lsof-4.56.4.tgz). Aby zamienić starą
specyficzną wersję paczki na nowszą musimy użyć opcji -r.
# pkg_update -r stara_paczka
nowa_paczka
Usuwanie paczek
Aby usunąć uprzednio zainstalowane oprogramowanie z paczki użyj narzędzia
pkg_delete.
# pkg_delete lsof-4.56.4.tgz
Aby usunąć wszystkie zainstalowane paczki wydajemy polecenie
# pkg_delete -a
i mamy wszystko z głowy ;-))
Wszystkie informacje o paczkach są składowane w katalogu /var/db/pkg.
Listę zainstalowanych plików oraz opis każdej paczki możemy znaleźć właśnie
w tym katalogu. Po bardziej szczegółowe informacje odsyłam do podręcznika
manuala.
Re: Zarządzanie paczkami we FreeBSD Dodane przez KaCzY w dniu - 2003-10-10 18:06:53
# uname -rs FreeBSD 5.1-RELEASE-p10 # id uid=0(root) gid=0(wheel) groups=0(wheel), 5(operator) # pkg_update pkg_update: Command not found. # man pkg_update No manual entry for pkg_update # man -k pkg_update pkg_update: nothing appropriate # find / -name pkg_update* || echo "Ktos sie nie bal i zajebał" Ktos sie nie bal i zajebał
No to niby co po pkg_update robi :-)
Ahh... te "piątki" Dodane przez arti w dniu - 2003-10-10 22:54:00
#uname -rs FreeBSD 4.8-RELEASE-p13
#pkg_update No package specified.
#man pkg_update PKG_UPDATE(1) FreeBSD General Commands Manual PKG_UPDATE(1)
NAME pkg_update - update an installed package [............]
#find / -name pkg_update && echo "U mnie nikt nie zajebal " /usr/sbin/pkg_update U mnie nikt nie zajebal
P.S. Widocznie te "piątki" mają już taką przypadłość ;-))
Re: Ahh... te Dodane przez KaCzY w dniu - 2003-10-11 00:48:40
To byla taka mala prowokacja bo sam sie chcialem czegos dowiedziec :-). Ale wyglada na to ze dla serii 5.x to wycofali :-)
Nie ma rowniez o tym wzmianki w handbooku i moge sie zalozyc ze ta binarka nie aktualizuje ci sie przy 'make world'.
Sam mam jeszcze maszyne 4.X i tam tez jest pkg_update a raczjej bylo bo je wywaliem jak sie binarka nie zaktualizowala przy make world.
No to jak jest w koncu ?
Re: Ahh... te Dodane przez arti w dniu - 2003-10-11 12:39:51
Z tego co widzę to po ostatnim 'make buildworld i make installworld' data tej binarki się zmieniła:
-r-xr-xr-x 1 root wheel 43796 Oct 6 11:03 pkg_add -r-xr-xr-x 2 root wheel 19676 Oct 6 11:03 pkg_check -r-xr-xr-x 1 root wheel 37076 Oct 6 11:03 pkg_create -r-xr-xr-x 1 root wheel 33688 Oct 6 11:03 pkg_delete -r-xr-xr-x 1 root wheel 37272 Oct 6 11:03 pkg_info -r-xr-xr-x 2 root wheel 19676 Oct 6 11:03 pkg_sign -r-xr-xr-x 1 root wheel 5215 Oct 6 11:03 pkg_update -r-xr-xr-x 1 root wheel 16551 Oct 6 11:03 pkg_version
Więcej na ten temat nie umiem powiedzieć, ponieważ się tym nie interesowałem i nie używam tej opcji (wogóle nie używam pkg_* jeżeli mam możliwość korzystania ze sztywnego łącza). Na codzień preferuję /usr/ports i jestem zagorzałem zwolennikiem tego roziązania. Powoli oswajam się również z portupgrade.
Re: Ahh... te Dodane przez KaCzY w dniu - 2003-11-06 06:45:58
Tak naprawde to nie binarka a skrypt w perlu. Perla nie ma w base systemie od 5.0 wiec i pkg_update wywalili z pkg_install.
Zagadka rozwiazana :-)
Tylko zarejestrowani użytkownicy mogą pisać komentarze. Prosze zaloguj się i dodaj komentarz.
Możesz przystosować swój
komputer do pełnienia
roli serwera instalując
port/paczkę
instant-server. Jeśli
masz zainstalowane porty,
możesz to zainstalować
robiąc tak
# cd
/usr/ports/misc/instant-s
erver
# make install && make
clean
jako root. To zainstaluje
kolekcję pakietów które
są właściwe na serwerze.