Većina modernih operativnih sustava sličnih Unixu nudi centralizirane mehanizme za pronalaženje i instaliranje paketa. Softver se obično distribuira u obliku paketa koji su pohranjeni u spremištima. Paketi sadrže glavne komponente operacijski sustav, kao i zajedničke knjižnice, aplikacije, usluge i dokumentacija.
Sustav upravljanja paketima izvan instalacije softver, nudi mnoge druge značajke i alate za nadogradnju već instaliranih paketa. Spremišta paketa osiguravaju prolazak koda potrebna provjera za korištenje u sustavu, i to instalirane verzije softver su odobrili programeri.
Prilikom postavljanja poslužiteljskog ili razvojnog okruženja, najbolje je potražiti pakete u službenim spremištima. Paketi u stabilna verzija distribucija može biti zastarjela, osobito ako se softver brzo ažurira.
Upravljanje paketima je vitalna vještina za administratori sustava i programeri.
Ovaj vodič pokriva osnove upravljanja paketima: pronalaženje, instaliranje i ažuriranje paketa za različite distribucije.
Sustavi za upravljanje paketima: Kratak pregled
Većina sustava za upravljanje paketima izgrađena je oko skupova datoteka paketa. Datoteka paketa je obično arhiva koja sadrži prevedene binarne datoteke, instalacijske skripte i druge resurse koji čine program. Paketi također sadrže vrijedne metapodatke, uključujući njihove ovisnosti (popis paketa potrebnih za pokretanje programa).
Operacijski sustav | Format |
Debian | .deb |
ubuntu | .deb |
CentOS | .rpm |
Fedora | .rpm |
FreeBSD | portovi, .txz |
CentOS, Fedora i drugi Red Hat sustavi koriste RPM datoteke. CentOS koristi yum manager za interakciju s paketima i spremištima. U najnovije verzije Fedora yum zamijenjen je moderniziranim dnf upraviteljem. Na Debianu i njegovim sustavima (Ubuntu, Linux Mint, Raspbian) koristi .deb format. Upravitelj paketa APT (Advanced Packaging Tool) pruža naredbe koje se koriste za najčešće operacije: pronalaženje spremišta, upravljanje ažuriranjima, instaliranje skupa paketa i njihovih ovisnosti. APT naredbe rade kao prednji uslužni program niži nivo dpkg koji upravlja instalacijom pojedinačnih .deb paketa na lokalni sustav; ako je potrebno, ovaj se pomoćni program može eksplicitno pozvati.
sustav binarne datoteke FreeBSD-om upravlja naredba pkg. Osim toga, FreeBSD nudi kolekciju portova, lokalna struktura direktorije i alate koji vam omogućuju ekstrahiranje, prevođenje i instalaciju paketa iz izvorni kod s make datotekama. Obično je prikladnije koristiti pkg manager, ali ponekad prethodno kompajlirani paketi nisu dostupni.
Ažuriranje popisa paketa
Većina sustava održava lokalnu bazu podataka o paketima dostupnim iz udaljenih spremišta. Preporuča se da ažurirate ovu bazu podataka prije instaliranja ili nadogradnje paketa. Djelomične iznimke od ovog uzorka su yum i DNF, koji provjeravaju ažuriranja paketa prije izvođenja nekih operacija.
Operacijski sustav | Naredba |
Debian/Ubuntu | sudo apt-dobi ažuriranje |
CentOS | yum check-update |
Fedora | dnf provjera ažuriranja |
FreeBSD paketi | sudo pkg ažuriranje |
FreeBSD portovi | sudo portsnap dohvati ažuriranje |
Ažuriranje instaliranih paketa
Održavanje instaliranog softvera ažuriranim bez pomoći sustava za upravljanje paketima prilično je dugotrajan zadatak. Morat ćete sami pratiti ažuriranja paketa i sigurnosne obavijesti za stotine različitih paketa. Naravno, upravitelj paketa neće riješiti svaki problem s kojim se možete susresti prilikom ažuriranja softvera, ali će pomoći da većina komponenti sustava bude ažurirana sa samo nekoliko naredbi.
U FreeBSD sustav ažuriranje instaliranih portova može zahtijevati ručno podešavanje. Preporuča se da pregledate /usr/ports/UPDATING prije ažuriranja portmastera.
Sustav | Naredba |
Debian/Ubuntu | sudo apt-get upgrade |
sudo apt-get dist-upgrade | |
CentOS | sudo yum ažuriranje |
Fedora | sudo dnf nadogradnja |
FreeBSD paketi | sudo pkg nadogradnja |
FreeBSD portovi | manje /usr/ports/UPDATING |
cd /usr/ports/ports-mgmt/portmaster && sudo make install && sudo portmaster -a |
Potražite pakete
Većina distribucija nudi grafičko sučelje ili sučelje vođeno izbornikom za zbirke paketa. Omogućuje vam pregledavanje kategorija i traženje novog softvera. Međutim, najčešće najbrže i najviše učinkovit način pretraživanje paketa je pretraživanje pomoću alata naredbenog retka.
Sustav | Naredba |
Debian/Ubuntu | apt-cache search search_string |
CentOS | yum search search_string |
yum pretraži sve search_string | |
Fedora | dnf search search_string |
dnf pretraži sve search_string | |
FreeBSD (paketi) | pkg search search_string |
pkg traženje -f string_traži | |
pkg pretraga -D string_traženja | |
FreeBSD (priključci) | cd /usr/ports && izvrši pretragu ime=paket |
cd /usr/ports && make search key=search_string |
Informacije o paketu
Kada odlučujete kako instalirati paket, zatražite pomoć od Detaljan opis paketi. Ovaj čitljivi tekst često sadrži korisne metapodatke kao što su brojevi verzija, popis ovisnosti i tako dalje.
Sustav | Naredba |
Debian/Ubuntu | apt-cache show paket |
dpkg -s paket | |
CentOS | yum info paket |
yum deplist paket | |
Fedora | dnf info paket |
dnf repoquery --zahtijeva paket | |
FreeBSD (paketi) | pkg info paket |
FreeBSD (priključci) | cd /usr/ports/category/port && cat pkg-descr |
Instaliranje paketa iz spremišta
Znajući naziv potrebnog paketa, možete ga vrlo brzo instalirati jednom naredbom. Također možete navesti sve pakete koje je potrebno instalirati u jednoj naredbi.
Sustav | Naredba |
Debian/Ubuntu | sudo apt-get instalacijski paket |
sudo apt-get install package1 package2 ... | |
sudo apt-get install -y paket | |
CentOS | sudo yum instalacijski paket |
sudo yum instaliraj paket 1 paket 2 ... | |
sudo yum install -y paket | |
Fedora | sudo dnf instalacijski paket |
sudo dnf instaliraj paket 1 paket 2 ... | |
sudo dnf install -y paket | |
FreeBSD (paketi) | sudo pkg instalacijski paket |
sudo pkg instaliraj paket1 paket2 ... | |
FreeBSD (priključci) | cd /usr/ports/category/port && sudo make install |
Instaliranje paketa iz lokalnog datotečnog sustava
Ponekad programeri ili dobavljači nude batch datoteke za preuzimanje, čak i ako aplikacija nije službeno pakirana za ovaj operativni sustav.
Obično se ovi paketi mogu preuzeti pomoću web preglednika ili uslužni programi za kovrče u naredbeni redak. Nakon što se paket preuzme, može se instalirati jednom naredbom.
Na sustavima sličnim Debianu, dpkg upravlja pojedinačnim datotekama paketa. Ako paket ima ovisnosti koje nisu instalirane na sustavu, gdjebi ih može preuzeti iz službenog spremišta.
Na sustavima CentOS i Fedora za instalaciju pojedinačne datoteke a rukovanje potrebnim ovisnostima koriste yum i dnf.
Sustav | Naredba |
Debian/Ubuntu | sudo dpkg -i paket.deb |
sudo apt-get install -y gdebi&& sudo gdebi package.deb | |
CentOS | sudo yum instalacijski paket.rpm |
Fedora | sudo dnf instalacijski paket.rpm |
FreeBSD (paketi) | sudo pkg dodaj paket.txz |
sudo pkg dodaj -f paket.txz |
Uklanjanje paketa
Upravitelj paketa točno zna koje datoteke svaki paket nudi, tako da se može koristiti za jednostavno uklanjanje svih nepotrebnih programa.
Danas bih želio ukratko opisati naredbe upravitelja paketa njam- službena verzija FreePBX-a temelji se na CentOS-u, koji ima instaliran yum prema zadanim postavkama. Koristan je za instaliranje, uklanjanje, ažuriranje paketa.
Instalacija paketa
Na primjer, za instaliranje paketa mc trebate unijeti naredbu yum install mc. Nakon unosa naredbe, sustav će tražiti potvrdu. Da bi potvrda bila odobrena prema zadanim postavkama, morate dodati ključ -y, na primjer yum –y instaliraj mc:
# yum install mc Učitani dodaci: fastestmirror Brzine učitavanja zrcala iz keširane datoteke hosta * baza: mirror.corbina.net * epel: mirror.datacenter.by * dodaci: mirror.corbina.net * ažuriranja: mirror.corbina.net Rješavanje ovisnosti -- > Pokretanje provjere transakcije ---> Paket mc.x86_64 1:4.8.7-11.el7 bit će instaliran --> Završeno razrješenje ovisnosti Razriješene ovisnosti =================== ==================================================== =========== Veličina spremišta verzije Arch paketa ================================= == ============================================ Instalacija: mc x86_64 1:4.8 .7-11.el7 base 1,7 M Sažetak transakcije ========================================= ====================================== Instalirajte 1 paket Ukupna veličina preuzimanja: 1,7 M Instalirana veličina: 5,6 M Je li ovo u redu : y Preuzimanje paketa: mc-4.8.7-11.el7.x86_64.rpm | 1,7 MB 00:00 Pokrenuta transakcija Pokrenuta provjera testa transakcije Test transakcije je uspjela Pokrenuta transakcija Instalacija: 1:mc-4.8.7-11.el7.x86_64 1/1 Provjera: 1:mc-4.8.7-11.el7.x86_64 1 /1 Instalirano: mc.x86_64 1:4.8.7-11.el7 Dovršeno!
Uklanjanje paketa
Da biste uklonili paket, odnosno, trebate unijeti naredbu yum remove mc . Slično, možete koristiti tipku za potvrdu -y:
# yum ukloni mc Učitane dodatke: fastestmirror Rješavanje ovisnosti --> Pokretanje provjere transakcije ---> Paket mc.x86_64 1:4.8.7-11.el7 bit će obrisan --> Završeno razrješenje ovisnosti Razriješene ovisnosti ====== ==================================================== ====================== Veličina spremišta verzije Arch paketa ====================== == ==================================================== ====== Uklanjanje: mc x86_64 1:4.8.7-11.el7 @base 5.6 M Sažetak transakcije ======================== === ==================================================== ==== Ukloni 1 instalirani paket Veličina: 5,6 M Je li ovo u redu : y Preuzimanje paketa: Pokretanje provjere transakcije Pokretanje testa transakcije Test transakcije je uspio Izvođenje transakcije Brisanje: 1:mc-4.8.7-11.el7.x86_64 1/1 Provjera : 1:mc-4.8.7-11.el7.x86_64 1/1 Uklonjeno: mc.x86_64 1:4.8.7-11.el7 Dovršeno!
Ažuriranje paketa
Pretpostavimo da jesi stara verzija mysql i trebate ga ažurirati - ovdje se koristi naredba Ažuriraj. Cijela naredba će izgledati ovako: yum update mysql .
Pretraživanje paketa
Ako želite provjeriti je li određeni paket instaliran na poslužitelju i dostupan za instalaciju, upotrijebite naredbu popis. Cijela naredba će izgledati ovako: yum list mysql . Također možete odrediti točnu verziju paketa ako trebate detaljnije pretraživanje.
Prikaz informacija o paketu
Ako želite prikazati informacije o paketu, koristite naredbu info. Cijela naredba će izgledati ovako: yum info mc .
Prikaz informacija o svim dostupnim i instalirane pakete
Za to se koristi naredba popis s modifikatorima. Za izlaz dostupnih paketa: yum lista | manje i instaliran popis yum | manje
Ispitivanje dostupna ažuriranja za pakete i samo ažuriranje
Naredba za provjeru je provjera ažuriranja, a za ažuriranje - Ažuriraj. U nastavku su tri primjera upotrebe naredbi:
- yum check-update mysql - provjeriti ažuriranja mysql paketa;
- yum list updates - prikaz popisa ažuriranja;
- yum update mc - ažuriranje Midnight Commandera;
- yum -y ažuriranje - ažuriranje svih instaliranih paketa;
Grupni paketi i operacije s njima
U Linuxu se neki paketi skupljaju u takozvane grupne pakete – npr. DNS poslužitelj imena, urednici, Java razvoj itd. Uz yum, možete instalirati skupne pakete pomoću naredbe grupna instalacija- primjer ispod yum groupinstall 'Grupiranje . Ukratko ću opisati ostale naredbe za manipulaciju grupnim paketima:
- yum grouplist - prikaz svih grupnih paketa dostupnih za instalaciju;
- yum groupupdate 'Baza' - ažuriranje određenog paketa grupe, u ovaj slučaj– baza;
- yum groupremove 'Editors' - ukloniti grupni paket;
Spremišta u yum
Potraga za paketima odvija se u takozvanim repozitorijumima, u nastavku ću dati nekoliko naredbi za rad s njima - princip je isti kao i kod paketa (naredbe popisa, na primjer). Navedite sva aktivna spremišta s yum repolistom i navedite neaktivna spremišta s yum repolist all
Za instalaciju paketa iz određenog spremišta, bilo aktivnog ili neaktivnog, koristi se ključ --omogućirepo. Kao primjer - phpmyadmin instalacija: yum --enablerepo=epel instaliraj phpmyadmin
Terminal u yum i povijesti
Ako ćete raditi puno operacija s paketima, tada možete odmah ući u yum shell pomoću naredbe yum shell i pomoću naredbi koje već poznajete (samo bez prve tri slova, odnosno), možete instalirati\ukloniti\nadograditi\bilo koje pakete. Još jedna zanimljiva značajka je mogućnost pregleda povijesti instalacije u yumu - pomoću naredbe yum history.
Je li vam ovaj članak od pomoći?
Molim te reci mi zašto?
Žao nam je što vam članak nije bio od koristi: (Molimo, ako nije teško, navedite iz kojeg razloga? Bit ćemo jako zahvalni na detaljnom odgovoru. Hvala što ste nam pomogli da postanemo bolji!
Odredište Yum
Yum je stvoren za rješavanje sljedećih problema:
- Pronalaženje paketa u spremištima
- Instaliranje paketa iz spremišta
- Instaliranje paketa iz .rpm datoteka, rješavanje ovisnosti pomoću spremišta
- Ažuriranje sustava
- Uklanjanje neželjenih paketa
- Zapravo, yum je omot za rpm koji omogućuje rad s repozitorijumima.
Osnovne operacije paketa
Traži u spremištima
Za pretraživanje spremišta s yumom koriste se tri naredbe: list , search i provide .
Najlakši način pretraživanja je korištenje naredbe list. Naredba list gleda nazive paketa i verzije tražeći podudaranja. Na primjer, za pregled paketa pod nazivom tsclient upotrijebite:
Yum list tsclient
Naredba pretraživanja pretražuje naziv paketa i opis za navedeni niz. Na primjer, da biste tražili pakete povezane s PalmPilot, upišite:
Yum traži PalmPilot
Naredba provide vam omogućuje traženje paketa koji sadrže navedenu datoteku. Na primjer, da biste potražili pakete koji sadrže libneon, upišite:
Yum pruža libneon
Podržavaju li sve naredbe za pretraživanje zamjenske znakove? i * (bijeg od njih s \ za bash da ih ispravno analizira). Na primjer, kada tražite pakete koji počinju s tsc, upišite:
Yum lista tsc\*
za traženje paketa koji sadrže datoteke u direktoriju /etc/httpd
Yum pruža /etc/httpd\*
ili za traženje određenih naredbi/programa, na primjer, za traženje mc (ponoćni zapovjednik)
Yum pruža \*/mc
kao rezultat dobivamo sljedeći izlaz
1:mc-4.7.4-1.fc14.i686: tekstualna konzola prilagođena korisniku upravitelj datoteka i vizualna ljuska Repozitorij: base Podudaranja: Naziv datoteke: /usr/share/mc Naziv datoteke: /usr/libexec/mc Naziv datoteke: /etc/mc Naziv datoteke: /usr/bin/mc
Instaliranje paketa s Yum
Da biste instalirali pakete s yumom, koristite opciju instalacije
Za instalaciju tipa tsclient:
Yum install tsclient
Yum će automatski riješiti (ako može) ovisnosti i ponuditi da ih instalira:
Instaliranje paketa iz .rpm datoteka
Za instalaciju .rpm paketa s automatskom razlučivanjem ovisnosti, koristila se naredba localinstall. Sada možete koristiti uobičajenu instalaciju. Dakle naredba:
Yum instaliraj foo.rpm
automatski će pronaći ovisnosti paketa foo.rpm u spremištima (ako može) i ponuditi da ih instalira.
Možda postoji problem u nedostatku ili nepoznatom GPG potpisu RPM paketa, što će rezultirati neuspjehom instalacije i, kao rezultat, sljedećom pogreškom
Javni ključ za foo.rpm nije postavljen
Da biste to zaobišli (u slučaju da vjerujete izvoru koji pruža paket) morate isključiti provjeru GPG ključeva dodavanjem opcije --nogpgcheck na kraj naredbe
Ažuriranje sustava
Ažuriranje sustava vrši se jednom naredbom - ažuriranje. Na ovaj način:
Yum ažuriranje
ažurirat će cijeli vaš sustav. Tim
Yum update foo
Kada se koriste obje metode, performanse su očuvane.
Korištenje Yum-a s proxy poslužiteljem
Kako bi Yum radio preko proxy poslužitelja, morate dodati sljedeći parametar u /etc/yum.conf:
Proxy=http://vašproxy:8080/
gdje - vašproxy je naziv proxy poslužitelja, a 8080 je port proxy poslužitelja. Ako poslužitelj zahtijeva autentifikaciju, možete navesti prijavu kao:
proxy=http://korisničko ime: [e-mail zaštićen]:8080/
RPM Package Manager vam omogućuje korištenje proxy varijabli okruženja. To se može postaviti u /etc/profile ili specifično za određenog korisnika u datoteci ~/.bash_profile::
Izvezi http_proxy=http://vašproxy:8080/
izvoz ftp_proxy=http://vašproxy:8080/
Da biste koristili wget putem proxyja, dodajte sljedeće redove u /etc/wgetrc
HTTP_proxy = http://vašproxy:8080/
ftp_proxy = http://vašproxy:8080/
U oba slučaja, prijava i lozinka mogu se postaviti kao u gornjem primjeru.
Korištenje Yuma za instalaciju lokalnog paketa, automatski provjeravajući i zadovoljavajući ovisnosti
yum --nogpgcheck localinstall ime paketa.arch.rpmPrikaz prioriteta za sva instalirana spremišta
Možete dobiti popis svih repozitorija koje ste instalirali - njam repolist sve. Međutim, ne prikazuje indeks prioriteta. Ovdje je linija potrebna za ovo. Ako broj nije definiran, zadani je najniži prioritet (99).
Mačka /etc/yum.repos.d/*.repo | sed -n -e "/^\)