USB->RAM Linux

Warum Debian und/oder eine seiner Spielarten? Was muss ich vorher wissen? Wo geht es nach der Installation weiter?
malteklein
Beiträge: 71
Registriert: 08.04.2008 11:46:02

USB->RAM Linux

Beitrag von malteklein » 15.06.2008 16:51:47

Hallo,

hat jemand ein script, dass auf einem USB stick ist und beim booten, das gesammte System, was auf dem USB stick ist in den Speicher ablegt und den USB-stick unmountet.
Nach einem Reboot oder Runterfahren den Stick wider mounted und die Anederungen uebernimmt.

Benutzeravatar
TrustNo1
Beiträge: 135
Registriert: 12.07.2006 12:35:12
Wohnort: /home/Austria

Re: USB->RAM Linux

Beitrag von TrustNo1 » 17.06.2008 16:06:14

Hallo,
malteklein hat geschrieben:Hallo,
.......
Nach einem Reboot oder Runterfahren den Stick wider mounted und die Anederungen uebernimmt.
wie meinst du das? Nach einem Reboot ist dein Speicher wieder jungfräulich (zumindest wennst RAM meinst)....

lg
"It's better to be free", said the penguin after he left the aquarium!

Benutzeravatar
snyborg
Beiträge: 256
Registriert: 08.08.2007 22:07:32
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: 127.0.0.1

Re: USB->RAM Linux

Beitrag von snyborg » 17.06.2008 17:34:10

Hi malteklein,

da würde ich als allererstes Mal bei Knoppix suchen. Die haben imho so einen Mechanismus eingebaut...

Viele Grüße
sny

malteklein
Beiträge: 71
Registriert: 08.04.2008 11:46:02

Re: USB->RAM Linux

Beitrag von malteklein » 18.06.2008 03:13:23

TrustNo1 hat geschrieben:Hallo,
malteklein hat geschrieben:Hallo,
.......
Nach einem Reboot oder Runterfahren den Stick wider mounted und die Anederungen uebernimmt.
wie meinst du das? Nach einem Reboot ist dein Speicher wieder jungfräulich (zumindest wennst RAM meinst)....

lg
Deswegen soll doch vor dem REboot die aenderungen wieder auf den USB stick gespeichert werden.
Z.B. wegen update.
Nachdem ich das System vom USB gebottet habe und alle Daten(200MB) in den Ram gelanden wurde, soll der usb stick ausgehangen werden.

Danke

Benutzeravatar
TrustNo1
Beiträge: 135
Registriert: 12.07.2006 12:35:12
Wohnort: /home/Austria

Re: USB->RAM Linux

Beitrag von TrustNo1 » 18.06.2008 09:29:41

du könntest dir 2 Skripte schreiben:

startscript

Code: Alles auswählen

mount -t /dev/sd** vfat /mnt/stick
mount -t tmpfs tmpfs /mnt/ram -o size=250M
rsync -vru --delete /mnt/stick /mnt/ram
umount /mnt/stick
und beim runterfahren folgendes

Code: Alles auswählen

mount -t /dev/sd** vfat /mnt/stick
rsync -vru --delete /mnt/ram /mnt/stick
umount /mnt/stick
umount /mnt/ram
Beides in die Runlevels eintragen und fertig

Ich übernehme keine Garantie aber so in der Art sollte es funktioniern,
und du musst den Code oben natürlich so anpassen das es für dich I.O. ist.

lg Trust
"It's better to be free", said the penguin after he left the aquarium!

malteklein
Beiträge: 71
Registriert: 08.04.2008 11:46:02

Re: USB->RAM Linux

Beitrag von malteklein » 18.06.2008 11:13:00

super!

Das war genau das was ich mir vorgestellt habe.

Wo muss ich denn das Runterfahrenscript ausfuehren?

malteklein
Beiträge: 71
Registriert: 08.04.2008 11:46:02

Re: USB->RAM Linux

Beitrag von malteklein » 18.06.2008 11:14:18

Wie mounte ich denn nach dem Labelname?

Benutzeravatar
TrustNo1
Beiträge: 135
Registriert: 12.07.2006 12:35:12
Wohnort: /home/Austria

Re: USB->RAM Linux

Beitrag von TrustNo1 » 18.06.2008 11:23:42

malteklein hat geschrieben:Wie mounte ich denn nach dem Labelname?
/dev/labelname verwenden....

Wegen runlevels bitte dokumentation lesen, google ist dein freund....

lg
"It's better to be free", said the penguin after he left the aquarium!

malteklein
Beiträge: 71
Registriert: 08.04.2008 11:46:02

Re: USB->RAM Linux

Beitrag von malteklein » 18.06.2008 11:30:46

muss im start script nicht nocht das hier rein?
mount --bind /ram /
das Problem ist doch, dass aufgrund der laufenden Programm es nicht moeglich ist den Stick zu unmounten.
Man muss irgendwie waerend des boorvergangs das Script ausfuehren...

Benutzeravatar
TrustNo1
Beiträge: 135
Registriert: 12.07.2006 12:35:12
Wohnort: /home/Austria

Re: USB->RAM Linux

Beitrag von TrustNo1 » 18.06.2008 11:37:05

Wie gesagt ich habe so etwas noch nie gemacht, ich kann mir nur vorstellen das es so funktioniert,
wenn du dein Skript in Runlevel 2 hinzufügt mit niedrieder nummer, sollte der stick zu diesem
Zeitpunkt noch nicht gemountet sein.

Du kannst auch das mounten des Sticks und der Ramdisk permanent in die /etc/fstab eintragen
und in den Skripten nur mehr das kopieren und unmounten machen.
Problem dabei ist nun das der Stick immer angesteckt sein sollte beim hochfahren und das Startskript
muss nach dem Mounten der fstab device ausgeführt werden. Dies sollte im Runlevel 2 der Fall sein.

//edit:
Falls ein Verständnis Problem vorliegt:
alles was in den Runlevels eingetragen wird, wird automatisch beim Bootvorgang ausgeführt(S)
für ausführen beim Runterfahren muss ein K davor stehen...
"It's better to be free", said the penguin after he left the aquarium!

Benutzeravatar
catdog2
Beiträge: 5352
Registriert: 24.06.2006 16:50:03
Lizenz eigener Beiträge: MIT Lizenz

Re: USB->RAM Linux

Beitrag von catdog2 » 18.06.2008 23:08:07

Wie mounte ich denn nach dem Labelname?
/dev/disk/by-label/...
Unix is user-friendly; it's just picky about who its friends are.

malteklein
Beiträge: 71
Registriert: 08.04.2008 11:46:02

Re: USB->RAM Linux

Beitrag von malteklein » 21.06.2008 12:24:08

Hallo,

ich habe das script angepasst, allerdings kann ich es noch nicht richtig zum Einsatz bringen, weil nachdem ich den ram als root gemounted habe, kann ich den stick nicht unmounten weil er busy ist.

Es muss dafuer doch eine loesung geben./..

Spasswolf
Beiträge: 3472
Registriert: 30.11.2005 10:32:22
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Wald

Re: USB->RAM Linux

Beitrag von Spasswolf » 21.06.2008 12:46:04

Ein tmpfs erstellen, das root Dateisystem darauf kopieren, und dann mit pivot_root(8) das root Dateisystem wechseln.

malteklein
Beiträge: 71
Registriert: 08.04.2008 11:46:02

Re: USB->RAM Linux

Beitrag von malteklein » 21.06.2008 12:57:03

Spasswolf hat geschrieben:Ein tmpfs erstellen, das root Dateisystem darauf kopieren, und dann mit pivot_root(8) das root Dateisystem wechseln.
Ich werde es augenblicklich ausprobieren,
aber wieso hast du (8) dazugeschrieben?

Spasswolf
Beiträge: 3472
Registriert: 30.11.2005 10:32:22
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Wald

Re: USB->RAM Linux

Beitrag von Spasswolf » 21.06.2008 13:15:36

Wegen der manpage. Es gibt zwei manpages für pivot_root. Die manpage des Programms ist:

Code: Alles auswählen

man 8 pivot_root
Und die manpage des entsprechenden Systemaufrufs ist:

Code: Alles auswählen

man 2 pivot_root
Ist in diesem Fall aber unnötig, da als Standard die 8er manpage aufgerufen wird.

malteklein
Beiträge: 71
Registriert: 08.04.2008 11:46:02

Re: USB->RAM Linux

Beitrag von malteklein » 21.06.2008 15:28:17

leider immer noch der busy fehler!

malteklein
Beiträge: 71
Registriert: 08.04.2008 11:46:02

Re: USB->RAM Linux

Beitrag von malteklein » 21.06.2008 15:39:07

Kann es sein dass dieser Befehl == chroot ist?

Naja ich geh mal kurz Essen!

Spasswolf
Beiträge: 3472
Registriert: 30.11.2005 10:32:22
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Wald

Re: USB->RAM Linux

Beitrag von Spasswolf » 21.06.2008 16:45:02

Beschreib mal genau, was du gemacht hast. Und lies dir die Beispiele in der manpage durch.

malteklein
Beiträge: 71
Registriert: 08.04.2008 11:46:02

Re: USB->RAM Linux

Beitrag von malteklein » 21.06.2008 17:37:36

ich habe ds scipt gearde nicht vor mir liegen, wenn es wichtig ist, kann ich es aber morgen hier reinkopieren.

Ich will doch, dass das komplette System im Ram haben - und dann den stick unmounten und alles komplett vom RAM weiterlaufen lassen.
Das ist alles.

malteklein
Beiträge: 71
Registriert: 08.04.2008 11:46:02

Re: USB->RAM Linux

Beitrag von malteklein » 22.06.2008 18:04:23

Hier das Script.

Code: Alles auswählen

mount /dev/disk/by-label/ServerDE /mnt2/
#mount -t /dev/disk /mnt/stick
#mount -t tmpfs tmpfs /mnt2/var/cache/apt/archives/ -o size=1K
mkdir /lib/init/rw/RAMLINUX
rsync -vru --delete /mnt2 /lib/init/rw/RAMLINUX
mount --bind /lib/init/rw/RAMLINUX /
#umount /mnt2/var/cache/apt/archives/
umount /mnt2
umount /dev/disk/by-label/ServerDE
Allerdings fehlt mir noch der Befehl, der das Rootverzeichnis des kompletten System aendert, damit ich den Stick unmounten kann.
piviot_root gehtl irgendwie nicht,,

malteklein
Beiträge: 71
Registriert: 08.04.2008 11:46:02

Re: USB->RAM Linux

Beitrag von malteklein » 26.06.2008 17:00:44

Gibt es noch eine andere Moeglichkeit als pivot_root?
Ich muss unbedingt das Rootverzeichnis wechseln, sonst kann ich den USBstick nicht unmounten.

Spasswolf
Beiträge: 3472
Registriert: 30.11.2005 10:32:22
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Wald

Re: USB->RAM Linux

Beitrag von Spasswolf » 26.06.2008 20:05:09

pivot_root ist die Möglichkeit. Aber eventuell ist nach der Anwendung von pivot_root noch etwas unterhalb des alten root Verzeichnisses gemountet (z.B. /dev; /proc, /sys), das musst du mit "mount --move" verschieben, bevor du das alte Rootverzeichnis unmounten kannst.

malteklein
Beiträge: 71
Registriert: 08.04.2008 11:46:02

Re: USB->RAM Linux

Beitrag von malteklein » 27.06.2008 13:20:57

Ich habe mit --move alle gemounteten Ordner verschoben:
/dev/ dev/pts /dev/shm /proc

in das Zielverzeichnis (/lib/init/rw/RAMLINUX) gegangen und piviot ./ /
Ergebnis: Device Busy

Benutzeravatar
Mr_Snede
Beiträge: 2323
Registriert: 08.07.2003 13:48:49
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Ruhrpott

Re: USB->RAM Linux

Beitrag von Mr_Snede » 27.06.2008 13:47:26

Ich möchte nochmal auf den Ansatz "Knoppix" hinweisen. Für Damn Small Linux gibt es folgende Möglichkeiten:
- Booten von USB Stick (komplettes OS in den RAM)
- Backup von Nutzerdaten auf den Stick beim Herunterfahren. (Systemordner sind wohl auch möglich)

--> http://www.damnsmalllinux.org/wiki/inde ... ersistence

Da kann man sich mindestens was Abschauen.
Viel Erfolg weiterhin, und halte uns auf dem Laufenden.

malteklein
Beiträge: 71
Registriert: 08.04.2008 11:46:02

Re: USB->RAM Linux

Beitrag von malteklein » 27.06.2008 14:13:01

ich habe den Artikel ueberflogen,
wuesste aber nicht wie er mir weiterhelfen sollte.

Antworten