{"id":519,"date":"2016-12-30T13:19:05","date_gmt":"2016-12-30T11:19:05","guid":{"rendered":"http:\/\/blog.rollnut.com\/?p=519"},"modified":"2019-03-29T23:02:05","modified_gmt":"2019-03-29T21:02:05","slug":"backup-des-rasperry","status":"publish","type":"post","link":"http:\/\/blog.rollnut.com\/backup-des-rasperry\/","title":{"rendered":"Backup des Rasperry"},"content":{"rendered":"

Absolut notwendig f\u00fcr ein Raspberry (und jedes andere System) welches produktiv eingesetzt wird sind Backups.\u00a0Ich erkl\u00e4re euch wie man ein Systemabbild (Image) erstellt und wieder einspielt.
\n<\/p>\n

Das Backup beim Pi kann sich in ein oder zwei Schritte aufteilen. Zum einen muss immer die SD-Karte gesichert werden (Betriebssystem). Solltet Ihr auch ein USB-Speicherger\u00e4t verwenden muss dieses ebenfalls gesichert werden.
\nDa ich es so handhabe das die SD-Karte ausschlie\u00dflich Systemdateien enth\u00e4lt empfehle ich dieses als Image zu sichern.\u00a0F\u00fcr die USB-Platte reicht mir einfaches komprimieren.<\/p>\n

Dieser Artikel ist Bestandteil der Artikelserie \"<\/strong>Home Server mit dem Raspberry Pi\"<\/strong>. Zum Inhaltsverzeichnis gelangt ihr hier<\/a>.<\/p>\n

Backup von der SD-Karte erstellen<\/h1>\n

Steckt die SD-Karte vom Raspberry ab und in euren PC ein. Dort startet Ihr das Programm Win32DiskImager<\/strong> (sourceforge.net\/projects\/win32diskimager<\/a>).<\/p>\n

W\u00e4hlt mit dem blauen Ordnericon<\/strong> den Pfad wo das Image gespeichert werden soll. Bei Device<\/strong>\u00a0bitte den Laufwerksbuchstaben der SD-Karte selektieren. Mit\u00a0Read<\/strong>\u00a0wird das Backup erstellt.<\/p>\n

\"sdformatter_read\"<\/a><\/p>\n

Anschlie\u00dfen solltet ihr die .img<\/strong> Datei komprimieren z.b. mit 7zip<\/strong>. Es empfiehlt sich beim Dateinamen die Gr\u00f6\u00dfe der SD-Karte festzuhalten solltet Ihr das Image\u00a0mal auf einem Medium mit anderer Gr\u00f6\u00dfe wiederherstellen m\u00fcssen (ungef\u00e4hr so: 2016-12-30_piSD_8GB<\/strong><\/em>).<\/p>\n

Backup der SD-Karte wiederherstellen<\/h1>\n

Mit dem Programm\u00a0SD Card Formatter<\/strong>\u00a0muss die SD-Karte formatiert werden (www.sdcard.org\/downloads\/formatter_4\/index.html<\/a>).<\/p>\n

1. Formatieren<\/strong><\/p>\n

W\u00e4hlt\u00a0den korrekten Laufwerksbuchstaben der SD-Karte (in dem Bild unten ist es F:<\/strong>) und \u00f6ffnet die Optionen<\/strong>. Aktiviert nun Format Size Adjustment<\/strong>. Mit dem Button Format<\/strong>\u00a0beginnt das Programm.<\/p>\n

\"sdformatter\"<\/a><\/p>\n

2. Image einspielen<\/strong><\/p>\n

Zuerst entpackt ihr das Image falls es\u00a0komprimiert ist.
\nDanach startet ihr das Programm\u00a0Win32DiskImager<\/strong>. W\u00e4hlt dort mit dem blauen Ordnericon<\/strong> das Image aus. Rechts daneben bei Device<\/strong>\u00a0bitte den Laufwerksbuchstaben der SD-Karte w\u00e4hlen. Anschlie\u00dfend wird mit Write<\/strong> das Backup wiederhergestellt.<\/p>\n

\"win32diskimager\"<\/a><\/p>\n

Backup von der USB-Disk erstellen<\/h1>\n

Die externe Festplatte k\u00f6nnt Ihr auf diverse Arten sichern. Bei Bedarf kann man mit der obigen Anleitung auch ein Image erstellen. Ich habe mich allerdings daf\u00fcr entschieden alle Daten der Disk lediglich zu komprimieren (gzip). Nun m\u00f6chte ich zwei L\u00f6sungen daf\u00fcr Vorschlagen.<\/p>\n

Archivieren vom Pi aus<\/h2>\n

Stoppt alle Dienste welche w\u00e4hrend des Backups auf die Festplatte zugreifen k\u00f6nnten, wechselt zum User root<\/strong> und navigiert\u00a0anschlie\u00dfend in das Verzeichnis\u00a0von dem ein\u00a0Backup erstellt werden soll:<\/p>\n

# stop all programs which access the usb drive.\r\nsudo su -\r\ncd \/media\/pidisk1<\/pre>\n

Nun k\u00f6nnt ihr das Komprimieren der Festplatte ansto\u00dfen:<\/p>\n

tar -zcvf pidisk1.tar.gz *<\/pre>\n

Sichert die Datei pidisk1.tar.gz<\/strong> und startet danach wieder alle Dienste.
\nWenn ben\u00f6tigt k\u00f6nnt Ihr unter Windows das Archiv mit\u00a07zip<\/strong>\u00a0\u00f6ffnen.<\/p>\n

Optional: Archivieren von Windows aus<\/h2>\n

Achtung!<\/strong>\u00a0Die obige Variante ist besser\u00a0und sollte bevorzugt verwendet werden. Wenn Ihr derzeit keine M\u00f6glichkeit habt mit Linux zu arbeiten kann alternativ auch von Windows aus das Backup gestartet werden. Eventuell gehen (je nach verwendetem Tool) Meta-Daten verloren.<\/em><\/p>\n

Steckt die Festplatte an euren Windows PC. Sollte diese als NTFS<\/strong> formatiert sein ist das Backup mehr als einfach da Ihr nun die Dateien\/Ordner w\u00e4hlen k\u00f6nnt welche Ihr sichern m\u00f6chtet.\u00a0Kopiert die Dateien und komprimiert Sie mit z.B. 7zip<\/strong>.<\/p>\n

Ist die Platte als\u00a0ext4<\/strong> formatiert wird es etwas aufw\u00e4ndiger. Windows kann, ohne Hilfe von Drittanbietern, kein Linux-Format lesen.<\/p>\n

Mit dem Programm Ext2Read<\/strong>\u00a0k\u00f6nnt Ihr\u00a0Lesezugriff auf die Festplatte erhalten (sourceforge.net\/projects\/ext2read<\/a>).
\nMit diesem Programm k\u00f6nnt Ihr allerdings das Backup nicht wiederherstellen.\u00a0Zum sichern reicht es allerdings aus.<\/p>\n

Besser ist die L\u00f6sung\u00a0Ext2File<\/strong>\u00a0(sourceforge.net\/projects\/ext2fsd\/<\/a>) oder von\u00a0Paragon<\/strong> (www.paragon-software.com\/de\/home\/extfs-windows-pro\/download.html<\/a>).
\nDiese binden das Laufwerk\u00a0ganz normal in den Windows Explorer ein. Der Zugriff erfolgt dann wie gewohnt (ich habe allerdings den Eindruck das zeit der Installation der Startvorgang vom WinExplorer tr\u00e4ger wurde).<\/p>\n

Backup der USB-Disk wiederherstellen<\/h1>\n

Achtet darauf das die Festplatte das gew\u00fcnschte Format hat (ext4<\/strong> oder NTFS<\/strong>). Die Festplatte muss au\u00dferdem gemountet sein. Lest hier wie das geht: blog.rollnut.com\/mount-disk-festplatte-in-linux-einbinden\/<\/a>.<\/p>\n

Nun ben\u00f6tigt Ihr das Backup (die Datei mit der Endung .tar.gz<\/strong>). Diese sollte sich in dem Ordner befinden welcher das Ziel der wiederherstellung ist. Dann sto\u00dft man einfach das entpacken an:<\/p>\n

sudo tar -zxvf pidisk1.tar.gz<\/pre>\n

Zu meiner \u00dcberraschung habe ich festgestellt das sogar Owner, Gruppe und Rechte von Dateien wiederhergestellt wurden. Aber Achtung:<\/strong><\/span> Einstellungen die mit ACL<\/strong> vorgenommen wurden (also mit dem Befehl setfacl<\/strong>) konnten nicht erstellt werden. Diese sollten nach dem dekomprimieren manuell wieder gesetzt werden.<\/p>\n

Jetzt ist die Festplatte wiederhergestellt. Vor dem Betrieb empfiehlt es sich einen Neustart zu machen.<\/p>\n

sudo shutdown -r now<\/pre>\n

Achtung:<\/strong> Das Wiederherstellen des Backups sollte nur von\u00a0Linux aus erfolgen. In meinem Test habe ich die Daten \u00fcber\u00a0Windows<\/strong>\u00a0(mit Paragon<\/strong>) auf die Festplatte gespielt. Das Ergebnis war das Metadaten von Dateien nicht korrekt waren (beim Owner von jeder Datei war Unknown<\/strong> hinterlegt).<\/p>\n

Tipps & Tricks<\/h1>\n

Beim erstellen oder wiederherstellen vom Backup waren folgende Kommandos f\u00fcr meine Umgebung hilfreich:<\/p>\n

ID's von Benutzern und Gruppen<\/h2>\n

Sollte es vorkommen\u00a0sollte das eure SD-Karte kaputt geht und ihr nur noch ein sehr altes Backup wiederherstellen k\u00f6nnt kann es vorkommen das auf der Festplatte Benutzerrechte existieren f\u00fcr Benutzer die nicht im Betriebssystem hinterlegt sind. In dem Fall sollte es ausreichen wenn Ihr die Benutzer und Gruppen auf dem OS anlegt. Sehr wichtig ist aber das diese die korrekten ID's haben (UID und GID).<\/p>\n

# Read User- and GroupID\r\nid -u [username]\r\ngetent group [groupname]\r\n\r\n# Change User- and GroupID\r\nusermod -u [id] [username]\r\ngroupmod -g [id] [groupname]<\/pre>\n

Alle Services beenden<\/h2>\n
    \n
  • Samba<\/li>\n
  • SeaFile<\/li>\n
  • mySQL<\/li>\n<\/ul>\n
    # !\/bin\/bash\r\n\r\n# seafile\r\necho !Stopping Seafile\r\n\r\n\/home\/seafile\/seafile-server-latest\/seahub.sh stop\r\n\/home\/seafile\/seafile-server-latest\/seafile.sh stop\r\n\r\n# Samba\r\necho !Stopping Samba\r\n\r\nsudo service smbd stop\r\n\r\n# mySQL\r\necho !Stopping mySQL\r\n\r\nsudo service mysql stop<\/pre>\n

    Starten<\/h2>\n
    # !\/bin\/bash\r\n\r\n# mySQL\r\necho !Starting mySQL\r\n\r\nsudo service mysql start\r\n\r\n# Samba\r\necho !Starting Samba\r\n\r\nsudo service nmbd restart\r\nsudo service smbd restart\r\n\r\n# Seafile\r\necho !Startin Seafile\r\n\r\nsudo su seafile \/home\/seafile\/seafile-server-latest\/seafile.sh start\r\nsudo su seafile \/home\/seafile\/seafile-server-latest\/seahub.sh start<\/pre>\n

     <\/p>\n","protected":false},"excerpt":{"rendered":"

    Absolut notwendig f\u00fcr ein Raspberry (und jedes andere System) welches produktiv eingesetzt wird sind Backups.\u00a0Ich erkl\u00e4re euch wie man ein Systemabbild (Image) erstellt und wieder einspielt.<\/p>\n","protected":false},"author":5,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":[],"categories":[5],"tags":[19],"_links":{"self":[{"href":"http:\/\/blog.rollnut.com\/wp-json\/wp\/v2\/posts\/519"}],"collection":[{"href":"http:\/\/blog.rollnut.com\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/blog.rollnut.com\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/blog.rollnut.com\/wp-json\/wp\/v2\/users\/5"}],"replies":[{"embeddable":true,"href":"http:\/\/blog.rollnut.com\/wp-json\/wp\/v2\/comments?post=519"}],"version-history":[{"count":43,"href":"http:\/\/blog.rollnut.com\/wp-json\/wp\/v2\/posts\/519\/revisions"}],"predecessor-version":[{"id":802,"href":"http:\/\/blog.rollnut.com\/wp-json\/wp\/v2\/posts\/519\/revisions\/802"}],"wp:attachment":[{"href":"http:\/\/blog.rollnut.com\/wp-json\/wp\/v2\/media?parent=519"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/blog.rollnut.com\/wp-json\/wp\/v2\/categories?post=519"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/blog.rollnut.com\/wp-json\/wp\/v2\/tags?post=519"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}