![NU-MI VINE SĂ CRED! Bitcoin s-a prăbușit!](/f/be90045c8e6aa7c4d199e855c455ec36.png?width=100&height=100)
În acest tutorial vă vom explica cum să gestionați aplicațiile de pachete binare precompilate în FreeBSD cu ajutorul instrumentului de gestionare a pachetelor numit PKG prin intermediul Porturi depozit de colectare software.
Porturi repository oferă instrumentele necesare pentru compilarea aplicațiilor din codul sursă, alături de dependențelor lor, dar menține, de asemenea, o colecție uriașă de pachete precompilate, în prezent mai multe decât 24.000 pachete, care pot fi instalate pe un sistem FreeBSD cu pachet comanda.
1. Depozitele de porturi sunt împărțite în categorii în FreeBSD, fiecare categorie fiind reprezentată de un director în /usr/ports/ calea sistemului de fișiere.
O listă simplă a directorului /usr/ports/ va afișa toate categoriile disponibile așa cum se arată în captura de ecran de mai jos.
# ls / usr / ports /
2. Pentru a vedea toate aplicațiile disponibile care aparțin unei categorii, emiteți un Comand împotriva directorului de categorii.
Să presupunem că doriți să afișați toate pachetele software disponibile pe care le oferă categoria bazei de date, executați comanda de mai jos în consolă. Introduceți rezultatul prin mai puțină comandă pentru a naviga mai ușor prin ieșire.
# ls / usr / ports / databases / | Mai puțin.
3. Pentru a vizualiza câte pachete sunt disponibile într-o categorie, listați directorul categoriilor și transmiteți rezultatul prin comanda wc așa cum se arată în exemplul de mai jos.
# ls / usr / ports / databases / | wc -l.
După cum puteți vedea în captura de ecran de mai sus, categoria de baze de date FreeBSD conține mai mult de 1000 pachete pre-respectate de baze de date.
4. Pentru a vedea dacă o anumită aplicație este disponibilă într-o categorie, utilizați din nou Comand și filtrează rezultatul prin utilitate grep pentru a căuta o aplicație personalizată.
În exemplele de mai jos se va căuta mongodb pachete de date disponibile și antivirus de scoici pachete de securitate.
# ls / usr / ports / databases / | grep mongodb. # ls / usr / ports / security / | grep scoică.
După cum puteți vedea, mai multe versiuni ale unei aplicații pot fi disponibile în porturile FreeBSD.
5. În cazul în care nu știți la ce categorie aparține un software, puteți utiliza o altă abordare pentru a găsi categoria de software. Utilizați un wildcard cu coajă *
pentru a căuta un model prin întregul arbore de directoare Ports.
Presupunând că doriți să vedeți în ce categorie puteți găsi pachetele software mailx utilitar, puteți rula următoarea comandă.
# ls / usr / ports / * / * mailx.
6. O altă metodă pentru căutarea unui pachet software și a categoriei căreia îi aparține pachetul este folosirea comanda de localizare împotriva unui model de șir.
Înainte de a efectua șirul de căutare, ar trebui să actualizați baza de date de localizare cu următoarea comandă.
# /usr/libexec/locate.updatedb.
7. După ce ați actualizat baza de date de localizare, căutați un anumit pachet software utilizând un model de cuvinte cheie din numele pachetului. De exemplu, dacă doriți să căutați fișierul mailx utilitar, puteți rula comanda de mai jos.
# localizați mailx.
După cum puteți vedea, există două pachete disponibile pentru mailx utilitate, ambele situate în /usr/ports/mail/ categorie.
8. Similar cu găsirea unui pachet cu comanda de localizare, puteți utiliza și unde este comanda, pentru a vizualiza categoria aplicației.
# unde este mailx.
9. Cea mai ușoară metodă de a căuta și găsi o aplicație în FreeBSD este prin linia de comandă de gestionare a pachetelor PKG. De exemplu, pentru a căuta pachete binare pentru o aplicație postfix software, lansați comanda de mai jos.
# pkg căutare nume_pachet.
10. În cazul în care doriți să vedeți la ce categorie aparține pachetul, rulați aceeași comandă ca mai sus cu -o
pavilion, așa cum este ilustrat în exemplele de mai jos.
# pkg căutare -o nume_pachet.
11. Pentru a instala un pachet precompilat din depozitele Ports în FreeBSD, lansați pachet comanda ilustrată în exemplul de mai jos.
# pkg instalează package_name.
12. Pentru a interoga informații despre un anumit pachet instalat în sistem, lansați comanda de mai jos.
# pkg info nume_pachet.
13. pkg informații comutatorul de comandă va afișa mesajul „Nu există pachete care să corespundă pachetului_nume”Dacă pachetul software nu este deja instalat în sistemul dvs., așa cum se arată în captura de ecran de mai jos.
# pkg info tcpdump.
14. Pentru a lista toate pachetele software instalate în FreeBSD, executați pkg informații comandă fără nicio opțiune sau comutatoare.
filtru grep împotriva pkg informații comanda vă poate arăta dacă anumite pachete sau aplicații specifice sunt deja prezente în sistem, așa cum este ilustrat în exemplul de mai jos.
# pkg info | grep ftp.
15. Pentru a elimina un pachet din sistem, lansați comenzile de mai jos.
# pkg elimină numele_pachetului. sau. # pkg șterge nume_pachet.
16. În cazul în care doriți să împiedicați eliminarea sau modificarea unui pachet instalat, puteți utiliza fișierul Lacăt comutați pentru comanda pkg, așa cum se arată în imaginea de mai jos.
# pkg blocare nume_pachet.
Deblocați Comutatorul de comandă pkg vă va permite să eliminați restricția pachetului și să modificați sau să dezinstalați pachetul.
# pkg deblocare nume_pachet.
17. Pentru a afla cărui pachet instalat îi aparține o comandă sau un fișier executabil, lansați următoarea comandă, așa cum este ilustrat în exemplele de captură de ecran de mai jos.
# pkg care / cale / către / executabil.
18. Pentru a descărca local un pachet de la Porturi repository, fără a instala pachetul pe sistem, rulați comanda pkg cu aduc intrerupator.
Pachetul binar descărcat, care este un comprimat .txz fișier, poate fi găsit în /var/cache/pkg/ calea sistemului.
# pkg preluare nume_pachet. # ls / var / cache / pkg / | grep nume_pachet.
19. Pentru a verifica dacă pachetele instalate sunt expuse vulnerabilităților comune sau erorilor, lansați comanda de mai jos.
# pkg audit -F.
Pentru a vedea o listă de vulnerabilități vechi care, atunci când afectează un pachet software în versiunile anterioare, lansează comanda de mai jos.
# pkg audit nume_pachet.
Mai jos este un extras al tuturor vulnerabilităților cunoscute care au fost găsite în Nginx server web compilat pentru FreeBSD.
# pkg audit nginx.
Găsiți vulnerabilitățile software-ului
nginx este vulnerabil: Versiuni afectate: <= 0.8.41:> 1.4.4,1. nginx - Vulnerabilitate de analiză a liniei de solicitare. CVE: CVE-2013-4547. WWW: https://vuxml. FreeBSD.org/freebsd/94b6264a-5140-11e3-8b22-f0def16c5c1b.html nginx este vulnerabil: versiuni afectate: <1.0.15. nginx - Depășirea bufferului în modulul ngx_http_mp4_. CVE: CVE-2012-2089. WWW: https://vuxml. FreeBSD.org/freebsd/0c14dfa7-879e-11e1-a2a0-00500802d8f7.html nginx este vulnerabil: versiuni afectate: <1.4.7. nginx - SPDY heap buffer overflow. CVE: CVE-2014-0133. WWW: https://vuxml. FreeBSD.org/freebsd/fc28df92-b233-11e3-99ca-f0def16c5c1b.html...
20. Pentru a vă asigura că depozitele software și toate pachetele instalate și că sunt actualizate cu cele mai recente versiuni sau patch-uri de securitate, lansați următoarele comenzi.
# pkg actualizare. # pkg upgrade.
21. Pentru a afișa depozitele la distanță și statisticile pachetelor locale, cum ar fi câte pachete sunt instalate în sistemul dvs. și cât spațiu pe disc este umplut de software-ul instalat, executați următoarele comanda.
# statistici pkg.
22. Pentru a șterge toate dependențele lăsate în urmă de pachetele instalate în sistem, lansați comanda de mai jos.
# pkg autoremove.
23. Pentru a șterge automat directorul cache local de gestionare a pachetelor pentru pachetele descărcate la distanță, rulați comanda de mai jos. Mai întâi ar trebui să verificați lista pachetelor binare descărcate local.
# pkg clean -a -n # pkg clean -a -y.
Asta e tot! După cum puteți vedea, FreeBSD are un sistem impresionant de colectare a pachetelor, similar cu instrumentele de gestionare a pachetelor utilizate în distribuțiile Linux, cum ar fi Da, RPM și APT cu un număr mare de programe binare precompilate și o linie de comandă simplă și eficientă, pkg, care poate fi utilizată pentru a gestiona software-ul într-un mod decent.