Guten Abend,
Namd.
Nun meine Frage:
Angenommen mein System verabschiedet sich. Wie hätte ich dann genau vorzugehen?
- System neu installieren
- Backup-Ordner kopieren und auf dem System ersetzen?
Was für daten sind den wichtig, auf einem linux system?
Ich sorge bei meinen systemen dafür, das ich nicht gross überlegen muss, was ich sichern muss. Alles was ich an datenbestand habe ist gewöhnlich unter /home. Alles config files sind in /etc. Auf einem multiusersystem würde ich /home komplett einschliessen. Wenn es meine maschine ist dann sind mir meine 'daten' in meinem homeverzeichniss ziemlich egal. Alle source codes sind via git verteilt, mein ~ ist rudimentär in nem git (alles was ich brauch um auf einer maschine from scratch anzufangen).
Auf einem neuen system mach ich ein git clone ...
in meinem ~ und installiere die nötige/gewünschte software (editor, shell ...). Danach installiere ich alle programme die ich brauch über den paketmanager und ersetze die benötigten configfiles in /etc durch meine backups (gewöhnlich finde ich das /etc auch sehr gut in einem git repository landen kann).
Danach hohl ich meine 'daten' zurück ins home. Auf meiner workstation und meinem homeserver wäre das zb /home/{ftp,music,mpd}.
Auf einem production server muss man noch ein wenig weiter gehen, und eventuell /var noch mit ins backup aufnehmen. Ich tendiere dazu, alles was notwendig ist ins /home zu linken.
Wie verhält es sich mit den installierten Programmen, wenn ich das richtig verstanden habe, liegen diese gänzlich unter /usr/ und/oder /bin und/oder /sbin, sowie Konfigurationen unter /etc?
Nein. Programme sind weit verstreut. Das ist aber nicht relevant. Man sichert keine libs und binaries. Man sichert nur config-files und daten.
Ich habe auch gelesen, dass man sich zb mittels
dpkg --get-selections > my-installed-apps
eine Liste der installierten Programme erstellen lassen kann, und diese nach einem Neuaufsetzen nachträglich wieder installieren kann.
Da kommen wir der sache näher.
Übrigens. Ein guter paketmanager beschwert sich wenn er existierende binaries oder libs überschreiben muss.
Dann las ich auch, dass man /usr/bin zb nicht backupen bräuchte. Das sehe ich aber irgendwie anders, da man dort ja doch schon hin und wieder einem Symlink manuell updated.
Eigentlich macht man das sehr selten. Es gibt ein ~/bin da gehören solche symlinks rein - wenn du sie systemweit zur verfügung stellen willst, dann sorge für ein schönes /etc/skel
Das gleiche mit /etc. Zb sollte doch m.M.n auch zwingend die xorg.conf gesichert werden - oder lässt sich die auf dem neuen Ssytem nicht 1:1 übernehmen?
λ sudo du -sh /etc
9.8M /etc
Mein ETC auf der workstation ist also weniger als 10 mb gross. Das backuppe ich einfach komplett.
Also, ich möchte eigentlich, dass ich im Falle eines Systemausfalles nach dem Einspielen des letzten Backups in etwa genau dort weiter machen kann, wo ich aufgehört habe - ohne wieder irgendetwas konfigurieren zu müssen.
Dann brauchst du sowas wie puppet
Damit kannst du automatisiert ein system (neu)aufsetzen, deine backups einspielen und das mit einer eingabe.
Vielleicht kann mit ja einer hier mal einen kurzen Einblick geben.
Hoffe das hilft.
/entropie
--
Whenever people agree with me I always feel I must be wrong.
-- Oscar Wilde