Eenvoudige backup en restore van geïnstalleerde paketten in Ubuntu.
Als je net als ik vaak pakketten installeert of verwijdert op je ubuntu-machine hou je dat meestal niet bij. Dat bijhouden is ook een probleem als je met meerdere mensen een server beheert, bijvoorbeeld.
Met een paar hele simpele commando's kun je een backup maken van de lijst met geïnstalleerde software en deze op een andere machine opnieuw installeren.
dpkg --get-selections > packagelist.txt
Dit maakt een complete lijst van alle geïnstalleerde software en zet deze in het tekstfiletje debianlist.txt.
Deze tekstfile is later te gebruiken om alles te installeren:
dpkg --set-selections < packagelist.txt
Merk op dat de instellingen van de betreffende software niet opgeslagen of geïnstalleerd word. Hiervoor moet je een volledige backup maken van de /etc/ map.
Ook worden handmatig geïnstalleerde of gecompileerde softwarepaketten ook niet mee-geïnstalleerd. Maar volgens mij ben je sowiezo verkeerd bezig als je buiten de pakketinstaller van ubuntu (of welke Linux dan ook) om gaat installeren. Dat is een garantie voor zooi.
Om de paketten nu daadwerkelijk te installeren:
apt-get -u dselect-upgrade
Het is verstandig om een wekelijkse (of dagelijkse of maandelijkse, afhankelijk van de mate waarin je paketten (de)installeert.
Voeg daarom een regel aan je crontab to. Dit soort systeemtaken voeg ik liefst aan de crontab van de root-gebruiker toe:
sudo crontab -e
Daar voer je een nieuwe regel in:
0 0 1 * * dpkg --get-selections > /var/archives/packagelist.`hostname`.`date +%F`.txt
Deze maakt iedere eerste dag van de maand een bestandje aan in de vorm "packagelist.naam-van-je-systeem.2009-05-01 (datum vandaag in sorteerbare volorde).txt"
(Vrij vertaald van een artikel door hanckmann)
Tags: administratie, apt, backup, backup-manager, Debian, dpkg, opensource, ubuntu,
"Maar volgens mij ben je
"Maar volgens mij ben je sowiezo verkeerd bezig als je buiten de pakketinstaller van ubuntu (of welke Linux dan ook) om gaat installeren."
Hmm. Klein beetje kort door de bocht. Er zijn erg veel goede pakketten die niet in de repositories van ubuntu staan, maar wel degelijk bonafide zijn. Kijk bijvoorbeeld eens bij Zimbra of Zarafa; twee bekende mailservers, draaien beide prima op Ubuntu (o.a.), en worden ook ondersteund onder Ubuntu. Maar het staat niet in de repo.
Je hebt wel gelijk als je het bedoelt als waarschuwing.
kort door de bocht, maar
kort door de bocht, maar M.I. wel meer dan slechts een waarschuwing.
Ik heb in het verleden bijna een half jaar lang een kernel niet kunnen upgraden, want als ik dat deed ging een niet-officiëel pakket: virtualbox stuk.
Virtualbox werkte prima op ubuntu, maar omdat het buiten de repositories om werkte waren ze niet altijd (nooit) op tijd met upgrades.
Is slechts één voorbeeld.
Andere voorbeelden, zoals jezelf een dependency-hell inwerken zijn er ook.
Kortom: je wil dit eigenlijk nooit!
When I try the first
When I try the first command, an empty (0k) packagelist.txt is created. Did I miss something?
-
Wanneer ik probeer de eerste opdracht, een lege (0k) packagelist.txt wordt gecreëerd. Heb ik iets gemist?
Nieuw commentaar posten