Guida ai comandi da terminale - Operazioni con programmi non presenti nei repository

Da Guide@Debianizzati.Org.
Vai alla navigazione Vai alla ricerca
Guida ai comandi da terminale

Sommario

  1. Gestione utenti e gruppi
  2. Gestione di repository e pacchetti
  3. Operazioni con programmi non presenti nei repository
  4. Gestione di file e directory
  5. Compiere operazioni con sudo
  6. Gestione del sistema
  7. Gestione del File System
  8. Gestione dell'hardware
  9. Varie e approfondimenti

Premessa

A mio parere, prima di procedere con l'installazione di un programma, è sempre bene verificare attentamente che non sia già presente nei repository ufficiali o in qualche repository aggiuntivo messo a disposizione, ad esempio, dagli sviluppatori del programma stesso. Installando da repository, infatti, si mantiene il sistema pulito e, soprattutto, si mantiene un archivio unico e completo di tutti i programmi installati, con la possibilità di rimuoverli utilizzando pochi strumenti nativi di Debian.

Compilazione dei sorgenti di un programma

I sorgenti di un programma sono di solito contenuti in un file con estensione .tar.gz. Un file di questo genere è in gergo chiamato tarball e in genere vanno compiute due operazioni per compilarlo ed installarlo.

  • La prima è quella di scompattarlo:
$ tar xzvf nome_programma.tar.gz
  • La seconda è quella di spostarsi nella directory che si è venuta a creare e dare inizio alla compilazione:
$ cd nome_programma
$ ./configure
$ make
# make install

Per disinstallare il programma bisogna portarsi nella directory dei sorgenti e digitare:

# make uninstall

Metodo alternativo I

Un metodo alternativo consiste nel compilare il programma creando un pacchetto .deb da installare successivamente. Il primo passo è di installare il programma:

# apt install checkinstall

Ora seguite i normali passi per la compilazione dei sorgenti, variando solo l'ultimo comando:

$ ./configure
$ make
# checkinstall

Se tutto è andato per il verso giusto, verrà creato ed installato un pacchetto debian.

Metodo alternativo II

A volte checkinstall può dare problemi, non rispettando le politiche Debian di gestione e creazione dei pacchetti. E' possibile per fortuna sostituire checkinstall con un modo più professionale. Dovete innanzitutto scaricare dei tool di sviluppo:

# apt install devscripts dh-make make build-essential

Adesso posizionatevi dentro la cartella estratta dei sorgenti e lanciate:

$ dh_make
$ debuild binary

A questo punto, dopo la compilazione, verrà creato un pacchetto .deb, che sarà collocato nella directory padre. Installatelo così:

# dpkg -i ../pacchetto.deb

e il gioco è fatto.

Esecuzione di uno script

Spesso i programmi scaricati e scompattati contengono al loro interno uno script, da lanciare per effettuare l'installazione vera e propria del programma. Per lanciare questo tipo di installer si eseguano i comandi:

$ chmod +x installer.sh

e successivamente:

$ ./installer.sh

Installazione di un file .bin

Se abbiamo scaricato un installer in .bin, per avviare la sua installazione da terminale non si deve fare altro che dirigersi nella directory in cui il .bin è stato salvato e lanciarlo scrivendo il nome del file. L’unico problema può nascere quando l'installer non da nativamente i permessi di esecuzione all’utente normale, la cosa si risolve con il comando chmod.
Se, per esempio, abbiamo scaricato il programma mio_programma.bin dobbiamo compiere le seguenti operazioni.
L'installer avrà bisogno prima di tutto di una rettifica sui permessi. Entriamo nella cartella in cui si trova il file e lanciamo questi comandi:

$ chmod +x mio_programma.bin

e successivamente:

$ ./mio_programma.bin

Installazione di un file .rpm

Se abbiamo scaricato un installer con estensione .rpm (RedHat Package Manager, sistema di gestione dei pacchetti originario di Red Hat Linux), per installarlo dalla nostra distro dovremo per forza convertirlo in .deb . Il programma che ci consente di farlo è alien. Quindi installiamolo digitando:

# apt install alien

Successivamente, dopo esserci diretti da terminale nella cartella in cui è presente il file .rpm scaricato, lanciamo:

$ alien -k nomefile.rpm

Avrete ottenuto un file .deb, che potrete utilizzare seguendo le istruzioni del paragrafo successivo.

Installazione di un file .deb

Se abbiamo scaricato o creato un installer con estensione .deb (che, come il nome suggerisce, è stato creato per Debian e sistemi derivati come Ubuntu), e se questo non ha dipendenze, per installarlo basterà dirigerci nella directory dove risiede il file e digitare:

# dpkg -i nomefile.deb

Per disinstallarlo possiamo normalmente seguire una delle strade per la disinstallazione viste in precedenza, utilizzando apt.

Se il pacchetto ha dipendenze, è consigliabile utilizzare gdebi, installando il pacchetto gdebi-core per l'interfaccia a linea di comando. In questo modo saranno soddisfatte in automatico prima di installare il pacchetto.

Poi basterà digitare, nella directory con il pacchetto .deb:

# gdebi nomefile.deb

Scompattare un file .tar

Se abbiamo un archivio in formato compresso .tar, per decomprimerlo dovremo usare lo strumento tar.

Per decomprimere un pacchetto in formato .tar dobbiamo prima dirigerci, sempre da terminale, nella cartella in cui l’archivio è presente, e poi dobbiamo lanciare:

$ tar xvf nomearchivio.tar

dove

  • tar è il nome del programma decompressore
  • x significa “estrazione”
  • v sta per "verbose", e serve per ottenere informazioni dettagliate durante il processo di estrazione
  • f infine salva i file nella stessa posizione dell’archivio.

Lanciando il comando:

$ tar --help

avrete una lista completa delle opzioni che potete usare col programma.

Scompattare un file .tar.xz

Se abbiamo un archivio in formato compresso .tar.xz, per decomprimerlo dovremo usare lo strumento tar.

Per decomprimere un pacchetto in formato .tar.xz dobbiamo prima dirigerci, sempre da terminale, nella cartella in cui l’archivio è presente, e poi dobbiamo lanciare:

$ tar Jxvf nomearchivio.tar.xz

dove

  • tar è il nome del programma decompressore
  • J indica che il file da decomprimere è in formato compresso .xz
  • x significa “estrazione”
  • v sta per "verbose", e serve per ottenere informazioni dettagliate durante il processo di estrazione
  • f infine salva i file nella stessa posizione dell’archivio.

Lanciando il comando

$ tar --help

avrete una lista completa delle sintassi che potete usare col programma.

Scompattare un file .tar.bz2

Se abbiamo un archivio in formato compresso .tar.bz2, per decomprimerlo dovremo usare lo strumento tar.

Per decomprimere un pacchetto in formato .tar.bz2 dobbiamo prima dirigerci, sempre da terminale, nella cartella in cui l’archivio è presente, e poi dobbiamo lanciare:

$ tar jxvf nomearchivio.tar.bz2

dove

  • tar è il nome del programma decompressore
  • j indica che il file da decomprimere è in formato compresso .bz2
  • x significa “estrazione”
  • v sta per "verbose", e serve per ottenere informazioni dettagliate durante il processo di estrazione
  • f infine salva i file nella stessa posizione dell’archivio.

Lanciando il comando

$ tar --help

avrete una lista completa delle sintassi che potete usare col programma.

Scompattare un file .tar.gz

Se abbiamo un archivio in formato compresso .tar.gz, per decomprimerlo dovremo usare lo strumento tar.

Per decomprimere un pacchetto in formato .tar.gz dobbiamo prima dirigerci, sempre da terminale, nella cartella in cui l’archivio è presente, e poi dobbiamo lanciare:

$ tar zxvf nomearchivio.tar.gz

dove

  • tar è il nome del programma decompressore
  • z indica che il file da decomprimere è in formato compresso .gz
  • x significa “estrazione”
  • v sta per "verbose", e serve per ottenere informazioni dettagliate durante il processo di estrazione
  • f infine salva i file nella stessa posizione dell’archivio.

Lanciando il comando

$ tar --help

avrete una lista completa delle sintassi che potete usare col programma.

Scompattare un file .7z

Se siamo in possesso di un archivio .7z , per decomprimerlo avremo bisogno dello strumento p7zip-full. Se non lo abbiamo, digitiamo da terminale:

# apt install p7zip-full

Per decomprimere il file .7z digitiamo ora semplicemente:

$ 7z x nomearchivio.7z

Attenzione ai permessi: se lanciate il comando 7z da sudoer o da root, i permessi dei file decompressi saranno attribuiti a quell’utenza. Non sono conservati come per tar.

È software libero e quello che effettua la maggiore compressione, ma richiede molto più tempo rispetto al formato .gz.

Scompattare un file .rar

Se siamo in possesso di un archivio .rar , per decomprimerlo avremo bisogno dello strumento unrar. Se non lo abbiamo, digitiamo da terminale:

# apt install unrar-free

Si noti che soltanto tar è tuttofare e supporta formati liberi, e consente sia l’archiviazione che la decompressione dei file su cui è in grado di lavorare, conservando permessi, utente, gruppo e altre informazioni del file system. unrar invece è in grado soltanto di decomprimere, e se volessimo creare un archivio .rar avremmo bisogno di un altro pacchetto, chiamato rar, in formato non libero.

Info.png unrar non libero
Purtroppo il pacchetto unrar-free non supporta il formato RAR 3.0, e per aprire tali archivi è necessario il pacchetto unrar, che appartiene alla sezione non-free, non è cioè software libero, per quanto il suo sorgente sia disponibile.


Per decomprimere il file .rar digitiamo ora semplicemente:

$ unrar x nomearchivio.rar

Attenzione ai permessi: se lanciate il comando unrar da sudoer o da root, i permessi dei file decompressi saranno attribuiti a quell’utenza. Non sono conservati come per tar.

Se si vuole una compressione maggiore di zip è comunque preferibile ricorrere a 7z, completamente libero e migliore di rar.

Scompattare un file .zip

Se siamo in possesso di un file .zip, possiamo decomprimerlo con lo strumento unzip. Se non abbiamo dovremo installarlo con:

# apt install unzip

Come tutti gli archivi, unzip è in grado soltanto di decomprimere, e la compressione può avvenire grazie a zip che si installa allo stesso modo. È il formato più diffuso, e quello consigliato per l'interazione con altri sistemi, inoltre è libero e utilizza soltanto software libero contrariamente a rar/unrar.
Per decomprimere un file .zip, digitiamo semplicemente:

$ unzip nomearchivio.zip

Attenzione ai permessi: se lanciate il comando unzip da sudoer o da root, i permessi dei file decompressi saranno attribuiti a quell’utenza.