Lebensdauer von Flashdrives unter Debian/Raspbian/Openmediavault verbessern
Nachdem ich mittlerweile etliche Flashdrives, SSDS & SD-Karten in meinen PIs & Server verschlissen habe, dachte ich mir nun, dass es wohl Sinn macht, mich dem Thema mal etwas genauer anzunehmen.
Nach einigen Recherchen im Internet, gibt es grundsätzlich 2 verschiedene Ansätze. Zum einen den, das Haupt OS generell schreibgeschützt aufzusetzen, oder den, verschiedene Verzeichnisse nur in eine Ramdisk zu legen. Ich habe mich für den 2ten Weg entschieden. Und mein OpenMediaVault dementsprechenden gemoddet.
Ich setzte dabei das Paket fs2ram ein. Dieses ist ähnlich der fstab aufgebaut. Im Gegensatz zu einem normal tmpfs mount, können hier Struktur & Daten gesichert werden. Das Paket ist nicht im Standard Repository, und muss manuell geladen und installiert werden.
Für /tmp sollte der Eintrag in /etc/fstab wie folgt schon vorhanden sein, wenn nicht einfach einfügen zudem auch noch das „defaults,noatime“ bei dem Root-Device einrichten:
/dev/mmcblk0p2 / ext4 defaults,noatime 0 1 tmpfs /tmp tmpfs defaults,noatime 0 0
Installation von fs2Ram auf allen Platformen (ARM, X32 & X64)
wget --no-check-certificate "https://miami.tschoerner.eu/deb/all/fs2ram_0.3.12_all.deb" -O fs2ram_0.3.12_all.deb sudo dpkg -i fs2ram_0.3.12_all.deb
Dies ist meine fs2ram.conf von OpenMediaVault:
# # In case you want to make /var/lock or /tmp available as ram # filesystems, it is preferable to set the variables RAMTMP, RAMLOCK # from /etc/default/tmpfs. # #<file system> <mount point> <script> <script option> <type> <options> #tmpfs /var/log keep_file_content - tmpfs #tmpfs /var/cache keep_file_content - tmpfs #tmpfs /var/tmp keep_file_content - tmpfs tmpfs /var/log keep_file_content - tmpfs tmpfs /var/cache keep_file_content - tmpfs tmpfs /var/tmp keep_file_content - tmpfs tmpfs /var/lib/openmediavault/rrd keep_file_content - tmpfs tmpfs /var/spool keep_file_content - tmpfs tmpfs /var/lib/rrdcached/ keep_file_content - tmpfs tmpfs /var/lib/monit keep_file_content - tmpfs tmpfs /var/lib/php5 keep_folder_structure - tmpfs
Nach den Änderungen sollte man das System einmal durchstarten.
Falls Ihr eine Disk im System als Root-Disk habt, könnt Ihr noch mit „hdparm“ herumspielen.
#aktuelle Disk status root@London:~# hdparm -C /dev/sdc /dev/sdc: drive state is: active/idle #Disk schlafen schicken root@London:~# hdparm -y /dev/sdc /dev/sdc: issuing standby command #status prüfen root@London:~# hdparm -C /dev/sdc /dev/sdc: drive state is: standby #Disk nach 5 Minuten automatisch herunterfahren root@London:~# hdparm -S 60 /dev/sdc