Ramdisk anlegen
Geizhals » Forum » Linux-Support » Ramdisk anlegen (17 Beiträge, 330 Mal gelesen) Top-100 | Fresh-100
Du bist nicht angemeldet. [ Login/Registrieren ]
.....
Re(5): Ramdisk anlegen
18.01.2006, 14:25:38
Cooler Share-Name ;-)

Nun denn, eines bleibt noch offen: Der Mount-Point selbst wird dauernd upgedatet - und der liegt ja auf der USB-Platte.

Ganz habe ich deine Aufgabe aber eh noch nicht verstanden:
Du hast also einen Linux-Rechner, dessen OS auf der USB-Platte liegt. Du willst nun aber erreichen, daß die USB-Platte nicht benutzt wird. Die Platte ist aber im Dauerzugriff (logging-Infos, ...)

Das läßt sich nur erzielen, indem du alles im Ram hast - also direkt in eine Ram-Disk bootest (oder ich hab's falsch verstanden).

Dann bleibt aber die Frage, was das Teil denn genau im Netz tun soll...

Wie auch immer, /ALLES/ im Ram kann man wie folgt lösen:
1.) einen neuen Mount-point /ramdisk anlegen
2.) tmpfs dorthin mounten
3.) alles wichtige vom System (also vieles aus /bin, /lib, /etc ...) hinkopieren
4.) mit einem chroot /ramdisk testen, ob alles klappt.
Wenn ja:
5.) md oldroot
6.) pivot_root . oldroot
7.) exec /bin/bash... - siehe pivot_root manpage
8.) chroot /oldroot, Platten unmounten, raus-aus-chroot
/FERTIG/

Du hast dann dein komplettes System ausschließlich im Ram - wenn es das ist, was du wolltest. Damit hast mal garantiert keinen USB-Streß mehr ;-)

EDIT:
Ich vermute mal eher, daß der smbd ja selbst mitlogged - und deswegen die USB-Platte mit anläuft, wenn wer auf deinen Share zugreift.
Du kannst es aber eh prüfen:
Wenn du ramfs gemountet hast, kopiere über's netz was nach Favoriten - und mach nachher ein unmount von dem ramfs. Dann müßten die Inhalte weg sein.

18.01.2006, 14:28 Uhr - Editiert von gepeinigter_aon_neukunde, alte Version: hier
Antworten PM Übersicht Chronologisch Zum Vorgänger
 
Melden nicht möglich
.......
Re(7): Ramdisk anlegen
18.01.2006, 14:55:50
Also ich fange mal mit dem Begriff NSLU nix an..
Aber das Script oben ist /crap/. Warum ein cp -rp ? Warum kein -a ? Warum wollen's keine Links erhalten ?

Ansonsten - gehen wir's durch:
/bin/mount -t ramfs ramfs /mnt/tmpmnt -o maxsize=256
Wie gesagt, ramfs kenn ich nicht - dürfte aber gleich wie tmpfs sein.
Du legst also ein ramfs nach /mnt/tmpmnt

/bin/cp -rp /var/* /mnt/tmpmnt/
Das hätte ich durch cp -a ersetzt. Es kopiert /var in diese Ramdisk.

/bin/mkdir -p /var.state
Legt eben ein Directory /var.state an

/bin/mount -o bind /var /var.state
/var wird parallel nach /var.state gemountet - clevere Idee.
/var und /var.state zeigen damit auf dieselbe Struktur auf der Platte.

/bin/mount -o bind /mnt/tmpmnt /var
Hiermit sagen wir, daß /tmpmnt (die Ramdisk) parallel nach /var gemountet wird.

/bin/umount /mnt/tmpmnt
/tmpmnt brauchen wir nicht mehr - hiermit kommt's weg

Wie sieht's also grob mit /var aus:

/var wurde nach /mnt/tmpmnt (in eine Ramdisk) kopiert - und parallel nach /var.state gemountet.

Die Ramdisk wurde über /var gemountet - und der 2. Link auf die Ramdisk (/tmpmount) entfernt.

Wichtig dabei ist allerdings, daß diese "Rummounterei" nur für neu geöffnete Dateien gilt. Wenn also ein Prozeß eine Datei vorher offen hatte - so schreibt er nachher auch auf die Platte.

Ein Lösungsansatz könnte der Neustart von Samba nach dem remounten sein.

Trotz allem ist mir noch immer nicht klar, wieso du auf die Idee kommst, daß die Favoriten selbst nicht aus der Ramdisk geladen werden - wie kommst auf diese These ?

Antworten PM Übersicht Chronologisch Zum Vorgänger
 
Melden nicht möglich
........
Re(8): Ramdisk anlegen
18.01.2006, 15:04:47
vielen dank für die ausführliche Erklärung

NSLU steht für Network Storage Link USB, siehe http://www.geizhals.at/a117939.html

mit einer modizifierten Firmware kann man per Telnet rein und wenn man das Betriebssystem auslagert, kann man alle möglichen packages installieren und somit z.B. einen FTP-Server, Apache, MySQL usw. darauf laufen lassen

jetzt läuft das Ding bei mir natürlich rund um die Uhr... die USB-Platte fährt standardmäßig nach ein paar Minuten runter, wenn sie nicht benutzt wird... jetzt war es natürlich so, dass das Linux vom NSLU alle paar Minuten die Log-Files aktualisiert hat, sodass die USB-Platte alle paar Minuten hochgefahren ist

das habe ich lösen können, indem ich das /var und das /dev - Verzeichnis auf die Ramdisk gelegt habe... so kann das NSLU seine Log-Files aktualisieren, ohne dass ständig die Platte hochfahren muss

dasselbe würde ich eben gern mit den Favoriten machen: da die Favoriten relativ wenig Platz beanspruchen, ich sie aber relativ oft benötige, wäre es (und das war einfach meine Idee) ganz praktisch, wenn sie auch auf einer Ramdisk liegen würden, damit ich erstens schneller darauf zugreifen kann (und ich nicht warten muss, bis die USB-Platte anläuft, falls sie ausgeschaltet war) und damit zweitens die Platte weiterhin schlafen kann, wenn ich darauf zugreife!

wenn ich jetzt allerdings auf die freigegebenen Favoriten auf dem Share zugreife, fährt die Platte hoch, sodass mich das glauben lässt, dass sie eben NICHT auf einer ramdisk liegen sondern immer noch auf die Platte zugegriffen werden muss (sonst würde sie ja noch hochfahren)

MfG

MJFox
18.01.2006, 15:06 Uhr - Editiert von MJFox, alte Version: hier
Antworten PM Übersicht Chronologisch Zum Vorgänger
 
Melden nicht möglich
 

Dieses Forum ist eine frei zugängliche Diskussionsplattform.
Der Betreiber übernimmt keine Verantwortung für den Inhalt der Beiträge und behält sich das Recht vor, Beiträge mit rechtswidrigem oder anstößigem Inhalt zu löschen.
Datenschutzerklärung