In questa breve guida vi parlo di una caratteristica tipica del cosmo BSD. Il sistema delle ports collection di FreeBSD è una piccola perla del sistema operativo alternativo al pinguino, spesso troppo poco considerato, soprattutto dagli utenti desktop.
FreeBSD ports collection
FreeBSD è un sistema operativo libero Unix-like, disponibile per piattaforme desktop, server o embedded. Uno dei suoi principali pregi è il suo sviluppo non frammentato tra kernel e sistema operativo. Questo, insieme ad alcune sue indiscutibili qualità tecniche, non ultime in tema di sicurezza, lo rendono uno strumento utilizzato dalle principali aziende dell’IT (Apache, Apple, Dell, Netflix o Sony, solo per citarne alcune).
In FreeBSD, un port di un programma è l’insieme dei file, chiamato scheletro, necessari per automatizzare il processo di compilazione del codice sorgente dell’applicazione. In sostanza tramite poche, semplici istruzioni, il source code di un’applicazione viene automaticamente scaricato, estratto, corretto, compilato ed installato, compresa la risoluzione del problema delle dipendenze.
Ogni scheletro di un port contiene:
- makefile, consiste nelle istruzioni su “come compilare il software”;
- distinfo, contiene le informazioni e i checksum sui file che vanno scaricati per eseguire con successo l’installazione;
- la directory delle patch del file per la descrizione dettagliata del programma, e la lista dei file da installare/rimuovere.
Alcuni dei benefici di questo sistema, citando proprio la documentazione ufficiale, sono ad esempio la possibilità di poter visionare il codice sorgente, hackerarlo, prenderne in prestito delle parti (licenza permettendo) e così via.
Come cercare ed installare le app su FreeBSD
Veniamo adesso ad una questione cruciale, dove trovare le applicazioni? Una lista aggiornata è sicuramente disponibile sul sito ufficiale, che comprende tutti i software correntemente disponibili divisi per categorie. Durante la fase di installazione di FreeBSD inoltre, si consiglia di accettare l’installazione della collezione dei port, che troveremo in /usr/ports. Altrimenti potremo scaricarla con le seguenti opzioni del comando portsnap:
fetch // download della collezione extract // estrazione in /usr/port fetch update // aggiornare l'albero dei port
Una best practice, prima di procedere all’installazione di una nuova app, è il controllo di eventuali vulnerabilità di sicurezza. Questa può essere fatta in modo automatico tramite portaudit -F. Questo magnifico tool si occupa del download del database delle vulnerabilità dal sito ufficiale di FreeBSD. Successivamente, per installare ad esempio il popolare web-server, cerchiamo il percorso del port tramite il comando whereis apache22 il cui output sarà ad esempio /usr/ports/www/apache22. Rechiamoci quindi in questa cartella e digitiamo le istruzioni:
make install clean // per installare make deinstall // per disinstallare
Per una guida completa al sistema dei port con FreeBSD, vi rimando alla documentazione ufficiale, che raccomando davvero di leggere, non solo per il livello qualitativo, superiore a mio parere alla media del mondo GNU/Linux, ma anche perchè contiene delle chicche come l’installazione dei codici sorgenti da CD-ROM.
Seguiteci sul nostro canale Telegram, sulla nostra pagina Facebook e su Google News. Nel campo qui sotto è possibile commentare e creare spunti di discussione inerenti le tematiche trattate sul blog.