Hallo Debian Jungs und Mädels!
Hab mir ein kleines "Spielzeug" [1] angeschafft um mir einen Minirouter auf Debianbasis zu bauen. Soweit kein Problem. Jetzt setze ich als "Festplatte" eine 8GB CF Karte [3] ein, um diese zu schonen wollte ich einige Sachen ins ramfs [2] legen. Welche Ordner sollten dort rein? Ich hab an /var/log gedacht und evtl and /tmp . Sonst noch irgendwelche Sachen die permanent geschrieben werden?
Es dürfen natürlich nur Sachen ins ramfs welche nicht mehr benötigt werden nach einem Start und welche verloren gehen dürfen.
Fehlersuche macht das natürlich schwer und deshalb hab ich gedacht, dass ein cronjob eben die Fehler per grep raussucht und falls ein neuer dazukam, ihn an eine Datei auf der CF karte anhängt.
Eventuell wollte ich den GPIO und den I2C Bus des Systems nutzen um ein paar Hardwarespielereien dranzuhängen.
Gruß
schorsch
[1] https://shop.tronico.net/Embedded-Compu ... IX-1D.html
[2] http://www.linuxjournal.com/article/4678
[3] https://shop.tronico.net/Speicherkarten ... Karte.html
Flash Filesystem
- schorsch_76
- Beiträge: 2632
- Registriert: 06.11.2007 16:00:42
- Lizenz eigener Beiträge: MIT Lizenz
Re: Flash Filesystem
hi,
es gibt ein paar Sachen, die sollen nach einen Neustart verloren gehen: wenn in /var/run und /var/log etwas übrig bleiben würde, würde das sogar stören. Deshalb ist eine Ramdisk für diese beiden schon vorbereitet. Du brauchst nur in /etc/default/rcS RAMRUN und RAMLOCK auf yes zu setzen.
Bei /tmp und /var/log muss man aufpassen, evt. braucht eine Anwendung dort sehr viel Platz. Außerdem kann der Admin selbst entscheiden, ob bestimmte Dateien erst nach einer gewissen Zeit gelöscht werden sollen (TMPTIME in /etc/default/rcS). Speziell bei deinem Router gehört /tmp wohl trotzdem in eine Ramdisk.
Die beste Lösung für die Logfiles wäre, sie auf einem anderen Rechner zu speichern, der syslogd ist dafür vorbereitet. Sobald die Kiste rund läuft, kann man sie auch wieder in eine Ramdisk packen. Das macht die Fehlersuche wirklich nur in Extremfällen schwerer. Die Daten bleiben ja trotzdem bis zum nächsten Stromausfall erhalten und in der Regel steht nichts interessantes drin. Man muss nur aufpassen, dass die /var/log-Ramdisk nicht voll läuft und evt. deren Größe auf weniger als 50% physikalisches RAM begrenzen.
/var/tmp ist noch ein Kandidat, aber ich glaub', das wird sowieso kaum benutzt. Dann gibt es noch einzelne Dateien, die aus historischen Gründen beschreibbar sein sollten, z.B. /etc/adjtime und irgendwas in /etc/network. Ansonsten kann man /etc, /bin, /boot, /lib, /sbin, /usr und den Rest von /var sowieso read-only mounten. Damit ist es nicht allzu schwierig, die komplette CF-Karte read-only zu mounten.
Der Artikel [2] spielt übrigens in einer anderen Liga, dazu brauchst du direkten Zugriff auf die Speicherchips. Eine CF-Karte sollte das alles per Firmware selbst erledigen. Ob die Kombination von einem Flash-Filesystem auf einer CF-Karte überhaupt was bringen kann, müssten wir noch erforschen...
es gibt ein paar Sachen, die sollen nach einen Neustart verloren gehen: wenn in /var/run und /var/log etwas übrig bleiben würde, würde das sogar stören. Deshalb ist eine Ramdisk für diese beiden schon vorbereitet. Du brauchst nur in /etc/default/rcS RAMRUN und RAMLOCK auf yes zu setzen.
Bei /tmp und /var/log muss man aufpassen, evt. braucht eine Anwendung dort sehr viel Platz. Außerdem kann der Admin selbst entscheiden, ob bestimmte Dateien erst nach einer gewissen Zeit gelöscht werden sollen (TMPTIME in /etc/default/rcS). Speziell bei deinem Router gehört /tmp wohl trotzdem in eine Ramdisk.
Die beste Lösung für die Logfiles wäre, sie auf einem anderen Rechner zu speichern, der syslogd ist dafür vorbereitet. Sobald die Kiste rund läuft, kann man sie auch wieder in eine Ramdisk packen. Das macht die Fehlersuche wirklich nur in Extremfällen schwerer. Die Daten bleiben ja trotzdem bis zum nächsten Stromausfall erhalten und in der Regel steht nichts interessantes drin. Man muss nur aufpassen, dass die /var/log-Ramdisk nicht voll läuft und evt. deren Größe auf weniger als 50% physikalisches RAM begrenzen.
/var/tmp ist noch ein Kandidat, aber ich glaub', das wird sowieso kaum benutzt. Dann gibt es noch einzelne Dateien, die aus historischen Gründen beschreibbar sein sollten, z.B. /etc/adjtime und irgendwas in /etc/network. Ansonsten kann man /etc, /bin, /boot, /lib, /sbin, /usr und den Rest von /var sowieso read-only mounten. Damit ist es nicht allzu schwierig, die komplette CF-Karte read-only zu mounten.
Der Artikel [2] spielt übrigens in einer anderen Liga, dazu brauchst du direkten Zugriff auf die Speicherchips. Eine CF-Karte sollte das alles per Firmware selbst erledigen. Ob die Kombination von einem Flash-Filesystem auf einer CF-Karte überhaupt was bringen kann, müssten wir noch erforschen...
Beware of programmers who carry screwdrivers.
Re: Flash Filesystem
Ein Dateisystem ohne Journaling (z.B. ext2) zu nutzen kann auch nicht schaden.
Re: Flash Filesystem
ramfs ist ürigens soweit ich mich erinnere mittlerweile tot. tmpfs ist der direkte Ersatz.
Ich würde dir zumindest für den Start Voyage [0] ans Herz legen. In den älteren Versionen wird noch tmpfs genutzt, in den neueren aufs (das hab ich noch nicht probiert).
[0] http://linux.voyage.hk/
Ich würde dir zumindest für den Start Voyage [0] ans Herz legen. In den älteren Versionen wird noch tmpfs genutzt, in den neueren aufs (das hab ich noch nicht probiert).
[0] http://linux.voyage.hk/
Formerly known as Trigger.
HP 8510p - Debian Sid
Mitglied des Debian-KDE-Teams
HP 8510p - Debian Sid
Mitglied des Debian-KDE-Teams
- schorsch_76
- Beiträge: 2632
- Registriert: 06.11.2007 16:00:42
- Lizenz eigener Beiträge: MIT Lizenz
Re: Flash Filesystem
Das hört sich doch schon mal gut an ![Smile :)](./images/smilies/icon_smile.gif)
Werd mir Voyager Linux mal ansehen. Danke!
Gruß
schorsch
![Smile :)](./images/smilies/icon_smile.gif)
Werd mir Voyager Linux mal ansehen. Danke!
Gruß
schorsch
Re: Flash Filesystem
Erm, wie ich gerade sehe ist es genau umgekehrt. aufs wird mit tmpfs ersetzt. Da amerkt man, dass ich meine Systeme zu Etch zeiten aufgesetzt hab und seitdem von hand weiter gepflegt habe. Da vergisst man schon mal, wie genau Sachen implementiert sind, die einfach laufen und keine Probleme machen.
Formerly known as Trigger.
HP 8510p - Debian Sid
Mitglied des Debian-KDE-Teams
HP 8510p - Debian Sid
Mitglied des Debian-KDE-Teams