Linux auf CF Card (Ramdisk / Life CD)

N

nexutron

Grünschnabel
Hi @ all

Ich bin nicht nur hier im Board neu, sondern auch neu dabei den Pinguin kennen zu lernen. Erschlagt mich bitte nicht gleich für jede Frage :D


Also .. .. .. bisher habe ich Debian sowie Suse mal installiert.


Nun habe ich vor auf einer Compact Flashcard ein Linux zu installieren (wird als Ide HDD angeschlossen).
Auf dieser CF Card soll ein Java Programm laufen.

Da dort wo der PC steht ca. 1 mal pro Woche Spannungsschwankungen gibt, soll das System bei einem Ausfall neu booten (ohne das es irgendwelche Abfragen gibt)

Jetzt habe ich gelesen das auf CF sowie USB Sticks das Problem gibt, das immer die selben Speicherzellen beschrieben werden.

Deshalb möchte ich das Linux von der CF Laden und soll danach nur noch im Arbeitsspeicher laufen. Also wie eine Knopix Life CD bzw ein embedded System.

Was für Schritte muss ich machen um meine angepasste Wunschinstallation zu so einer Version zu bekommen.

Was ich bisher gefunden hatte, war das man ein Image erzeugen soll und dies in einer Ramdisk geladen wird.
Geht das auch ohne Image, so das man auf der CF Card noch nachträglich von einem X-beliebigen PC Dateien editieren kann ? Debian bietet ja an, die Partition als Fat16 zu partitionireren.


Gruß Nex


PS: Puppy hab ich mal installiert.. .. .. aber neeeeeeeeeee.
Das mit der Packetauswahl hat mich abgeschreckt.
 
Hallo,
am einfachsten ist es zuerstmal alle Sachen zu elimnieren , die du nicht brauchst (Firewall-log zb).
So in deine menu.lst vom Grub muss das rein: ramdisk_size=16000 #für 16 MB.
Jetzt hast du ne Ramdisk.
So jetzt müssen beim booten folgende Schritte erledigt werden (das kommt zb in die rc.local rein)
Code:
#Ramdisk formatieren
/sbin/mke2fs -q -m 0 /dev/ram0
#Mounten
/bin/mount /dev/ram0 /ram
#Eigentümer ändern 
/bin/chown user:root /ram
#Rechte ändern
/bin/chmod 0750 /ram

Mit
Code:
find / -mmin -120 | grep -v "/ram" | grep -v "/proc"
bekommst du raus welche Dateien in den letzten 2 Std verändert wurden.
Diese Datein muss du nun per mv auf die Ramdisk packen, mit veränderter Ordnerstruktur.
Zb: was vorher /var/log war muss nun /ram/var/log lauten
So da jetzt das Programm nicht weiß wo die Datei liegt muss du einen Softlink erstellen,
das geht so:
Code:
ln -s "hier gehts hin" "so heißt der link"
Das heißt:
Code:
ln -s /ram/var/log /var/log

Das machst du mit allen Datein, die verändert werden.
Um deinem Stromausfall vorzubeugen muss du per cronjob die Datein auf die CF rücksichern:
Code:
59    23  * * *  cp -p -R /ram /backup/
Sprich jeden Tag um 23:59 wird gesichert.
Du musst natürlich die Datein beim Booten per cp -p -R /backup /ram rücksichern (ebenfalls in die rc.local)


Gruß beomuex
 
Zuletzt bearbeitet:
Schon mal besten dank für die gute Hilfe. :bounce:


Ich denke ich werde das so mit 1-2 Logfiles machen.
(Aus der Ramdisk die Logfiles der Java Aplikation zurück auf die CF-Card)
Das Problem wollte ich im 2.Schritt angehen. Aber so wurde es jetzt auch gelöst


Aber .. .. :think:
Eine Sache fehlt doch noch ??
Wie kommt das Linux OS in die RAM -Disk

So wie ich mir das dachte, soll das Linux in die Ramdisk geladen werden (wie bei der Life-CD) So das die CF-Card danach nicht mehr angesprochen wird um ein kaputtschreiben eines Sektors auf der Ramdisk zu verhindern.

Gruß Nex
 
Ich habe bei meiner Sludge Debain aufm USB-Stick und folgendes gemacht um die Schreibzugriffe zu minimieren:

- Unnötige Logs deaktiviert
- den ganzen /var Krempel ausgelagert
- Das gesammte Dateisystem mit der Option "noatime" eingehängt

Das reicht idR. um die max. Anzahl Schreibzyklen bei einem Flash-Speicher vernachlässigen zu können. Ausserdem kann man mittels dd die Karte 1:1 duplizieren und da die Teile preislich nicht der Rede wert sind, könntest ja eine als "Backup" parat halten.
 
Ja eigentlich musst du das "Linux OS" nicht auf die Ramdisk packen,sondern nur die Sachen die periodisch geschrieben werden(zB. Logs).
Das Linux ist auf der CF-Karte, wird von da aus gebootet und kopiert am anfang alle Daten, die verändert werden auf die Ramdisk.
Da bei einem Reboot, Stromausfall etc. die Daten weg sind werden diese jeden Tag um 23:59 rückgesichert.

Gruß
beomuex
 

Ähnliche Themen

/dev/sde2 does not exist am initramfs-prompt nach wheezy-installation auf sparc

Musik-Distribution auf CF-Card

Linuxinstalltion auf einem alten Notebook

Probleme beim booten über CF Card

Ubuntu X / dbus problem

Zurück
Oben