apt-get remove packagename
rimuoverà i file binari, ma non i file di configurazione o di dati del pacchetto packagename
. Inoltre, le dipendenze installate con esso non verranno toccate durante l'installazione.
apt-get purge packagename
o apt-get remove --purge packagename
rimuoverà tutto ciò che riguarda il pacchetto packagename
, ma non le dipendenze installate con esso al momento dell'installazione. Entrambi i comandi sono equivalenti.
Particolarmente utile quando si desidera "ricominciare tutto" con un'applicazione perché si è incasinata la configurazione. Tuttavia, non rimuove i file di configurazione o di dati che risiedono nelle home directory degli utenti, di solito in cartelle nascoste lì. Non esiste un modo semplice per rimuovere anche quelli.
apt-get autoremove
rimuove i pacchetti orfani, ovvero i pacchetti installati che prima erano installati come dipendenza, ma non lo sono più. Usa questo dopo aver rimosso un pacchetto che aveva installato dipendenze che non ti interessano più.
aptitude remove packagename
o aptitude purge packagename
(allo stesso modo)
tenterà anche di rimuovere altri pacchetti richiesti da packagename
on ma non richiesti da tutti i pacchetti rimanenti. Nota che aptitude
ricorda solo le informazioni sulla dipendenza per i pacchetti che ha installato.
E molti altri esistono. I dpkg
comandi di livello inferiore possono essere utilizzati (avanzati) o strumenti della GUI come Muon, Synaptic, Software Center, ecc. Non esiste un unico "modo corretto" di rimuovere applicazioni o eseguire altre attività che interagiscono con la gestione dei pacchetti.
L'elenco che hai trovato sono solo esempi. Assicurati di aver compreso i significati e di provare cosa vuole fare prima di accettare l'azione (è necessario premere Y
prima che esegua effettivamente le azioni come proposto).
La versione dell'asterisco nella domanda è probabilmente errata ; apt-get
accetta un'espressione regolare e non un modello glob come shell. Quindi cosa succede con
sudo apt-get remove application*
è il seguente:
La shell tenta di espandersi application*
guardando i file nella directory corrente. Se (come normalmente accade) non trova nulla, restituisce il modello glob inalterato (supponendo bash
qui con il comportamento predefinito --- zsh
verrà fuori errore).
apt-get
rimuove i pacchetti il cui nome contiene una stringa che soddisfa l'espressione regolare application*
, cioè, applicatio
seguiti da un numero arbitrario di n
: applicatio
, application
, applicationn
, libapplicatio
, etc.
Per vedere come questo può essere pericoloso, prova (senza root per la doppia sicurezza) apt-get -s remove "wine*"
( -s
simulerà la cosa invece di farlo) --- dirà che rimuoverà tutti i pacchetti che hanno "win" nel loro nome e il dipendente, quasi l'intero sistema ...
Probabilmente, il comando che si intendeva è davvero
sudo apt-get remove "^application.*"
(notare le virgolette e il punto) che rimuoverà tutti i pacchetti il cui nome inizia con application
.
Questi comandi,
sudo updatedb # <-- updates the locate database (index). harmless
sudo locate application # <-- locates the file 'application'. harmless
sudo rm -rf (file/folder name) # <-- removes files/dirs recursively. dangerous.
sono completamente al di fuori dell'ambito della gestione dei pacchetti. Non rimuovere i file appartenenti ai pacchetti senza utilizzare Gestione pacchetti! Sarà confuso ed è il modo sbagliato di fare le cose.
Se non sai a quale pacchetto appartiene un file, prova questo:
dpkg -S /path/to/file