Come faccio a ripristinare un sistema?


16

Problema che ho affrontato

  • Ho installato qualcosa che ha causato l'arresto anomalo dei miei driver Wifi che ho compilato in precedenza.
  • La disinstallazione dello stesso pacchetto non ha aiutato.
  • Alla fine, ho ricompilato i miei driver wifi e le cose vanno bene.

La mia domanda

Ma c'è qualcosa come Ripristino configurazione di sistema o Ripristino configurazione di sistema in Ubuntu / LinuxMint?

  • C'è qualcosa che può undoun apt-get install packagecomando?

La rottura del sistema è un problema serio in Linux, ci deve essere qualcosa del genere System Wide UNDO?
Yugal Jindle

Pensa fuori dagli schemi di Windows (e Google la tua domanda). Puoi semplicemente comprimere interi pezzi del tuo sistema, ma dire che l'errore del sistema è un problema serio non è vero. Eseguo Linux su tutti i miei computer (Arch Linux all'avanguardia, quindi la stabilità dovrebbe risentirne) e devo ancora vedere il mio computer arrestarsi o funzionare male. Ho già detto che i computer usano Arch da 2-4 anni ciascuno?
Blender,

Potrebbe essere valsa la pena fare una purificazione apt-get sul pacchetto che ha rotto il sistema poiché si suppone che rimuova tutte le impostazioni ad esso associate.
Col

@Blender Sono un utente Linux al 100% da 2 anni. Anche se odio il ripristino del sistema di Windows, ma in Linux alcune volte gli aggiornamenti X interrompono la tua grafica, ci dovrebbe essere qualcosa come sandbox o qualcosa del genere ... per annullarlo.
Yugal Jindle

Risposte:


7

Il complemento di apt-get install packageè apt-get remove package. Per rimuovere anche tutte le impostazioni associate, è necessario eseguire apt-get purge package.

Si noti che questi comandi si basano sugli script di disinstallazione forniti con il pacchetto. Tutti i pacchetti nel repository principale che conosco fanno molto bene il loro lavoro di disinstallazione. Questo potrebbe non essere il caso dei pacchetti di terze parti.

Per quanto riguarda il problema del driver, ci sono alcune possibilità per cui l'installazione di un pacchetto ha interrotto il driver wireless:

  • Il driver ha un hook post-installazione che viene eseguito quando si verifica una condizione, ad es. Aggiornamenti del kernel
  • Il pacchetto ha sovrascritto un file da cui dipendeva il driver wireless
  • Il pacchetto in questione era un aggiornamento del kernel ma il driver non ha un hook post-installazione per ricompilare il driver (molto probabilmente)

Per quanto riguarda le funzionalità "Ripristino del sistema" / "Ripristino del sistema", la funzione più vicina che otterrai è un'immagine di sistema che utilizza software come Clonezilla . Sfortunatamente, questo non può essere fatto all'interno di un sistema in esecuzione e deve essere eseguito da un Live CD.


14

Esiste un software per Linux chiamato Timeshift esattamente per questo scopo. Usando Timeshift puoi scattare regolarmente istantanee del tuo sistema Linux e ripristinarle quando ne hai bisogno.

Questo software porta la funzionalità Ripristino configurazione di sistema di Windows alla tua distribuzione Linux.

Una breve descrizione dal suo sito ufficiale:

TimeShift per Linux è un'applicazione che offre funzionalità simili alla funzione Ripristino configurazione di sistema in Windows e allo strumento Time Machine in Mac OS. TimeShift protegge il sistema eseguendo istantanee incrementali del file system a intervalli regolari. Queste istantanee possono essere ripristinate in un secondo momento per portare il sistema allo stato esatto in cui si trovava al momento in cui è stata acquisita l'istantanea.

Le istantanee sono prese usando rsync e hard-link. I file comuni sono condivisi tra le istantanee per risparmiare spazio su disco. Ogni istantanea è un backup di sistema completo che può essere sfogliato con un file manager.


Sembra bello, ma se non ho già scattato delle istantanee, non posso approfittarne. :/ giusto?
gsamaras,

9

In realtà, ci sono poche cose in Ubuntu et al. che ti consentirà di ripristinare le modifiche. Breve sotto:

  1. /var/backups/dpkg.status.*: questa directory mantiene un set di log dell'ultimo stato del sistema prima di un'installazione come segue; /var/backups/dpkg.status.0è il registro più recente prima di un cambio di stato (ad es. installazione / rimozione / aggiornamento del pacchetto ... ecc.); /var/backups/dpkg.status.?.gzsono versioni compresse, archiviate dei registri in vari punti nel tempo, ruotate mensilmente.
  2. /var/lib/dpkg/status: questo è lo stato attuale dei pacchetti installati. Il backup manuale o la fornitura di uno script logrotate /etc/logrotate.dassicurerà la pianificazione delle istantanee dello stato del sistema a proprio piacimento.
  3. Rollback: la pietra angolare è il tuo stato precedente /var/backups/dpkg.status.0. Ecco una breve procedura passo-passo per ripristinare lo stato del pacchetto precedente (nota breve e non esaustiva ).

    un. cp /var/backups/dpkg.status /var/lib/dpkg/status(ripristinerà lo stato del pacchetto indietro di una versione).

    b. dpkg -l | grep ii(ti fornirà un elenco di pacchetti apparentemente installati basati sul /var/lib/dpkg/statusfile di rollback ottenuto nel passaggio a. sopra).

    c. dpkg -l | grep ii | awk '{print "apt-get --reinstall -y install", $2}' > /tmp/reinstall && sh /tmp/reinstall(creerà un semplice script shell one-liner ed eseguirà quello per reinstallare i pacchetti determinati a trovarsi sul sistema prima di un'operazione apt-get)

    d. apt-get --reinstall install ucf(si occuperà di disinfettare / etc config files et. al)

    e. Ripetere il passaggio c. se / se necessario


Con un po 'di fortuna, dovresti essere a posto.


4

In Ubuntu non esiste una funzionalità del genere come "Ripristina allo stato precedente" in Windows. Avresti dovuto eseguire il backup per ripristinare la macchina in una fase precedente. Seriamente, mi manca anche questa funzione. Esistono molti strumenti, ma nessuno di questi funziona come il punto di ripristino di Windows né Time Machine per Mac. Vediamo se le cose migliorano nel backup in Linux.


1

btrfs ha / avrà alcune funzionalità snapshot che dovrebbero essere in grado di gestire questo tipo di cose. Conserva i tuoi dati in un filesystem e il tuo sistema in un altro, e usa le istantanee periodiche (giornaliere? Settimanali?), Quindi esegui il rollback ogni volta che sorgono problemi.


2
Il pacchetto apt-btrfs-snapshot esegue automaticamente l'istantanea del volume secondario di root ogni volta che apt fa le cose con i pacchetti, facilitando il rollback.
psusi

1
Ellaborate .. per favore.
Yugal Jindle,


1

Oltre a Timeshift e ai registri / var menzionati, puoi anche usare etckeeper per evitare di rovinare i file di configurazione nella tua directory / etc e non avere backup su cui ripristinare. Usa un VCS.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.