[[Vorlage(getestet, general)]] {{{#!vorlage Wissen [:Terminal: Ein Terminal öffnen] [:Pakete_installieren: Installation von Programmen] }}} [[Inhaltsverzeichnis(1)]] = Festplattenstatus = Sollte man sich nicht sicher sein und die Festplatte erst einmal überprüfen wollen, so hilft der Artikel [:Festplattenstatus:] weiter. = Fehlerhafte Dateisysteme = Es sollte zwar mit modernen Dateisystemen kaum mehr vorkommen können - aber wenn mehrere ungünstige Umstände zusammentreffen, können Dateisysteme doch einmal beschädigt werden. Normalerweise werden fehlerhafte Dateisysteme automatisch erkannt und repariert. In schweren Fällen gelangt man beim Systemstart auf eine Reparaturkonsole mit weiteren Anweisungen. Von dort aus oder im Terminal [1] (vom installierten System oder von einer Live-CD aus gestartet) können Dateisysteme wie unter [:Dateisystemcheck#Manuelle-Pruefung:] beschrieben manuell überprüft werden. = Defekte Datenträger = Schlimmer ist es, wenn eine Festplatte oder ein anderer Datenträger einen physischen Defekt aufweist. Dies wird oft durch Fehlermeldungen wie {{{ Buffer I/O Error on device sdb, logical block 0 }}} angezeigt. In diesem Fall sollten die Daten so schnell wie möglich gesichert werden, da bei manchen Fehlern ein schneller Totalausfall des Datenträgers möglich ist. Sollte es dennoch einmal so weit sein und die Festplatte macht Probleme, so sollte man mit einem Festplattenprüfprogramm den Zustand der Festplatte analysieren lassen. Jeder Hersteller bietet so eine Software auf seiner Homepage an. Im Schadensfall ist das Ergebnis eines solchen Tests das Argument für eine Reklamation beim Hersteller. Auf der [http://www.ultimatebootcd.com/ Ultimate Boot CD] {en} sind alle gängigen Tools auf einer bootbaren CD zusammengefasst. {{{#!vorlage Hinweis Mitunter können Fehler durch kalte Lötstellen, defekte Steckverbindungen oder Kabelbrüche auftreten. Diese sind teilweise schwer zu erkennen, da das Problem nur zeitweise auftritt. Hier ist es hilfreich die betroffene Festplatte genau zu inspizieren und testweise andere Kabel zur Verbindung mit dem Computer zu verwenden. }}} == Datenträger überprüfen == Das bereits in der Standardinstallation enthaltene Kommandozeilenprogramm badblocks durchsucht eine Partition nach defekten Datenblöcken; vom Einsatz dieses alten Programms bei modernen Datenträgern wird jedoch abgeraten. Details siehe: [:Laufwerksverwaltung/#Festplattenfehler-suchen:] Dateisysteme kann man mit dem Programm [:fsck:] überprüfen. Dies kann auch konfigurierbar automatisch periodisch erfolgen. == Daten von defekten Datenträgern kopieren == Der sicherste Weg, so viele Daten wie möglich zu retten, ist eine 1:1-Kopie des gesamten Datenträgers - soweit der eben noch lesbar ist. Ausgehend von dieser Kopie kann man dann versuchen, Dateisysteme zu reparieren und Daten zu sichern. Dazu sei an erster Stelle auf den Artikel [:Datenrettung:] hingewiesen. [:gddrescue:] ist ein Programm zur Datenrettung von defekten Datenträgern. Die Funktionsweise ist im Artikel beschrieben. {{{#!vorlage Hinweis Achtung, Verwechslungsgefahr: Neben dem im Artikel [:gddrescue:] beschriebenen und im Paket '''gddrescue''' enthaltenen Programm ddrescue (OHNE Unterstrich) gibt es auch noch das ältere Programm [http://www.garloff.de/kurt/linux/ddrescue dd_rescue] {en} (MIT Unterstrich), für das es jedoch lediglich bis Ubuntu [:12.04:] ein Paket gab. Zur [bug:161126:Begründung] der Entfernung wurde darauf verwiesen, dass das neuere Programm zum einen einen viel größeren Funktionsumfang besäße und zum anderen nur wenige Funktionen des älteren nicht hätte. }}} Eine exakte Kopie unter Auslassung defekter Sektoren liefert das Programm dd_rescue, das in der Standardinstallation nicht enthalten ist. Auf der Live-CD Knoppix ist es jedoch enthalten. Ein Anwendungsbeispiel: {{{#!vorlage Befehl mount /media/cdrom/ dd_rescue -A /media/cdrom/sehrwichtig.txt ~/backup.txt }}} Mit diesem Befehl kopiert dd_rescue die kaputte Datei '''sehrwichtig.txt''' in das Home-Verzeichnis (mit dem Namen '''backup.txt'''). Defekte Blöcke werden in '''backup.txt''' durch Nullen ersetzt. Lässt man die Option `-A` weg, dann überspringt dd_rescue defekte Blöcke, schreibt also keine Nullen, wodurch die Dateiintegrität gestört werden könnte. Auch das Kopieren kompletter Datenträger ist möglich. Weitere Hinweise zum Einsatz gibt es auf [https://www.linux-user.de/ausgabe/2004/08/048-dd-rescue/ Linux-User.de] {de}. = Defekte Partitionstabelle = Das Programm testdisk untersucht Festplatten auf vorhandene Partitionen, um diese wiederherzustellen, wenn die Partitionstabelle beispielsweise durch einen Fehler beim Partitionieren zerstört wurde. Es wird nicht automatisch installiert, man muss es über das Paket {{{#!vorlage Paketinstallation testdisk, universe }}} nachträglich installieren. Testdisk wird im Terminal [1] z.B. so aufgerufen: {{{#!vorlage Befehl sudo testdisk /dev/sda }}} = Verlorene Partitionen wiederherstellen = Im [https://www.linuxwiki.de/VerlorenePartitionFinden Linuxwiki] {de} wird beschrieben, wie man eine verlorengegangene Partition wiederherstellen kann (für fortgeschrittene Anwenderinnen und Anwender). = Dateisystem voll = An dieser Stelle soll es nicht um einen Datenträger gehen, der tatsächlich randvoll ist, sondern um das sehr spezielle Problem von fehlenden freien [wikipedia:Inode:Inodes]. Auftreten kann das Problem bei Datenträgern, die mit '''ext2''', '''ext3''' oder '''ext4''' formatiert sind. Obwohl noch mehrere GiB freier Speicherplatz vorhanden sind, können keine Dateien mehr gespeichert werden. Auch die Deinstallation von Programmen (um Platz zu schaffen) ist nicht mehr möglich. == Diagnose == * freier Speicherplatz: {{{#!vorlage Befehl df -h }}} {{{Dateisystem Größe Benutzt Verf. Verw% Eingehängt auf /dev/sda1 7,1G 5,2G 1,5G 78% / }}} * Freie Inodes: {{{#!vorlage Befehl df -i }}} {{{Dateisystem Inodes IBenutzt IFrei IUse% Eingehängt auf /dev/sda1 468640 468638 2 100% / }}} == Abhilfe == Um einen betroffenen Rechner wenigstens wieder halbwegs flott zu kriegen, versucht man mit: {{{#!vorlage Befehl du -hsx ~/* | sort -rh | head -10 }}} die 10 größten Ordner im [:Homeverzeichnis:] zu ermitteln, bei denen es sich lohnen würde, Dateien zu löschen (letztlich um dadurch freie Inodes zurückzugewinnen). Sollte das Löschen hier nicht ausreichen (oder eine eigene Root-Partition existieren), ersetzt man `~` mit `/`: {{{#!vorlage Befehl sudo du -hsx /* | sort -rh | head -10 }}} Prinzipiell muss man bei der Ausführung des Befehls aber Geduld mitbringen. Anschließend sollte das Deinstallieren nicht mehr benötigter Pakete klappen. Kandidaten sind beispielsweise ältere, nicht mehr benötigte [:Kernel#Kernel-deinstallieren:] und Kernelheader. Apropos Kernelheader: wenn selbst die Auflistung der 10 größten Ordner nicht mehr möglich ist und man nicht wahllos und blindlings löschen möchte, sollte man die Ordner '''/usr/src/linux-headers-*/''' näher in Augenschein nehmen. Hier können gefahrlos Ordnerinhalte (!) gelöscht werden (aber niemals die Ordner der jeweiligen Kernelheader-Version selbst, weil sonst `dpkg` meckert, wenn man das dazugehörige Paket später deinstalliert). Beispiel: 1. Ordner anzeigen: {{{#!vorlage Befehl ls -la /usr/src }}} {{{drwxr-xr-x 5 root root 4096 Apr 27 2015 ./ drwxr-xr-x 15 root root 4096 Mai 7 2013 ../ drwxr-xr-x 23 root root 4096 Feb 18 2015 linux-headers-3.13.0-26/ drwxr-xr-x 23 root root 4096 Mai 17 2013 linux-headers-3.13.0-25/ drwxr-xr-x 23 root root 4096 Mai 17 2013 linux-headers-3.13.0-24/ }}} 1. Ordnerinhalte gezielt löschen {{{#!vorlage Befehl sudo rm -rf /usr/src/linux-headers-3.13.0-24/* }}} == Vermeidung == Da man die Inode-Anzahl von ext-Dateisystemen nicht ohne Neuformatierung anpassen kann, kann man das Problem nur an seinem Ursprung lösen: 1. Daten komplett sichern 1. Partition neu formatieren und dabei die Anzahl der Inodes vergrößern. Der Standardwert ist in der Datei '''/etc/mke2fs.conf''' als `inode_ratio =` im Abschnitt `[defaults]` zu finden. Ein kleinerer Wert vergrößert die Anzahl der verfügbaren Inodes. Beispiel: wenn man den Wert `16384` mit `8196` ersetzt, erhält man eine doppelt so große Anzahl. Nachteil: auch Dateisystemprüfungen dauern nun doppelt so lange. Ein anderer Ansatz ist die Verwendung des Dateisystems [:Dateisystem#Grundlegende-Merkmale:XFS], das diese Problematik nicht kennt. 1. Daten zurückspielen = Links = == Intern == * [:Notfall:] {Übersicht} Was tun in Notfällen? * [:Festplattenstatus:] – Das [wikipedia:S.M.A.R.T.:S.M.A.R.T.]-Diagnosesystem * [:Laufwerksverwaltung:] – Grafisches Stan­dard­pro­gramm von GNOME zum Verwalten von Laufwerken und Partitionen * [:Datensicherung:] – Wie der Name sagt: Alles zum Thema Datensicherung * [:Festplattenschutz: Absturzsicherung von Festplatten bei ThinkPad-Modellen] * [:Datenrettung:] – Gelöschte Dateien wiederherstellen sowie Daten von beschädigten Partitionen retten * [:System#Dateisystem-und-Datentraeger: Dateisysteme und Datenträger] {Übersicht} Übersicht über weitere Artikel zum Thema == Extern == * [https://www.cgsecurity.org/wiki/TestDisk_DE testdisk-Wiki] {de} * [https://www.cgsecurity.org/wiki/Schritt_f%C3%BCr_Schritt_Wiederherstellungsbeispiel Wiederherstellungsbeispiel] {de} # tag: Hardware, System, Datenträger, Datenrettung, Festplatte, Partitionierung