Accidentalmente cancellato / usr / lib, come posso ripristinarlo?

4

So che questo è qualcosa che non dovrei fare, ma è successo (Ubuntu 12.04.1 LTS) come utente root ho eliminato la cartella / usr / lib. Qualche idea su come ripristinarlo?

    
posta gregor171 26.03.2013 - 18:15

2 risposte

1

Ci sono strumenti che potrebbero aiutarti a ripristinare i file, ma solitamente è un processo lento e prevalentemente manuale. I motori di ricerca sono i tuoi amici.

Potrebbe essere più facile avviare un live CD o USB, montare la partizione di root del sistema, quindi copiare / usr / lib in /mnt/{root.drive}usr/lib, ma si otterranno solo i file lib predefiniti e non quello che potresti aver aggiunto.

Penso che l'opzione migliore sia reinstallare il sistema operativo. Ovviamente, vorrai i tuoi dati su una partizione separata che non è formattata durante l'installazione, buona pratica IMHO.

    
risposta data user143574 26.03.2013 - 19:36
0

Supponendo che apt-get funzioni ancora, puoi provare a utilizzare dpkg per ottenere un elenco dei pacchetti che contengono file e installarli con apt-get . Puoi usare questo script Ruby, ma la stessa idea può essere implementata in python o bash:

raw_pkgs = 'dpkg --get-selections'.split("\n")
need_reinstall = []

path="/usr/lib"

raw_pkgs.each do |x|
    pkg = x.split(" ")[0]
    if 'dpkg -L #{pkg}'.include? path
        puts "-> #{pkg} has files in #{path}"
        need_reinstall << pkg
    end
end
puts "\nYou need to reinstall #{need_reinstall.size} packages:"
puts "\tsudo apt-get install --reinstall " + need_reinstall.join(" ")

È un po 'una soluzione di forza bruta e ci vorrà del tempo (nel mio sistema l'elenco era ~ 65% dei pacchetti totali installati ...), ma dovrebbe funzionare.

    
risposta data Salem 13.09.2013 - 12:06

Leggi altre domande sui tag