# Welches Dateisystem?

## schachti

Welches Dateisystem ist am besten, wenn nur einige wenige große Dateien gespeichert werden sollen, die das Dateisystem zu so gut wie 100% füllen, und wenn das Dateisystem anschließend nur noch readonly gemountet werden soll?

Konkreter Fall: Ich erzeuge eine Containerdatei, die ich über das Loop-Device mounten will. Die Containerdatei ist fast so groß wie eine DVD (ca. 4.3 GB) und soll nur Dateien der Größe 500-800 MB enthalten...

Welches Dateisystem hat in dem Fall den geringsten Overhead / verschwendet am wenigsten Speicherplatz? Von der Performance her sollte ext2 nicht schlecht sein, oder?

----------

## c07

ext2/3 ist da eher schlecht, weil es jeden Block einzeln verwaltet. Große Dateien verwalten Extent-basierte Dateisysteme sehr viel effektiver. Der Verwaltungsbedarf der anderen dürfte ziemlich identisch mit dem sein, was ein leeres Dateisystem braucht. Das kannst du ja leicht durchtesten (wird wohl vor allem von der Journalgröße abhängen, die du hier aufs Minimum setzen kannst).

----------

## schachti

Hmm, was sind denn "Extent-basierte Dateisysteme"? JFS, XFS, ReiserFS?

----------

## c07

Ja, eigentlich alle neueren.

Rein vom Platzverbrauch wär übrigens ein Dateisystem, das auf read-only designt ist, noch wesentlich besser. Aber die können AFAIK alle nur maximal 4 GB verwalten (mit Komprimierung würdest du aber wohl unter 4 GB kommen).

----------

## flammenflitzer

Ich denke, man sollte auch nicht außer acht lassen, welchen Möglichkeiten zur Datenrettung/-wiederherstellung das Filesystem 

bietet (Auch, wenn man es nur read only mountet). Ich habe fast alles durchprobiert und habe jetzt nur noch ext3 im Gebrauch.

----------

## the-pugnacity

ich schwöre ja inzwischen auf xfs

gründe: gute performance die log dateien kann man auf ne andere platte auslagern bringt noch mehr performance und sicherheit.... und der kewlnessfaktor is auch noch ok  :Cool:   hat schließlich auch nicht jeder

----------

## schachti

Naja, ich will wirklich nur was in eine Containerdatei packen, die dann auf DVD gebrannt wird - da wird es definitiv nie nie wieder einen Schreibzugriff drauf geben.  :Wink: 

Ich habe übrigens gemerkt, daß man ext2 auch recht gut optimieren kann mittels

```

mke2fs -m 0 -O sparse_super -T largefile4 <BLOCKDEVICE>

```

Zum Thema XFS: Hatte ich auch, hat mir mein komplettes System zerstört. Ich hatte gerade viele Sachen gleichzeitig laufen (einen emerge, Kernel kompilieren, einen umfangreicheren Datentransfer zwischen zwei Platten, etc.), als plötzlich das Netzteil durchgeknallt ist. Und da XFS extremst cached, waren einfach so viele Dateien beschädigt, daß an jeder Ecke vom System was kaputt war (Binärdateien, Config-Files, Daten, einfach alles). Auf http://www.gentoo.org/doc/en/handbook/handbook-x86.xml?part=1&chap=4 steht nicht umsonst:

 *Quote:*   

> 
> 
> XFS is a filesystem with metadata journaling which comes with a robust feature-set and is optimized for scalability. We only recommend using this filesystem on Linux systems with high-end SCSI and/or fibre channel storage and an uninterruptible power supply. Because XFS aggressively caches in-transit data in RAM, improperly designed programs (those that don't take proper precautions when writing files to disk and there are quite a few of them) can lose a good deal of data if the system goes down unexpectedly.
> 
> 

 

Ich habe am eigenen Leib erfahren, was damit gemeint ist, und setze XFS nicht mehr ein (ja, es war echt schnell, aber Geschwindigkeit ist nicht alles).

----------

## the-pugnacity

ok das wußte ich nicht naja wird schon schief gehen.... :Very Happy:  notfalls backup raus kramen.... :Very Happy:  aber wo ist es???

und squashfs??? keine ahnung ob ich es richtig geschrieben habe

----------

## NightDragon

Macht mir jetzt keine Angst.

Ich hab hier XFS als Raid 1 am laufen.

Bisher problemlos. Aber so bekommt man ja panik!

----------

## schachti

Ich will niemandem Angst machen - aber man sollte wissen, was man sich mit XFS in's Haus holt. Ich würde keine wichtigen Daten auf einer entsprechend formatierten Partition speichern, wenn ich kein Backup habe (ok, ich würde auf gar keiner Partition wichtige Daten speichern, ohne ein Backup zu haben - aber eben erst recht nicht auf einer mit XFS formatierten Partition). Das liegt halt nicht daran, daß XFS fehlerhaft wäre - das ist einfach prinzipbedingt, XFS nutzt ganz extremes Caching und schreibt die Daten erst so spät wie irgendwie nur möglich auf die Festplatte - aber im Falle eines Stromausfalls, eines Hardwaredefekts oder einer Kernel Panic ist das eben viel zu spät.

----------

## NightDragon

*g* Naja... also das späte Caching müsste man aber umgehen können.-

Und sicher das da das Dateisystem die Schuld ist und nicht der Treiber?

----------

## schachti

Jo, das Dateisystem ist absichtlich so konstruiert. Gerade bei Dateien, die oft bearbeitet werden, ist das ein riesiger Vorteil. Gerade bei temporären Datei bringt das viel - die werden von XFS gar nicht mehr auf Platte geschrieben und anschließend gelöscht, das spielt sich nur im XFS-Cache ab.

Google mal nach technischen Aufsätzen, es gibt da teilweise sehr ausführliche und tiefgehende Beschreibungen von XFS...

----------

## theche

mit sync kann man das schreiben auf die platte erzwingen, meine ich. kannst ja n cronjob machen, der alle 30 sec sync ausführt  :Wink: 

----------

## c07

 *schachti wrote:*   

> Ich habe übrigens gemerkt, daß man ext2 auch recht gut optimieren kann mittels
> 
> ```
> mke2fs -m 0 -O sparse_super -T largefile4 <BLOCKDEVICE>
> ```
> ...

 

Wobei das -m0 für jedes Dateisystem sinnvoll ist, auf dem nicht /var und/oder /tmp liegt. Und das -Osparse_super ist seit Langem Standard. Trotzdem bleiben pro 4 KB Nutzdaten noch mehr als 35 Bit Verwaltung im günstigsten Fall (alle Dateien knapp 4 MB groß).

squashfs kann auch nur 4 GB, was aber eben mit Komprimierung reichen könnte.

 *theche wrote:*   

> kannst ja n cronjob machen, der alle 30 sec sync ausführt 

 

30 Sekunden ist eh der Standard. Kann man außerdem in /proc/sys/fs/xfs/xfssyncd_centisecs ändern, siehe /usr/src/linux/Documentation/filesystems/xfs.txt . Spätestens wenn man das Maximum (2 Stunden) nimmt, ist eine USV wirklich angebracht.

----------

## schachti

 *c07 wrote:*   

> 
> 
> Trotzdem bleiben pro 4 KB Nutzdaten noch mehr als 35 Bit Verwaltung im günstigsten Fall (alle Dateien knapp 4 MB groß).
> 
> 

 

Naja, das ist knapp unter 1% und macht bei 4 GB dann ca. 35 MB aus - ich denke, das ist zwar nicht schön, aber hinnehmbar (zumal bei Dateien zwischen 500 und 700 MB auch immer ein gewisser Verschnitt übrig bleibt, weil nach Murphy eben nie gerade so viele Dateien der richtigen Größe existieren, daß sie sich genau zu einer gewünschten Größe (in meinem Fall 4.7 GiB) summieren.

 *c07 wrote:*   

> 
> 
> squashfs kann auch nur 4 GB, was aber eben mit Komprimierung reichen könnte.
> 
> 

 

Da das ganze auf DVD soll, möchte ich das Speichervolumen natürlich ausschöpfen. Außerdem denke ich, daß squashfs performancemäßig einige Klassen tiefer spielt als ext2 (natürlich prinzipbedingt), und gerade wenn man die Daten mit dm-crypt noch verschlüsseln möchte, sieht es in der Kombination natürlich schlecht aus (Entschlüsselung braucht 'ne Menge Rechenleistung, Dekomprimierung ist auch nicht ohne etc.).

 *c07 wrote:*   

> 
> 
> Spätestens wenn man das Maximum (2 Stunden) nimmt, ist eine USV wirklich angebracht.
> 
> 

 

2 Stunden? Das nenne ich ausgeprägte Risikobereitschaft - vor einer Kernel Panic, einem Hardwarefehler oder der berühmten Putzfrau (Kind|Frau|Katze|Hund|...), die am Freitag Nachmittag gegen den Reset-Knopf kommt, hilft die USV nämlich gar nicht.

----------

## NightDragon

Hm. Also c07 hat wieder mal mein wissen erweitert *g*.

(Ja auch die anderen, aber seine Antworten beruhigen auch  :Wink:  )

Na gut. man kanns ja ändern. was will man mehr  :Wink: 

----------

## Flying_Horse

Hallo NightDragon (und alle anderen möglichen XFS-User)

nachdem ich damals mit ReiserFS von SuSE auf die Schn... gefallen bin hab ich etliche Filesysteme getestet und bin bei XFS hängengeblieben. Seitdem ist eigenlich alles, was ich mit Linux aufsetze (vom Laptop bis zum Webserver) mit XFS und natürlich LVM ausgestattet. In den (drei ?) Jahren, seit ich das mache, hatte ich einen Ausfall wegen kaputten Sektoren auf der Festplatte. Da reagiert XFS ausgesprochen empfindlich drauf. Dank RAID5 war das aber kein Problem. Sonst keinerlei Ausfälle, auch bei Testinstallationen mit eher häufigem Ausschalten ohne ordentlich runterzufahren.

Zurück zum OP: da XFS sehr performant ist und bestens mit grossen Dateien zurechtkommt halte ich es für durchaus geeignet. Das intensive Caching bringt, entsprechenden Speicher vorausgesetzt, Performance und da ja eh readonly gemountet wird, spielt die Anfälligkeit von XFS gegen Stromausfall keine Rolle. Ich würde also XFS auf jeden Fall in die engere Wahl ziehen.

Gruss, Klaus

----------

## NightDragon

Also reiserfs hatte ich auch einmal Probleme.

Und ich habe auch schon öfters ghört das reiserf hi und da mal aufgibt.

Hm. Ich setze es aber weiterhin als Root-System ein. Ich glaube vor 3 Jahren war ReiserFS ziemlich fehlerhaft. Das hat sich aber soweit ich weiß gelegt.

Also normalerweise ist meine aufteilung so:

boot - ext2

root - reiserfs

raid-systeme - xfs

Also alle Systeme haben schon mehrfach den härtetest durch. bis jetzt alles super fein.

Danke jedoch für deinen Erfahrungsbericht *g* das beruhigt.

----------

## l3u

Wozu eigentlich heutzutage noch ne extra boot-Partition anlegen?

----------

## NightDragon

Ich z. Bsp.: machs deswegen, weil ich liebe die Kernel und die Boot-Partion gesondert vom root-Teil habe.

Boot wird als readonly bei mir gemounted und nur zu Updatezwecken der Kernel rw gemountet.

In falle des falles ist damit die Kernel sicher.

----------

## l3u

Hmmm ... mag ja sein, aber was ist denn "Fall der Fälle"? Nen kaputten Kernel kann man doch einfach neu kompilieren! Muß man halt dann über ein Rescue-System machen. Aber ist's net so, daß das eher von früher herrührt, wo Bootloader nicht mehr funktioniert haben, wenn man eine bestimmte Festplattengröße überschritten hat? Und man deshalb eine boot-Partition angelegt hat? Und man das heute eigentlich gar nicht mehr braucht?

----------

## NightDragon

Stimmt.

Dort gabs die Zylindergrenze bei 1024 glaub ich.

Na aber es gibt noch einen Punkt. Wenn z. bsp.: Man ein Dateisystem für root verwendet, das nur von der Kernel, und nicht vom Bootloader angesprochen werden kann.

Dann braucht man auch ne eigene Partition, von der aus die Kernel bootet, mit Modulen integriert, die dann das Root-System bereit stellen.

Z. bsp.: Ein SATA-Laufwerk, das auf einen anderen Controller wie den des Onboards liegt.

----------

## platinumviper

 *NightDragon wrote:*   

> Man ein Dateisystem für root verwendet, das nur von der Kernel, und nicht vom Bootloader angesprochen werden kann.

 

U.a. deshalb verwende ich lilo, das liest direkt die Sektoren, in denen der Kernel liegt. Nach dem Kompilieren des Kernels muss lilo deshalb aufgerufen werden, aber danach wird man bei make install ja ohnehin gefragt. GRUB hab' ich bisher zweimal gebraucht, einmal für Debian GNU/Hurd, das zweite mal für Solaris 7. Inzwischen hat lilo keine Probleme mehr mit Solaris, Hurd (wird nächstes Jahr fertig (TM) :Twisted Evil:  ) werde ich gelegentlich mal wieder testen.

platinumviper

----------

## NightDragon

Hm. Man sollte echt fast ne Umfrage zum Dateisystem machen.

Naja... Ich hab grub einfach Lieber... einfach so. Ohne besonderen Grund.

----------

## DarKRaveR

 *platinumviper wrote:*   

>  *NightDragon wrote:*   Man ein Dateisystem für root verwendet, das nur von der Kernel, und nicht vom Bootloader angesprochen werden kann. 
> 
> U.a. deshalb verwende ich lilo, das liest direkt die Sektoren, in denen der Kernel liegt. Nach dem Kompilieren des Kernels muss lilo deshalb aufgerufen werden, aber danach wird man bei make install ja ohnehin gefragt. GRUB hab' ich bisher zweimal gebraucht, einmal für Debian GNU/Hurd, das zweite mal für Solaris 7. Inzwischen hat lilo keine Probleme mehr mit Solaris, Hurd (wird nächstes Jahr fertig (TM) ) werde ich gelegentlich mal wieder testen.
> 
> platinumviper

 

Das mit den Sektoren tut Grub auch ohne weiteres, das ist weniger das problem, aber spätestens wenn das root FS (bzw. das device auf dem dann auch der kernel liegt) nicht via INT13 ext. ansprechbar ist hat lilo verloren. Spätestens dann kommt man um eine Boot Partition wohl kaum drumherum ....

Richtig schön ist es allerdings, wenn man lilo auf nem device Installieren will und dummerweise die nötigen IOCTLS nicht vom Treiber unterstützt werden, weil es leider ein Treiber vom HErsteller ist ... Da gestaltet sich die Benutzung von LILO mehr als schwierig  :Shocked:  .

Zum eigentlich Thema: Es ist Geschmackssache, such Dir Dein Filesys so aus, daß es zu Deinen Anforderungen passt ...

Ich persönlich benutze xfs, hatte zwar auch schon crashes, aber hergott, ja, wenn die blöcke auf der hdd abrauchen, da kann kein filesystem mehr viel ausrichten ....

Warum XFS?

1. Freezable

2. Dump Tool

3. DMAPI

4. Von Anfang an nativer Support für ACLs/EA/Quota

Contras wurden ja schon genannt.....

----------

## l3u

Okay, wenn man irgend ein abgespacetes FS benutzt, dann seh ich ein, daß man ne extra root-Partition (mit dem guten, alten ext2?) anlegt.

Ich benutz für alles ReiserFS und hatte bisher keinerlei Probleme. Hat einer von euch Erfahrungen mit ext3?

----------

## c07

 *NightDragon wrote:*   

> Man sollte echt fast ne Umfrage zum Dateisystem machen.

 

Auch dafür gibts auf gentoo-stats.org eine Statistik (gezählt wird jedes gemountete Dateisystem, womit Leute mit vielen Partitionen die Statistik stärker beeinflussen).

----------

## slick

Ich schwör auf ext3. Mit Reiser hatte ich mal Probleme.  Ist aber schon eine weile her. Keine Ahnung mehr was das war.

Man sollte ggf. auf Partitionen mit kleineren Files dann die Optionen -i und -b z.b. bei mke2fs mit 1024  benutzen, das spart dann schon was... (bei /usr/portage > 50% statt bei dem ext3-standard)  Ansonsten kann man bei ext3 an sich nichts falsch machen. Kernelunterstützung dafür an und das wars...

----------

## schachti

Ich habe verschiedene Rechner, auch einige Server, unter gentoo laufen, und habe den Eindruck, dass reiserfs schneller ist, gerade im Umgang mit vielen kleinen Dateien (z. B. bei emerge sync).

Die Stabilitaetsprobleme mit reiserfs sollten der Vergangenheit angehoeren, die waren vor 3-5 Jahren mal aktuell, als SuSE reiserfs in einem recht fruehen, unausgereiften Stadium als default genommen hat.

Ich bin ja schon gespannt, wann reiser4 stabil wird und offiziell in den Kernel einfliesst...

----------

## hoschi

 *the-pugnacity wrote:*   

> ich schwöre ja inzwischen auf xfs
> 
> gründe: gute performance die log dateien kann man auf ne andere platte auslagern bringt noch mehr performance und sicherheit.... und der kewlnessfaktor is auch noch ok   hat schließlich auch nicht jeder

 

habe nur xfs im einsatz und bin hochzufrieden - und das auf dem desktop  :Smile: 

nicht jeder hat ein system aus lauter 4kb dateien, oder mit anderen worten, für mich gehts auch mal ohne den bekannten reiser4-hype, nicht das reiser4 schlechte wäre, aber ich habe ja die wahl  :Very Happy: 

ps: dass ein crash üble folgen hat, kann ich bestätigen...war aber nie etwas großes, und dann auch nur wegen einem falsch bios-setting *puhh*

----------

## hoschi

 *c07 wrote:*   

>  *NightDragon wrote:*   Man sollte echt fast ne Umfrage zum Dateisystem machen. 
> 
> Auch dafür gibts auf gentoo-stats.org eine Statistik (gezählt wird jedes gemountete Dateisystem, womit Leute mit vielen Partitionen die Statistik stärker beeinflussen).

 

erstaunlich wie viele leute swap-partitionen immer noch haben,

habe 1024mb ram und hatte früher nochmal als "notfall-reserve" 128mb swap - jetzt komplett ohne, ist sowieso verschwendung, was will ich mit einem gb-ram noch mit meiner lahmen festplattte

----------

## NightDragon

a) hat nicht jeder 1GB ram, b) ist nicht jede Platte lahm und c) brauchen manche Leute mehr wie 1 GB.

Ich hab z. Bsp.: Am notebook hier sogar nur 256MB. Und da alles in der Welt Geld kostet hab ich dazu auch 1 GB Swap.

Man kann eben nicht immer alles super toll haben.

Übrigens.

1 GB RAM, ist bei einem Server nichts mehr. Und bnevor ich riskiere da einige Dienste ans "kill" zu verlieren, hab ich liebr 1 GB über, oder nicht?

----------

## c07

 *hoschi wrote:*   

> erstaunlich wie viele leute swap-partitionen immer noch haben,
> 
> habe 1024mb ram und hatte früher nochmal als "notfall-reserve" 128mb swap - jetzt komplett ohne, ist sowieso verschwendung, was will ich mit einem gb-ram noch mit meiner lahmen festplattte

 

Ich halt es eher für Verschwendung, so viel RAM zu haben, dass man die Notwendigkeit von Swap sicher ausschließen kann (mal abgesehn von swsusp). Insbesondere derzeit, wo RAM relativ teuer und Plattenkapazität sehr billig ist.

----------

## Flying_Horse

Da muss ich meinen Senf doch auch noch dazugeben  :Smile: 

Auf einem Desktop kann ich ja noch verstehen, dass die Systemstabilität nicht ganz so wichtig ist. Auf einem Server halte ich den Swap-Bereich für eine wichtige Sicherungsmassnahme. Natürlich soll im normalen Betrieb garnix swappen. Aber es gibt schon Stituationen, wo ein Prozess mal aus dem Ruder läuft, die Last auf dem Webserver doch höher ist wie vorausberechnet und was an Unwägbarkeiten noch so alles passieren kann. Da halte ich 2 GB Plattenplatz als Lebensversicherung dann doch nicht für verschwendet. Mit einem entsprechenden Monitoring kann man das dann sogar als Warnsystem benutzen und noch reagieren, bevor der Server den Geist aufgibt.

Interessant wäre für mich noch die Frage, welche Nachteile ein Logical Volume als Swapbereich hat. Damit kann man flexibel auf Speicherveränderungen reagieren, ohne eine wertvolle primäre Partition opfern zu müssen. Ich hab jetzt schon etliche Maschinen so aufgesetzt und keine Nachteile bemerkt, vielleicht hat jemand von Euch hier andere Erfahrungen gemacht.

Gruss, Klaus

----------

## c07

Man kann den Swap auch in einer Datei anlegen, wenn man ihn nicht für swsusp nutzen will. Angeblich hat das in aktuellen Kerneln keine gröberen Performanceeinbußen mehr zur Folge, solang die Datei nicht stark fragmentiert ist. Wenn er nicht für die regelmäßige Benutzung, sondern nur für den Notfall gedacht ist, ist es auf jeden Fall eine Überlegung wert. Ebenso kann man eine knapp gehaltene Swappartition durch eine Swapdatei ergänzen.

----------

## abcd

Wie viel Platz für eine swap-Partition ist heutzutage empfehlenswert? Ich habe 512MByte RAM und eine 80GByte grosse Festplatte.

----------

## Anarcho

Kommt drauf an was du machen willst.

Wenn du grosse Bilder bearbeiten willst wirst du wohl eher mehr brauchen. 

Aber ich würde max. 1 GB nehmen, eher 512 MB

----------

## hoschi

 *c07 wrote:*   

>  *hoschi wrote:*   erstaunlich wie viele leute swap-partitionen immer noch haben,
> 
> habe 1024mb ram und hatte früher nochmal als "notfall-reserve" 128mb swap - jetzt komplett ohne, ist sowieso verschwendung, was will ich mit einem gb-ram noch mit meiner lahmen festplattte 
> 
> Ich halt es eher für Verschwendung, so viel RAM zu haben, dass man die Notwendigkeit von Swap sicher ausschließen kann (mal abgesehn von swsusp). Insbesondere derzeit, wo RAM relativ teuer und Plattenkapazität sehr billig ist.

 

wenn ich dir sage dass der ram aber sehr billig für mich war (blöd bin ich nicht) - und ich die steigerung von 512 auf 1024 als äußerst angenehm empfunden habe (luxus mag ich), und hier vom desktop rede (typischer zocker) :Smile:  ?

die einzigen kritischen programme, die wirklich auf fehlende swap-dateien/partitionen reagieren sind microsoft-anwendungen - die spucken total sinnlose "mecker-meldungen" aus, selbst wenn noch 512 mb ram frei sind "hilfe hilfe, keine swap-datei für word...wie tragisch?!"

----------

