Hi,
wie gestern Abend besprochen, wollen wir versuchen den cache Ordner auf das Datenlaufwerk zu verlegen. In dem Zuge wollen wir mhddfs verwenden um alle Datenlaufwerke zusammen zu fassen. Ich habe dazu folgenden Vorschlag:
Data Ordner:
- das Subvolume @data des Systemlaufwerken wird fest nach /mnt/data gemountet
- alle weiteren Laufwerke werden nach /mnt/DEVICENAME (z.B. /mnt/sdb1) gemountet
- auch Netzwerklaufwerke werden nach /mnt/NETZNAME gemountet
- der Name des Mountpoints sollte im Setup frei wählbar sein und beim mount die UUID verwendet werden
- per mhddfs wird das Laufwerk /mnt/data und alle weiteren per setup gewählten Laufwerke nach /data gemountet
- es muss erst noch getestet werden, wie sich mhddfs verhält, wenn z.B. ein Netzlaufwerk erst nach dem mhddfs mount eingehängt wird
- wenn ein Netzwerklaufwerke z.B. nur den tv Ordner bereitstellt, wird dieses direkt nach /data/tv gemountet
- dies verdeckt dann den ursprünglichen /data/tv Ordner. Es findet an dieser Stelle kein zusammenfassen der Laufwerke mehr statt. Möchte man dies trotzdem haben, muss man vorerst die fstab manuell anpassen
Cache Ordner:
- der Ordner /var/cache wird per bind mount von /data/.cache/MACADRESSE/ gemountet
- durch die Verwendung der Mac Adresse als Teil des Pfades, gibt es auch bei Netzwerk Datenlaufwerken die von mehreren Clients verwendet werden keine Konflickte
- soll von einzelnen Programmen der Cache von allen Clients gemeinsam genutzt werden, so könnten wird der Ordner /var/cache/global erstellen, der ein bind mount nach /data/.cache/global ist
Anpassungen:
- bisher werden in einigen postinst Scripten Ordner unterhalb von /mnt/data angelegt. Dies bleibt so bestehen
- dadurch existieren diese Ordner immer, auch wenn mal ein Datenlaufwerk verloren geht
- die Softlinks von /data/xxx nach /mnt/data/xxx dürfen nicht mehr angelegt werden. Das ist hinfällig
- das Datenlaufwerk Setup wird durch das mhddfs Setup ersetzt
Optional:
- Damit das /mnt/data Laufwerk (welches ein Subvolume des System Laufwerkes ist) nicht voll läuft, wenn z.B. ein Netzlaufwerk gelegentlich zu spät auftaucht und das /mnt/data Laufwerk ersatzweise verwendet wird, könnte ein Script erstellt werden, welches alle Datein unterhalb von /mnt/data nach /data verschiebt, bzw. auf das Datenlaufwerk mit dem meisten freien Platz.
- Damit dies z.B. bei Datenbanken nicht zu Problemen führt, werden nur Dateien die nicht geöffnet sind verschoben. Alle anderen Dateien werden vor dem ausschalten (wenn alle Dienste gestoppt wurden) verschoben
- Existiert auf einem anderen Datenlaufwerk eine neuere Version einer Datei, so wird sie einfach nur gelöscht.
So, jetzt seit Ihr dran. Habe ich etwas von dem besprochenem vergessen? Gibt es Punkte die ich übersehen habe und die zu Problemen führen könnten?
Claus