Oggi impareremo a conoscere un'utilità meno conosciuta, ma utile per Debian e i suoi derivati come Ubuntu e varianti di Ubuntu come Linux Mint. Saluta "Debfoster" - un'utilità della riga di comando per conservare solo i pacchetti essenziali ed eliminare gli altri pacchetti che non sono più necessari. Quindi, puoi mantenere il sistema pulito e minimale tutto il tempo. L'applicazione debfoster è un programma wrapper per gestori di pacchetti apt e dpkg. Mantiene un elenco di pacchetti installati che sono stati richiesti esplicitamente anziché installati come dipendenza.
Quando lo esegui per la prima volta, creerà un elenco di pacchetti installati e lo salverà in un file chiamato keepers in /var/lib/debfoster/ directory. Debfoster utilizzerà questo elenco per rilevare i pacchetti che sono stati installati solo perché altri pacchetti dipendevano da essi. Se una di queste dipendenze cambia, debfoster se ne accorgerà e chiederà se si desidera rimuovere il vecchio pacchetto. In questo modo ti aiuta a mantenere un sistema pulito con i pacchetti essenziali di tua scelta.
Mantieni solo i pacchetti essenziali in Debian e Ubuntu usando Debfoster
Debfoster è disponibile nei repository predefiniti. Quindi, l'installazione non sarà un grosso problema. Esegui il seguente comando per installare Debfoster su qualsiasi sistema basato su Debian:
$ sudo apt install debfoster
Una volta installato, dobbiamo creare un elenco di pacchetti installati eseguendo il seguente comando:
$ sudo debfoster -q
Il comando precedente aggiungerà i pacchetti attualmente installati in keepers file in /var/lib/debfoster/ directory. Puoi modificare questo file per rimuovere i pacchetti che non desideri più avere installato nel tuo sistema.
Ecco il contenuto del file dei miei custodi.
$ cat /var/lib/debfoster/keepers
Non dovresti rimuovere i pacchetti importanti e relativi al sistema da questo file, come kernel Linux, grub, Ubuntu-base, Ubuntu-desktop ecc. Inoltre, esegui il backup dei file di configurazione importanti che hai modificato manualmente.
Ora, forza l'utilità debfoster a rimuovere i pacchetti che non sono elencati nel file keepers. Per farlo, esegui:
$ sudo debfoster -f
Debfoster rimuoverà tutti i pacchetti che non sono disponibili nel file keeper insieme alle relative dipendenze.
Installa anche tutti i pacchetti mancanti che sembrano mancare, costringendo così il tuo sistema a conformarsi al database debfoster.
Inoltre, puoi eseguire il seguente comando di tanto in tanto dopo ogni aggiunta/rimozione di pacchetti per verificare se ci sono pacchetti orfani o dipendenze indesiderate che devono essere rimosse.
$ sudo debfoster
Se hai installato/rimosso dei pacchetti, vedrai un output simile a quello di seguito. Come puoi vedere nell'output, il pacchetto Screen non è elencato nell'elenco dei miei custodi. Perché l'ho installato dopo aver creato l'elenco dei custodi. Quindi, debfoster mi chiede se voglio tenerlo o meno. Se non sei sicuro di cosa fare, digita H per visualizzare la sezione della guida.
Keep screen? [Ynpsiuqx?], [H]elp: H Yes Keep screen. [default] No Delete screen. Prune Delete screen and the packages it is keeping installed. Skip Skip this question. Help Print this message. Info or ? Show information about screen. Undo Undo last response. Quit Exit without removing packages. Exit Remove unwanted packages and exit. Keep screen? [Ynpsiuqx?], [H]elp:
Debfoster visualizzerà tutte le opzioni possibili. Digita Y se non vuoi rimuovere i pacchetti. Il pacchetto screen verrà ora aggiunto al file keepers e Debfoster non lo rimuoverà nelle transazioni future, a meno che tu non lo abbia rimosso manualmente usando il comando "apt-get remove screen". Digita N per eliminare il pacchetto schermo. Digita P per eliminare lo schermo e i pacchetti che sta mantenendo installati. Digita informazioni o ? per visualizzare i dettagli del pacchetto. D per uscire senza rimuovere il pacco. E digita E per rimuovere i pacchetti ed uscire.
Visualizzazione dei pacchetti nell'elenco dei custodi
Per visualizzare l'elenco dei pacchetti nel database debfoster, eseguire:
$ debfoster -a
Ecco l'elenco dei pacchetti nel mio desktop Ubuntu 16.04 LTS.
The following packages are on the keeper list: account-plugin-aim brasero debfoster deja-dup-backend-gvfs dialog firefox-locale-en gdebi gir1.2-webkit-3.0 git hyphen-en-us indicator-multiload language-pack-gnome-en libarchive-extract-perl libcpan-meta-perl libmodule-build-perl libmodule-pluggable-perl libpackage-constants-perl libpod-latex-perl libreoffice-help-en-us libreoffice-style-human libterm-ui-perl libtext-soundex-perl libvisual-0.4-plugins linux-generic linux-headers-4.4.0-15-generic linux-image-extra-4.4.0-15-generic myspell-en-au myspell-en-gb myspell-en-za mythes-en-us oneconf openoffice.org-hyphenation openssh-server python-pip python3-smbc rhythmbox-plugin-cdrecorder rhythmbox-plugin-magnatune samba-common screen shutter ssh-askpass-gnome telepathy-idle thunderbird-locale-en-us ubuntu-desktop ubuntu-minimal ubuntu-sso-client-qt ubuntu-standard ubuntu-wallpapers-wily wbritish xserver-xorg-video-cirrus xserver-xorg-video-mach64 xserver-xorg-video-mga xserver-xorg-video-neomagic xserver-xorg-video-openchrome xserver-xorg-video-r128 xserver-xorg-video-savage xserver-xorg-video-siliconmotion xserver-xorg-video-sisusb xserver-xorg-video-tdfx xserver-xorg-video-trident
Utilizza file keeper diversi
Per impostazione predefinita, debfoster manterrà i pacchetti installati in /var/lib/debfoster/keepers file. Puoi, tuttavia, specificare un database debfoster diverso (file keeper, ovviamente) usando -k segnala come sotto.
$ debfoster -k <path-to-keeper-file>
Visualizzazione dei pacchetti orfani
Non è sempre necessario eseguire il comando "sudo debfoster" per verificare la presenza di pacchetti orfani. Puoi semplicemente usare -s contrassegna come sotto per vedere se ci sono pacchetti orfani.
$ debfoster -s The following packages have been orphaned: tmux
Come vedi nell'output sopra, ho un pacchetto orfano. Se è necessario un pacchetto e non vogliamo che debfoster lo rimuova, possiamo semplicemente aggiungerlo al file keepers eseguendo il seguente comando:
$ sudo debfoster
Ti chiederà di mantenere tmux o meno. Se conservi tmux nel file Keepers, digita semplicemente Y .
Keep tmux? [Ynpsiuqx?], [H]elp:Y
In alternativa, puoi modificare manualmente il file keeper e aggiungere tmux nell'elenco.
$ sudo vi /var/lib/debfoster/keepers
Aggiungi tmux al suo interno.
[...] tmux
Digita :wq per salvare e uscire dal file. Ora, non vedrai alcun pacchetto orfano durante l'esecuzione del comando "debfoster -s".
Si noti che qui pacchetto orfano indica un pacchetto che non è menzionato nel database debfoster. Ciò non significa che il pacchetto non sia completamente necessario. Ad esempio, le utility screen e tmux sono piuttosto utili. Quindi, possiamo aggiungerli al database debfoster.
Aggiunta/rimozione di pacchetti
Poiché debfoster è un wrapper per i gestori di pacchetti apt-get e dpkg, puoi anche usarlo per aggiungere o rimuovere pacchetti.
Per installare un pacchetto, esegui:
$ sudo debfoster screen
Ora debfoster eseguirà apt-get per te e installerà il pacchetto specificato.
Per rimuovere un pacco, inserisci semplicemente un segno meno (-) subito dopo il suo nome come di seguito.
$ sudo debfoster screen- Reading package lists... Done Building dependency tree Reading state information... Done The following packages will be REMOVED: screen* 0 upgraded, 0 newly installed, 1 to remove and 608 not upgraded. After this operation, 972 kB disk space will be freed. Do you want to continue? [Y/n]
Trovare dipendenze
Per elencare tutti i pacchetti da cui dipende un pacchetto, usa -d bandiera.
$ debfoster -d screen
E, per elencare tutti i pacchetti nel database debfoster che dipendono dal pacchetto specificato, usa -e segnala come sotto.
$ debfoster -e screen
Per maggiori dettagli, fare riferimento alle pagine man.
$ man debfoster
Come puoi vedere, Debfoster ti aiuta a tenere traccia di ciò che hai installato ea rimuovere tutti gli altri pacchetti che non sono richiesti. Ancora una volta, ti avverto:devi usare questa applicazione con molta attenzione. Non rimuovere importanti pacchetti relativi al sistema come Ubuntu-base, grub, kernel corrente ecc. Se lo fai, potresti ritrovarti con un sistema inutilizzabile.
Lettura consigliata:
- Rimuovi i file di configurazione non necessari sui sistemi basati su Debian
- Come trovare e rimuovere i pacchetti inutilizzati in Linux