GNU/Linux >> Linux Esercitazione >  >> FreeBSD

23 Esempi utili di comandi PKG per gestire i pacchetti in FreeBSD

In questo tutorial spiegheremo come gestire le applicazioni di pacchetti binari precompilati in FreeBSD con l'aiuto dello strumento di gestione dei pacchetti denominato PKG tramite porte repository di raccolta software.

Porte repository offre gli strumenti necessari per compilare le applicazioni dal codice sorgente, insieme alle loro dipendenze, ma mantiene anche una vasta collezione di pacchetti precompilati, attualmente più di 24.000 pacchetti, che possono essere installati su un sistema FreeBSD con pkg comando.

Requisiti:

  1. Installazione di FreeBSD 11.x

Cerca e trova applicazioni in Ports Tree in FreeBSD

1. I port repository sono divisi in categorie in FreeBSD , ciascuna categoria essendo rappresentata da una directory in /usr/ports/ percorso del file system.

Un semplice elenco della directory /usr/ports/ mostrerà tutte le categorie disponibili come mostrato nello screenshot qui sotto.

# ls /usr/ports/

2. Per vedere tutte le applicazioni disponibili appartenenti a una categoria, emettere un comando ls sulla directory della categoria.

Supponiamo di voler visualizzare tutti i pacchetti software disponibili che la categoria di database ha da offrire, eseguire il comando seguente nella console. Pipe il risultato tramite less comando per navigare più facilmente attraverso l'output.

# ls /usr/ports/databases/ | less

3. Per visualizzare quanti pacchetti sono disponibili in una categoria, elenca la directory della categoria e reindirizza il risultato tramite il comando wc come mostrato nell'esempio seguente.

# ls /usr/ports/databases/ | wc -l

Come puoi vedere nello screenshot qui sopra, la categoria del database di FreeBSD contiene più di 1000 pacchetti precompilati del database.

4. Per vedere se un'applicazione specifica è disponibile in una categoria, usa ancora il comando ls e filtra il risultato tramite l'utilità grep per cercare un'applicazione personalizzata.

Negli esempi seguenti cercherà mongodb database disponibili e clam antivirus pacchetti di sicurezza.

# ls /usr/ports/databases/ | grep mongodb
# ls /usr/ports/security/ | grep clam

Come puoi vedere, più versioni di un'applicazione possono essere disponibili in FreeBSD Ports.

5. Nel caso in cui non si sappia a quale categoria appartiene un software, è possibile utilizzare un altro approccio per trovare la categoria del software. Usa il carattere jolly di shell globbing * carattere per cercare un modello nell'intero albero delle directory di Ports.

Supponendo che tu voglia vedere in quale categoria puoi trovare i pacchetti software per mailx utility, puoi eseguire il comando seguente.

# ls /usr/ports/*/*mailx

6. Un altro metodo per cercare un pacchetto software e la categoria a cui appartiene il pacchetto consiste nell'usare il comando locate su uno schema di stringhe.

Prima di eseguire la stringa di ricerca, è necessario aggiornare il database locate con il seguente comando.

# /usr/libexec/locate.updatedb

7. Dopo aver aggiornato il database di localizzazione, cerca un pacchetto software specifico utilizzando un modello di parole chiave dal nome del pacchetto. Ad esempio, se vuoi cercare mailx utility, puoi eseguire il comando seguente.

# locate mailx

Come puoi vedere, sono disponibili due pacchetti per mailx utilità, entrambe ubicate in /usr/ports/mail/ categoria.

8. Simile alla ricerca di un pacchetto con il comando locate, puoi anche usare il comando whereis per visualizzare la categoria dell'applicazione.

# whereis mailx

Cerca software tramite il comando PKG in FreeBSD

9. Il metodo più semplice per cercare e trovare un'applicazione in FreeBSD è tramite la riga di comando di gestione dei pacchetti PKG. Per cercare nei pacchetti binari un'applicazione, ad esempio postfix software, emettere il comando seguente.

# pkg search package_name

10. Se vuoi vedere a quale categoria appartiene il pacchetto, esegui lo stesso comando di cui sopra con -o flag, come illustrato negli esempi seguenti.

# pkg search -o package_name

Gestisci il software in FreeBSD

11. Per installare un pacchetto precompilato dai repository di Ports in FreeBSD, emetti il ​​pkg comando come illustrato nell'esempio seguente.

# pkg install package_name

12. Per richiedere informazioni su uno specifico pacchetto installato nel sistema, emettere il comando seguente.

# pkg info package_name

13. Le informazioni sul pacco l'opzione di comando visualizzerà il messaggio "Nessun pacchetto(i) corrispondente a nome_pacchetto ” se il pacchetto software non è già installato nel tuo sistema, come mostrato nello screenshot qui sotto.

# pkg info tcpdump

14. Per elencare tutti i pacchetti software installati in FreeBSD, esegui pkg info comando senza alcuna opzione o switch.

Il filtro grep contro pkg info comando può mostrarti se alcuni pacchetti o applicazioni specifici sono già presenti nel sistema, come illustrato nell'esempio seguente.

# pkg info | grep ftp

15. Per rimuovere un pacchetto dal sistema, emetti i comandi seguenti.

# pkg remove package_name
or
# pkg delete package_name

16. Nel caso in cui desideri impedire la rimozione o la modifica di un pacchetto installato, puoi utilizzare il blocco passa al comando pkg, come mostrato nell'immagine sottostante.

# pkg lock package_name

Sblocca l'opzione di comando pkg ti consentirà di rimuovere la restrizione del pacchetto e di modificare o disinstallare il pacchetto.

# pkg unlock package_name

17. Per scoprire a quale pacchetto installato appartiene un comando o un file eseguibile, emetti il ​​comando seguente, come illustrato negli esempi di screenshot seguenti.

# pkg which /path/to/executable

18. Per scaricare localmente un pacchetto da Ports repository, senza installare il pacchetto sul sistema, esegui il comando pkg con il recupero interruttore.

Il pacchetto binario scaricato, che è un .txz compresso file, può essere trovato in /var/cache/pkg/ percorso di sistema.

# pkg fetch package_name
# ls /var/cache/pkg/ | grep package_name

19. Per verificare se i pacchetti installati sono esposti a vulnerabilità o bug comuni emettere il comando seguente.

# pkg audit -F

Per visualizzare un elenco di vecchie vulnerabilità che interessano un pacchetto software nelle versioni precedenti, eseguire il comando seguente.

# pkg audit package_name

Di seguito è riportato un estratto di tutte le vulnerabilità note rilevate in Nginx server web compilato per FreeBSD.

# pkg audit nginx
Trova le vulnerabilità del software
nginx is vulnerable:
Affected versions:
<= 0.8.41 : > 1.4.4,1
nginx -- Request line parsing vulnerability
CVE: CVE-2013-4547
WWW: https://vuxml.FreeBSD.org/freebsd/94b6264a-5140-11e3-8b22-f0def16c5c1b.html

nginx is vulnerable:
Affected versions:
< 1.0.15
nginx -- Buffer overflow in the ngx_http_mp4_module
CVE: CVE-2012-2089
WWW: https://vuxml.FreeBSD.org/freebsd/0c14dfa7-879e-11e1-a2a0-00500802d8f7.html

nginx is vulnerable:
Affected versions:
< 1.4.7
nginx -- SPDY heap buffer overflow
CVE: CVE-2014-0133
WWW: https://vuxml.FreeBSD.org/freebsd/fc28df92-b233-11e3-99ca-f0def16c5c1b.html
...

Mantieni l'utility di gestione dei pacchetti in FreeBSD

20. Per assicurarti che i repository software e tutti i pacchetti installati siano aggiornati con le ultime versioni o patch di sicurezza, immetti i seguenti comandi.

# pkg update
# pkg upgrade

21. Per mostrare i repository remoti e le statistiche sui pacchetti locali, ad esempio quanti pacchetti sono installati nel tuo sistema e quanto spazio su disco è occupato dal software installato, esegui il comando seguente.

# pkg stats

22. Per eliminare tutte le dipendenze lasciate dai pacchetti installati nel sistema, esegui il comando seguente.

# pkg autoremove

23. Per cancellare automaticamente la directory della cache locale di gestione dei pacchetti per i pacchetti scaricati in remoto, eseguire il comando seguente. Dovresti prima verificare l'elenco dei pacchetti binari scaricati localmente.

# pkg clean -a -n  
# pkg clean -a -y

È tutto! Come puoi vedere, FreeBSD ha un impressionante sistema di raccolta dei pacchetti, simile agli strumenti di gestione dei pacchetti utilizzati nelle distribuzioni Linux come Yum, RPM e APT con un numero enorme di binari software precompilati e una riga di comando semplice ed efficace, pkg, che può essere utilizzata per gestire il software in modo decente.


FreeBSD
  1. 12 utili esempi di comandi Wget in Linux

  2. 15 Utili "esempi di comandi Sockstat" per trovare porte aperte in FreeBSD

  3. ls Command in Linux:17 esempi utili spiegati

  4. Esempi utili del comando Docker ps

  5. Apt ottenere esempi di comandi per gestire i pacchetti su Ubuntu/Debian

Esempi di comandi Alpine Linux Apk

11 Esempi utili di comandi data di Linux

Esempi utili di comandi Wget nel sistema Linux

15 esempi utili di comando touch nel sistema Linux

12 Esempi utili di comandi data di Linux

Esempi di comandi ip per gestire la rete in Linux