Come recuperare la directory "dpkg" cancellata?

26

Purtroppo ho eliminato la directory dpkg durante la rimozione del blocco. Per errore ho digitato

[email protected]:~$ rm -r /var/lib/dpkg

Ora, quando sto provando ad installare / disinstallare i pacchetti, mi viene mostrato l'errore seguente.

E: Could not open lock file /var/lib/dpkg/lock - open (2: No such file or directory)

Che cosa dovrei fare ora?

    
posta Sambit 28.11.2013 - 13:26

4 risposte

50

root + rm + -r = disastro

Quindi cosa hai condannato alla perdizione?

ls -l /var/lib/dpkg/
total 9964
drwxr-xr-x 2 root root    4096 nov 28 11:18 alternatives
-rw-r--r-- 1 root root      11 sep 18 14:08 arch
-rw-r--r-- 1 root root 2573807 nov 28 11:18 available
-rw-r--r-- 1 root root 2561322 nov 28 10:25 available-old
-rw-r--r-- 1 root root       8 abr 24  2013 cmethopt
-rw-r--r-- 1 root root     538 sep 25 17:24 diversions
-rw-r--r-- 1 root root     457 sep 25 17:24 diversions-old
drwxr-xr-x 2 root root  483328 nov 28 11:17 info
-rw-r----- 1 root root       0 nov 28 11:18 lock
drwxr-xr-x 2 root root    4096 mar 22  2013 parts
-rw-r--r-- 1 root root     135 abr 24  2013 statoverride
-rw-r--r-- 1 root root 2269113 nov 28 11:18 status
-rw-r--r-- 1 root root 2268870 nov 28 11:18 status-old
drwxr-xr-x 2 root root    4096 nov 28 11:18 triggers
drwxr-xr-x 2 root root    4096 nov 28 11:18 updates

Hai rimosso 5 directory, il file di stato, ecc. Quindi, proviamo a sistemare le cose. Per prima cosa, crea la directory:

sudo mkdir -p /var/lib/dpkg/{alternatives,info,parts,triggers,updates}

Ripristina alcuni backup:

sudo cp /var/backups/dpkg.status.0 /var/lib/dpkg/status

Ora, vediamo se il tuo dpkg sta funzionando (inizia a pregare):

apt-get download dpkg
sudo dpkg -i dpkg*.deb

Se tutto è "ok", ripara anche i tuoi file di base:

apt-get download base-files
sudo dpkg -i base-files*.deb

Ora prova ad aggiornare l'elenco dei pacchetti, ecc.:

dpkg --audit
sudo apt-get update
sudo apt-get check

Ora facciamo un respiro profondo. Uff. Fai ls -l /var/lib/dpkg e confronta con l'elenco precedente. Se non è presente un file -old non preoccuparti, sarà lì domani.

    
risposta data Braiam 29.11.2013 - 02:49
2

Il pacchetto dpkg (Debian package management system) fornisce l'infrastruttura di basso livello per la gestione dell'installazione e la rimozione dei pacchetti software Debian. La rimozione non è stata una buona idea, e puoi recuperarla da -

Download del file utilizzando wget :

wget https://launchpad.net/ubuntu/+archive/primary/+files/dpkg_1.16.1.2ubuntu7.2.tar.bz2

Estrai nella cartella xxx.

cd xxx
./configure
make
sudo make install

spero che funzionerà.

    
risposta data Sukupa91 28.11.2013 - 13:40
1

Ripristina il tuo sistema dal backup. Hai fatto i backup giusto? Il backup del sistema e dei dati è fondamentale per gestire situazioni impreviste come questa (errore dell'utente) e guasti hardware. Se non è stato possibile creare backup come discusso qui puoi provare recupero dati.

In futuro ti suggerisco di backup su base regolare per evitare la perdita di dati catastrofici. E dubito che lo dimenticherai come @Braiam ha detto " root + rm + -r = disastro "

    
risposta data Elder Geek 07.02.2016 - 16:44
-2

Segui semplicemente i passaggi seguenti, assicurati di poter recuperare i file, almeno il apt-get o dpkg funzionerebbe.

sudo cp /var/backups/dpkg.status.0  /var/lib/dpkg/

sudo mv /var/backups/dpkg.status.0  /var/backups/status

sudo mkdir /var/lib/dpkg/updates

Dopo questo test, se funzionerebbe o meno.

sudo apt-get install {Package-name}

sudo dpkg -i {package_name}

Spero che abbia funzionato. Se non commentare qui sotto. Ricorda, usa estrema cautela mentre giochi con sudo + rm -rf .

    
risposta data Srudeep P A 20.01.2018 - 15:18

Leggi altre domande sui tag