czwartek, 21 sierpnia 2008 
Start arrow FreeBSD arrow PORTY I PACZKI arrow Menedżer pakietów pkg
Menu BSD4u
FreeBSD
OpenBSD
NetBSD
Dla *BSD
FAQ BSD4u
Forum BSDGuru.org
Security Advisory
Licencje
Images BSD
Menu ogólne
Start
Aktualności
Download
Sondy
Szukaj
Linki
Książki
About BSD4u
Info
Team BSD4u
Regulamin
Kanał #BSD4u
Kontakt
Sondy
Co sądzisz o naszym nowym Projekcie, i jak oceniasz zmianę koncepcji Projektu?
 
Popularne
Kompilacja i konfigu...
SQUID - najpopularni...
Neostrada+ i modem ...
NATowanie czyli jak ...
Upgrade systemu
Samba - serwer plikó...
Apache (konfiguracja...
Praktyczne IPFW
MRTG - statystyki ru...
CVSup - pomocny podc...
Neostrada na modemie...
Postfix z autoryzacj...
Postfix - bezpieczny...
System Portów (Kolek...
Dummynet - dzielenie...
Top Download
File icon Postfix - "Krok po kroku" v1.06568
File icon Postfix - "Krok po kroku" v1.16338
File icon PPTPd - "Prosty i szybki VPN" v1.0b6013
File icon sdi.sh3837
File icon uEagle 1.0p12960
File icon named.sh2903
File icon uEagle 0.99b2861
File icon cs.sh2776
File icon uEagle 1.02752
File icon uEagle 1.12554
Ostatnie komentarze
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

Google


Newsletter
Zapisz się na nasz newsletter, jeżeli chcesz być na bieżąco informowany o aktualnościach..




Zarządzanie paczkami we FreeBSD Drukuj E-mail
Oceny: / 15
KiepskiBardzo dobry 
ś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.


Autor: Artur Kulda
arti(at)bsd4u.org

Artykuł napisany na podstawie FreeBSD Handbook (rozdział: 4.4 Using the Packages System)
http://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/packages-using.html

Komentarze:
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 :-) 
 
http://www.freebsd.org/cgi/man.cgi?query=pkg_update&apropos=0&sektion=0&manpath=FreeBSD+5.1-current&format=html 
 
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.

Powered by AkoComment!

Ostatnio aktualizowany ( sobota, 05 listopada 2005 )

« wstecz   dalej »
Ciekawostki
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.
Pobierz
FreeBSD
OpenBSD
NetBSD
DragonFlyBSD
PC-BSD
FreeSBIE LiveCD
4.4BSD Lite
Reklama M3M.pl
Domeny
Książki

FreeBSD. Księga eksperta

FreeBSD. Księga eksperta

Cena: 125.00 zł
Dodaj do koszyka


FreeBSD. Podstawy administracji systemem

FreebBSD

Cena: 64.90 zł
Dodaj do koszyka


OpenBSD. Podstawy administracji systemem

OpenBSD

Cena: 84.90 zł
Dodaj do koszyka


OpenBSD. Tworzenie firewalla za pomocą PF

Firewall PF

Cena: 44.90 zł
Dodaj do koszyka

Licznik odwiedzin
Odwiedziło już nas
2375255
Internautów od lutego 2003

Korzystamy ze statysyk