writeback bei ext3

FreeBSD, Gentoo, openSUSE, CentOS, Ubuntu, Debian
roi
Posts: 145
Joined: 2003-04-07 09:05
Location: Esslingen am Neckar
 

writeback bei ext3

Post by roi »

Servus,

meinen neuen Rootserver bei Strato habe ich auf Empfehlung von Bekannten mit ext3 anstatt reiserfs in Betrieb genommen. ext3 soll problemunanfaelliger und auch schneller sein als reiserfs. Die Schelligkeit spielt ext3 allerdings nur im Journalingmode "writeback" aus. Der Standardmodus ist zwar sicherer, allerdings deutlich langsamer, auch im Vergleich zu reiserfs. Da ext3-writeback immer noch mindestens genau so gut wie reiserfs sein soll, ist das das Ziel. :-)

Nun klappt das leider nicht. Stelle ich in der fstab writeback ein, bootet die Kiste nicht mehr. Alles probiert, kein Erfolg...

Hier meine Konfiguration, inkl ein paar Datei-Inhalten (und da ich nicht genau weiss, was alles noetig ist fuer einen ordentlichen Boot, eventuell ein paar Dateien zuviel):

Debian 3.0, Kernel 2.6.3

/etc/fstab:

Code: Select all

/dev/hda1       none    swap    sw                                 0  0
/dev/hda2       /       ext3    defaults                           0  1
proc            /proc   proc    defaults                           0  0
/etc/mtab:

Code: Select all

/dev/hda2 / ext3 rw 0 0
proc /proc proc rw 0 0
devpts /dev/pts devpts rw,gid=5,mode=620 0 0
/etc/lilo.conf:

Code: Select all

boot=/dev/hda
serial = 0,57600n8
vga = normal    # force sane state
menu-scheme=Wg:kw:Wg:Wg
read-only
prompt
lba32
timeout=100
# End LILO global Section
#

image = /vmlinuz
root = /dev/hda2
label = linux
append ="console=tty0 console=ttyS0,57600"
So, und das hier waren meine Versuche in der fstab, den Rootserver zu writeback zu ueberreden:

Code: Select all

/dev/hda2       /       ext3    defaults,noatime,data=writeback    1  0

Code: Select all

/dev/hda2       /       ext3    defaults,noatime,data=writeback    0  1

Code: Select all

/dev/hda2       /       ext3    data=writeback    1  0

Code: Select all

/dev/hda2       /       ext3    data=writeback    0  1
Kann mir jemand weiterhelfen? Google war in dem Fall leider nicht mein Freund, nix zu finden...

Viele Gruesse,
Roi
jensc
Posts: 9
Joined: 2004-02-21 17:46
 

Hm

Post by jensc »

Soweit ich mich errinnere wäre für das, was Du da vorhast ein sogenannter "Remount" oder die Verwendung eines Startimages notwendig, da "/" zum lesen von /etc/fstab schließlich erstmal gemounted werden muss.

So und nun kommen wir zum Kern des Problems:

1) Ein Remount mit unterschiedlichen journaling modes ist logischer weise nicht möglich, sofern es sich wie in Deinem Fall um die Root-Node handelt.

2) ein Startimage (aka initrd-File) verwendest Du überhaupt nicht.

Was die Lösung angeht, so hast Du zwei Varianten zur Auswahl:

1) Sofern Du ext3 nicht als Kernel-Modul kompiliert hast, kannst Du einfach mittels rootflag im "append" den Data-Modus auf Writeback setzen.

2) Andernfalls müßtest Du Deine fstab entsprechend anpassen und mittels mkinitrd ein Image generieren. Hast Du das gemacht, musst Du dieses nur noch entsprechend in die lilo.conf einbinden.

Gruß Jens
roi
Posts: 145
Joined: 2003-04-07 09:05
Location: Esslingen am Neckar
 

Re: Hm

Post by roi »

JensC wrote:1) Sofern Du ext3 nicht als Kernel-Modul kompiliert hast, kannst Du einfach mittels rootflag im "append" den Data-Modus auf Writeback setzen.
Hab ich eben mal probiert, habe in die lilo.conf

Code: Select all

append ="console=tty0 console=ttyS0,57600 rootflags=data=writeback,noatime"
eingebaut. "lilo" laufen lassen, ext3 ist (schon) in den Kernel kompiliert (gewesen). Leider bootet das System nicht. Und wieder stehe ich da und muss mir minutenlang Pings angucken, die ins Leere gehen, aechz!

Hab ich irgendwas vergessen oder falsch gemacht? Der Kernel kann ext3 und bootet ja auch das System, nur mit der Option writeback kommt irgendwas nicht zurecht. An sich ist es doch egal, was fuer eine Option man verwendet, da doch alles in der ext3-Unterstuetzung drinnen sein muesste.

Gruss,
Roi
jensc
Posts: 9
Joined: 2004-02-21 17:46
 

Sorry, mein Fehler:

Post by jensc »

Ich vergaß zu erwähnen, daß die Verwendung von "rootflags" natürlich auch den Einsatz von "root" bedingt. :oops: Der Kernel muss schließlich auch wissen, worauf er das Flag anwenden soll. Abgesehen davon gehört "noatime" IIRC nicht mit in die rootflags.

Versuchs mal hiermit:

Code: Select all

append ="console=tty0 console=ttyS0,57600 root=/dev/hda2 rootflags=data=writeback"
Gruß Jens
roi
Posts: 145
Joined: 2003-04-07 09:05
Location: Esslingen am Neckar
 

Klappt!

Post by roi »

Hab es jetzt genau so gemacht, wie von Dir vorgeschlagen und es hat geklappt, vielen Dank fuer die Hilfe!!!

Ich habe in der fstab trotzdem noch die Aenderungen eingetragen, inkl der noatime, da ein Aufruf von "mount" nicht ergeben hat, dass das Filesystem tatsaechlich mit writeback laeuft. auch ein "cat /proc/mounts" ergab nichts zwecks writeback. Jetzt ergibt "mount", dass writeback und noatime eingestellt ist/sein soll und ein "cat /proc/mounts" ergibt, dass noatime eingestellt ist.

Wird schon passen... :-)
majortermi
Userprojekt
Userprojekt
Posts: 916
Joined: 2002-06-17 16:09
 

Re: writeback bei ext3

Post by majortermi »

Roi wrote:meinen neuen Rootserver bei Strato habe ich auf Empfehlung von Bekannten mit ext3 anstatt reiserfs in Betrieb genommen. ext3 soll problemunanfaelliger und auch schneller sein als reiserfs
Problemunanfälliger: In der Regel ja
Schneller: In der Regel nein. Da dürfte eher ReiserFS punkten.
Erst nachlesen, dann nachdenken, dann nachfragen... :)
Warum man sich an diese Reihenfolge halten sollte...
roi
Posts: 145
Joined: 2003-04-07 09:05
Location: Esslingen am Neckar
 

Re: writeback bei ext3

Post by roi »

MajorTermi wrote:Problemunanfälliger: In der Regel ja
Schneller: In der Regel nein. Da dürfte eher ReiserFS punkten.
Ich hab mich dann einfach auch an dieser Seite orientiert:

http://www.gurulabs.com/ext3-reiserfs.html

Dort kommt ext3 (zumindest die writeback-Variante) recht gut weg.