Toon posts:

Filesystems

Pagina: 1
Acties:
  • 175 views sinds 30-01-2008
  • Reageer

Verwijderd

Topicstarter
Ik ben een Linux-beginner (maar dat had de vaste aanhang van het NWOS-forum waarschijnlijk al door). Hoewel de meeste problemen opgelost zijn door een search met Google of op de verschillende Ubuntu fora, viel mij bij de installatie één ding op:
De overvloed aan keuze in filesystems bij de installatie.

Als jarenlange MS Windows gebruiker ben ik natuurlijk gewend te gebruiken wat mij door Microsoft wordt aangeleverd, zonder er bij na te denken: eerst FAT16/32, nu NTFS. Ik wist (tot nu toe) niet eens dat er zoveel FS bestonden.

Helaas, helaas, Linux gaan gebruiken betekent, i.t.t. Windows, dat ik keuzes moet gaan maken. En wel tussen XFS, JFS, ReiserFS, ext3, etc.
Als ik hier op google zijn er genoeg hits die betrekking hebben op de vraag welke van deze FS-en het beste zijn, maar tot een eenduidig antwoord lijken al deze discussie niet te leiden.

Toch zijn er naast de discussies waarin veel subjectieve argumenten worden gebruikt een aantal objectieve benchmarks, waarin toch een redelijk sluitende eindconclusie wordt bereikt.

Bijvoorbeeld deze benchmark die stelt dat XFS is voor de gemiddelde huis-tuin-en-keuken-gebruiker de beste keuze is. Probleem is echter dat ik hier niets terugzie over de veiligheid van het bestandssysteem en de compabiliteit met bepaalde zaken (welke zaken dat dan ook mogen zijn???).

Ik denk dat voor de gemiddelde h-t-en-k gebruiker een aantal zaken belangrijk zijn (nogmaals: ik heb geen verstand van FS-en, dus deze lijst is waarschijnlijk onjuist en incompleet :+ ):
- Dataverlies bij stroomuitval zijn onacceptabel (of i.i.g. een relatief hoog risico daarvan)
- Er moet zo min mogelijk opslag verloren gaan aan de indeling van het FS
- Het moet zo snel mogelijk zijn...
- ...met zo min mogelijk CPU verbruik

Paar vraagjes:
- Hoe verhouden deze alternatieve FS-en zich tot de MS standaard NTFS?
- Maakt het nou echt veel uit voor een h-t-en-k gebruiker of merk ik er niets van?
- Wat is nu het voordeel van een 'goed ondersteund/compatible' FS?
- Welke Linux-partities hebben baat bij welke FS-indeling. Heeft het zin om bijvoorbeeld de /boot tot een ext2 te maken en de rest tot ext3 (sneller opstarten)?

Waarschijnlijk leid dit topic niet tot een antwoord en ik zal ook niet actief bijdragen, omdat ik er geen verstand van heb, maar het is altijd leerzaam om de mening te horen van mensen die er wel (denken) verstand van (te) hebben :)

[ Voor 3% gewijzigd door Verwijderd op 23-08-2007 14:05 ]


  • killercow
  • Registratie: Maart 2000
  • Laatst online: 30-01 09:45

killercow

eth0

Ik zou zeggen, hou het voor nu gewoon bij de default, etx3 dus, voor een beginnende gebruiker is er geen verschil.

ext3 is gewoon een goed filesystem, net als ntfs z'n werk prima doet op windows. taak specifieke keuze's kunnen misschien leiden tot het gebruik van andere fs'en, maar daar ben jij nog niet aan toe denk ik zo.

Ik zou for now je tijd gewoon spenderen aan dingen die een laagje hoger, een laagje dichter bij de de user zitten, zoals de keuze voor kde of gnome, of xfce.

openkat.nl al gezien?


  • Borromini
  • Registratie: Januari 2003
  • Niet online

Borromini

Mislukt misantroop

De open deur die iemand natuurlijk moest intrappen: NTFS doet geen journaling, en heeft, net als heel wat andere native Windows-bestandssystemen, defragmentatie nodig. Op Linux heeft degrafmentatie veel minder invloed.

Voor de rest: met stom.

[ Voor 5% gewijzigd door Borromini op 23-08-2007 13:02 ]

Got Leenucks? | Debian Bookworm x86_64 / ARM | OpenWrt: Empower your router | Blogje


  • sanfranjake
  • Registratie: April 2003
  • Niet online

sanfranjake

Computers can do that?

(overleden)
Borromini schreef op donderdag 23 augustus 2007 @ 13:02:
De open deur die iemand natuurlijk moest intrappen: NTFS doet geen journaling, en heeft, net als heel wat andere native Windows-bestandssystemen, defragmentatie nodig. Op Linux heeft degrafmentatie veel minder invloed.

Voor de rest: met stom.
Eh NTFS doet juist wel aan journaling, redelijk belangrijk ook voor functies als shadow copies.
Ook is fragmentatie iets waar de meningen erg over verschillen. Op een array met hele snelle disken heeft het imo echt weinig zin om te gaan defragmenteren.

Mijn spoorwegfotografie
Somda - Voor en door treinenspotters


  • Miki
  • Registratie: November 2001
  • Laatst online: 12:02
Borromini schreef op donderdag 23 augustus 2007 @ 13:02:
De open deur die iemand natuurlijk moest intrappen: NTFS doet geen journaling, en heeft, net als heel wat andere native Windows-bestandssystemen, defragmentatie nodig. Op Linux heeft degrafmentatie veel minder invloed.

Voor de rest: met stom.
Pas op, XFS defragmenteerd bij desktop gebruik als de ziekte en onderhoud is wel degelijk nodig.

  • blaataaps
  • Registratie: Juli 2001
  • Niet online
sanfranjake schreef op donderdag 23 augustus 2007 @ 13:14:
[...]

Eh NTFS doet juist wel aan journaling, redelijk belangrijk ook voor functies als shadow copies.
Hoe is journaling precies noodzakelijk voor snapshots? :)

  • killercow
  • Registratie: Maart 2000
  • Laatst online: 30-01 09:45

killercow

eth0

Kijk, bovenstaande posts zijn nou precies de reden waarom je als beginnen je lekker bij de default instelling van je distro moet blijven, je kunt jezelf in dit soort discussie en de bijbehorende technische details helemaal kwijtraken.

Kies dus eerst dingen die je direct raken, welke desktop, welke media player, wil ik nog mp3? of wil ik ogg of flac?

openkat.nl al gezien?


  • phobosdeimos
  • Registratie: Augustus 2007
  • Laatst online: 31-01 11:45
Miki schreef op donderdag 23 augustus 2007 @ 13:15:
[...]

Pas op, XFS defragmenteerd bij desktop gebruik als de ziekte en onderhoud is wel degelijk nodig.
Correctie: XFS heeft last van fragmentatie, waardoor defragmentatie noodzakelijk is.
En ext3 (liefst met data=journal) is het meest betrouwbare FS.
Talloze boodschappen in mailing lists en fora over gecrashte Reiser3/Reiser4/XFS partities.
Maar bitter weinig problemen met ext3, zelfs ondanks dat ext3 veel meer gebruikt wordt.

  • deadinspace
  • Registratie: Juni 2001
  • Laatst online: 31-01 12:10

deadinspace

The what goes where now?

Ik zie relatief vaak mensen problemen hebben met XFS en ReiserFS, bijvoorbeeld hier op GoT en bij kennissen irl. Dit lijkt tegenwoordig wel minder vaak voor te komen dan vroeger.

Ikzelf gebruik eigenlijk altijd ext3 (en vroeger ext2), en daar heb ik tot nu toe geen spijt van gekregen. Ik heb één keer XFS geprobeerd, maar na een crash waren verschillende files (zoals /etc/fstab) leeg, wat toch minder handig was.

Vanwege deze waarnemingen, mijn eigen ervaringen, en het feit dat ext3 verreweg het meest gebruikt (en dus het meest getest) is, raad ik eigenlijk altijd ext3 aan. Better safe than sorry zegmaar.

Bovenstaand is trouwens niet onderbouwd door enige getallen, en alleen al hier op GoT zullen er tientallen mensen zijn die je kunnen vertellen dat ze nooit problemen hebben gehad met XFS of ReiserFS. Mijn mening is er één van de zovelen, doe ermee wat je wil.



Ook interessant is trouwens de link die Verwijderd in "[Linux] Positie SWAP partitie" postte: Theodore Ts'o on ReiserFS
> Simple as pie. Set up a machine running XFS. Start some disk activity
> (maybe a test mail server). When the FS is getting solid activity, yank
> the power out. When I saw this happen I had to mkfs and start over.

What probably hit you here is caused by the very simple fact that PC-class hardware is crap.

You see, when you yank the power cord out of the wall, not all parts of the computer stop functioning at the same time. As the voltage starts dropping on the +5 and +12 volt rails, certain parts of the system may last longer than other parts. For example, the DMA controller, hard drive controller, and hard drive unit may continue functioning for several hundred of milliseconds, long after the DIMMs, which are very voltage sensitive, have gone crazy, and are returning total random garbage. If this happens while the filesystem is writing critical sections of the filesystem metadata, well, you get to visit the fun Web pages at http://You.Lose.Hard/ .

I was actually told about this by an XFS engineer, who discovered this about the hardware. Their solution was to add a power-fail interrupt and bigger capacitors in the power supplies in SGI hardware; and, in Irix, when the power-fail interrupt triggers, the first thing the OS does is to run around frantically aborting I/O transfers to the disk. Unfortunately, PC-class hardware doesn't have power-fail interrupts. Remember, PC-class hardware is cr*p.

Why doesn't ext3 get hit by this? Well, because ext3 does physical-block journaling. This means that we write the entire physical block to the journal, and only when the updates to the journal are committed do we write the data to the final location on disk. So, if you yank out the power cord, and inode tables get trashed, they will get restored when the journal gets replayed.

XFS and ReiserFS do what is called logical journaling. This means that if you modify the mod time of an inode, instead of writing the entire inode table block to the journal, they just write a note in the journal stating that "inode X now has a mod time of Y". This takes much less space, so you can pack many more journal updates into a single disk block. For filesystem benchmarks that try to saturate the filesystem's write bandwidth, and/or that also have very high levels of metadata updates, XFS and ReiserFS will tend to do much better than does ext3. Fortunately, many real-world workloads don't have this characteristic, which is why ext3 tends to perform just fine in practice in many applications, despite what would appear to be much worse benchmarks numbers, at least for some benchmarks.

The problem with logical journaling is that if you do have an unexpected power drop, and the storage system scribbles garbage on the inode table, there's no way to recover. In some cases, the only thing that is left to be done is mkfs and restore from backups. (Backups? You do keep backups, right?)

The practical upshot of this is that if you use XFS or ReiserFS, and you are on crappy PC-class hardware, you ***MUST*** have a UPS, and use a serial/USB cable, so that system can do a graceful shutdown when the UPS's batteries are exhausted.


This issue is completely different from the XFS issue of zeroing all open files on an unclean shutdown, of course. Having a UPS won't save you from that particular XFS misfeature. The reason why it is done is to avoid a potential security problem, where a file could be left with someone else's data. Ext3 solves this problem by delaying the journal commit until the data blocks are written, as opposed to trashing all open files. Again, it's a solution that can impact performance, but at least in my opinion, for a filesystem, performace is Job #2. Making sure you don't lose data is Job #1.

  • Jungian
  • Registratie: Juni 2006
  • Niet online

Jungian

>_<

Performance :

XFS
In een heel korte test (zie stroomuitval) : d:)b

ReiserFS (versie 3.6)
Erg goede performance in een goed gevulde tree (je root-partitie bijvoorbeeld). Langzamer dan XFS bij het werken met grote bestanden (kopiëren, verplaatsen etc.).CPU-gebruik is iets hoger dan bij ext3.

ext3
Met wat simpele tweaks (zie hier bijvoorbeeld) praktisch gelijk aan ReiserFS. Ook minder snel bij het werken met grote bestanden. Standaard wordt er ook belachelijk veel ruimte verprutst bij partitioneren.



Stroomuitval :

XFS
_O- Data loss ++

ReiserFS (versie 3.6)
ReiserFS loopt z'n journal even langs als de stroom eraf is geweest en hopseflops je kunt weer verder werken. Geen minutenlange fscks dus. In alle (real-life) "tests" alhier geen data loss.

ext3
Geen data loss. De keuze als je fetish kijken naar minutenlange fscks is :+

[ Voor 3% gewijzigd door Jungian op 23-08-2007 16:30 ]

0.0


  • Borromini
  • Registratie: Januari 2003
  • Niet online

Borromini

Mislukt misantroop

sanfranjake schreef op donderdag 23 augustus 2007 @ 13:14:
[...]

Eh NTFS doet juist wel aan journaling, redelijk belangrijk ook voor functies als shadow copies.
Ok dat neem ik terug dan. Ik heb al andere meningen over NTFS gezien (als in, mensen die het bij non-journaled klasseren), maar effe googlen lijkt het tegendeel te zeggen...

Vreemd dat ik er nooit zelf over gestruikeld ben

Got Leenucks? | Debian Bookworm x86_64 / ARM | OpenWrt: Empower your router | Blogje


Verwijderd

Topicstarter
Er zijn nogal weinig gebruikers van JFS, of is dit sterk vergelijkbaar met XFS?


En hoe verhouden al deze filesystems zich tov NTFS?

  • Miki
  • Registratie: November 2001
  • Laatst online: 12:02
Verwijderd schreef op donderdag 23 augustus 2007 @ 19:31:
Er zijn nogal weinig gebruikers van JFS, of is dit sterk vergelijkbaar met XFS?


En hoe verhouden al deze filesystems zich tov NTFS?
Hoe wil je eigenlijk NTFS met linux filesystems gaan vergelijken?

Ik gebruik trouwens ext3 met wat tweaks. Tip:http://wiki.archlinux.org/index.php/Ext3_Filesystem_Tips

Verwijderd

Ik heb echt al alles gedraaid (ext{2|3}, ReiserFS, XFS, JFS, FFS{1|2} met/zonder soft updates in FreeBSD), en mijn voorkeur gaat uit naar XFS. Ik heb echter nog nooit data corruptie gehad door een crash (hout vasthouden ;)), en dat waarschijnlijk omdat de stroomvoorziening waar ik woon uitstekend is. En zelfs als de kernel crasht (ja ja, brakke drivers kunnen elke niet-zuivere micro kernel onderuit halen) had ik geen problemen.

XFS is gevoelsmatig het snelste, het heeft een online defragmentation tool, het is véél resistenter tegen fragmentatie dan ext{2|3}, het wordt actief ontwikkeld en ondersteund door SGi (dit in tegenstelling tot reiserfs3, waar Hans Reiser, al jaren voordat hij in de gevangenis is beland elke verbetering tegenwerkte ten voordele van reiserfs4) en het heeft geen praktische limieten (ok, voor een desktop ga je niet meer dan 8Tb (ext3) gebruiken, maar toch).

Zelfs voor desktop gebruik is XFS voelbaar sneller dan ext3. Als voorbeeld moet je maar eens tegen wire speed een file van 1Gb naar een ext3 partitie en naar een XFS partitie streamen. Vermits XFS zogenaamde 'delayed' allocation heeft, zal (als er niet al te veel contentie is op de harde schijf) de file grotendeels in één aaneengesloten stuk ('extent') op de harde schijf terecht komen. Als je hetzelfde probeert op een systeem met slechts 512Mb ram, dan zal je ext3 als een gek naar de harde schijf zien schrijven in bursts van 5 seconden, daar waar XFS als het ware in een stroompje elke seconde, gelijkmatig naar de harde schijf schrijft. Het is moeilijk te omschrijven, maar je moet het echt eens in werking gezien hebben om het erover eens te zijn dat een filesystem een grote impact op de responsiveness van een systeem kan hebben. En dan heb ik het nog niet gehad over de fragmentatiegevoeligheid van ext3, en dan vooral als de harde schijf bijna vol is. Dit is een gekend probleem van ext{2|3}. XFS is, door de delayed allocation, veel minder gevoelig voor fragmentatie. En zelfs als er fragmentatie komt (ja, XFS fragmenteert ook wanneer er bijna geen ruimte op de partitie meer is), dan heeft XFS de mogelijkheid om online, zonder reboot, met xfs_fsr te defragmenteren. ext3 heeft jammer genoeg geen defragmentatie tool :'(. De enige mogelijkheid tot defragmentatie is je data optarren, de tar op een andere partitie stockeren, een 'mkfs.ext3 $partitie' te doen en dan gegevens terug untarren. Kijk op een partitie waar P2P downloads op terechtkomen (uiteraard Unix distro's ;)), maar eens met 'filefrag' naar de fragmentatie van een willekeurig bestand. Met ext3 kan dat in de duizenden tot zelfs honderdduizenden (ik heb het zelf meegemaakt) extents per file zijn. Met XFS ? 10, 20 ? Na 'xfs_fsr -v foo.iso' komt dat meestal op 1 extent.

Maar dan komen we terug op het grote nadeel van XFS: delayed allocation. Huh ? :p Het cachen van data (en dan vooral meta-data) in ram heeft het nadeel dat je inconsistente gegevens en files vol met 0'en na een crash/powerloss kan tegenkomen. ext3 heeft het voordeel dat meta-data gejournaled wordt, waardoor je buiten bugs en echte hardware fouten weinig kans hebt op gegevensverlies. Bij XFS is de kans reëel dat je na een unclean shutdown gegevens kwijt bent. Maar soms is dat geen punt. Mijn 'workstation' is eigenlijk een laptop, en ik zie een laptop als een desktop met een geïntegreerde UPS. Zelfs als de stroom eruit gaat kan er nog 3 uur overbrugd worden om ofwel te wachten tot de stroom terugkomt, of een clean shutdown te doen. Vandaar dat ik XFS met een gerust gemoed gebruik. Mocht ik evenwel een 'echte' desktop configureren, dan zou ik alsnog voor ext3 kiezen, juist omdat het zo rigiede is. Voor een server zou ik trouwens ook voor ext3 opteren, omdat het met ext3 mogelijk is in combinatie met LVM om partities on the fly te resizen (momenteel moet wel geunmount worden om te verkleinen, maar niet om te vergroten). Met XFS is het énkel mogelijk om een LVM partitie te vergroten. En met dataservers moet je soms harde schijven kunnen detachen om ze in een andere server bij te hangen. Mogelijk met ext3, niet met XFS.

Dus als je het mij vraagt: XFS is sneller en geavanceerder, ext3 is iets trager (zeker bij ouderdom), maar veel veiliger. De afweging zal je echter zelf moeten maken, waarbij gegevensveiligheid mijns inziens belangrijker is dan die paar procenten extra snelheid. Nu moet gezegd dat het afzetten van de 'atime' mount optie (standaard aan bij de meeste distro's) soms een groter effect kan hebben dan een ander filesystem. Lees onder andere deze thread maar eens. Dus de 'noatime' optie toevoegen in /etc/fstab is een eenvoudige manier om 'gratis' wat performance bij te winnen.

Over JFS heb ik eigenlijk weinig te vertellen. Het deed z'n werk zonder meer, geen onmiddellijk voelbare minputen of pluspunten. Ik meen echter wel ergens gelezen te hebben dat JFS op 'maintenance'-only gezet is, maar ik kan de link naar het artikel evenwel niet meer terugvinden. Was het op lwn, kerneltrap, een blog van een distro ? Ik weet het niet meer zeker. Maar er werd in ieder geval gesteld dat er geen nieuwe features meer zouden bijkomen en dat er enkel nog bugs worden opgelost.

  • phobosdeimos
  • Registratie: Augustus 2007
  • Laatst online: 31-01 11:45
Hawk, geen enkel FS is absoluut sneller dan een ander.
Ze hebben allemaal hun zwakke plekken.
Werk met XFS maar eens met een heleboel kleine bestandjes.
Dan is XFS plots zo traag als str*nt.
En ext3 heeft een klein beetje tweaking nodig, draaien met dir_index en noatime maakt het vergelijkbaar met XFS, maar beter met kleine files.
Mijn antwoord als je me vraagt wat het beste OS is: ext4 (van de toekomst dan toch).
Lekkere benchmarks en details hier:
http://www.bullopensource.org/ext4/
Sowieso primeert data veiligheid over al de rest.
Wat heb je aan een snel FS, als er geen data meer op staat? Juist ja :+

[ Voor 16% gewijzigd door phobosdeimos op 24-08-2007 10:39 ]


  • ph0t0nix
  • Registratie: December 2006
  • Laatst online: 27-01 01:06
Wat voor mij een groot voordeel van ReiserFS t.o.v. ext3 is, is dat je (i.c.m. LVM) een Reiser partitie kunt growen terwijl 'ie gemount is. Dus als ik ruimte tekort kom kan ik de LV direct wat uitbreiden, zonder downtime. (Voor shrinken kun je volgens de LVM howto toch beter unmounten, maar dat komt minder vaak voor).

Verwijderd

deadinspace schreef op donderdag 23 augustus 2007 @ 15:31:
Ik zie relatief vaak mensen problemen hebben met XFS en ReiserFS, bijvoorbeeld hier op GoT en bij kennissen irl.
With stupid here. Ik heb ook een tijdje zo'n gekke ziekte gehad dat ik alle coole vette nieuwe mega-giga-woei-filesystems wilde uitproberen om maar het beste van het beste te hebben. Het boeit niet. Je draait een desktop, geen datacenter, 1% throughputverschil merk je niet, want je desktop doet toch niks 99% van de tijd (zelfs met koetje). Desktops optimaliseren op andere delen, zoals latency (zie ook de huidige scheduler discussie / ongoing work in de linux kernel).
De discussies die je leest en fs comparisons zijn voor servers waar elke laatste procent-punt belangrijk is, dit zijn de datacenters waar je vliegtickets online bestelt of waar luchthavens op draaien, voor database-sites die miljarden keren per dag worden opgeroepen, dat soort dingen.

Ik heb XFS gedaan, maar die was toendertijd niet volledig stabiel in de kernel, ondanks schattige beloftes van de IRIX-proggers. Gevolg was crashende kernels, dataverlies en fs incompat. Hel om mee te werken. Reiser is geen haar anders, tenzij je de oude versies blijft gebruiken (RFS3 vs. RFS4, etc.), maar da's net zoiets als ext2 gebruiken terwijl ext3 er al is. Bovendien zit Hans in de gevangenis, dus daar gebeurt toch niks mee.
Ext3 heeft een bijzonder goede performance, is stabiel, en misschien 1% trager dan XFS, maar echt, dat boeit nauwelijks, het werkt tenminste. Je /boot op ext2 houden heeft geen enkele zin, ext3 is op alle delen (inclusief performance) superieur of gelijk aan ext2, dus gooi gewoon alles op ext3, dat is veruit de beste keuze voor desktops.

  • phobosdeimos
  • Registratie: Augustus 2007
  • Laatst online: 31-01 11:45
Amen.
En straks allemaal lekker naar ext4 ;)
Pagina: 1