Soms heb je van die dagen dat er ineens een bericht krijgt dat een dienst geen data meer verwerkt. Bij controle lijkt er weinig te vinden te zijn, want er is oa nog voldoende vrije ruimte op het filesysteem is. De applicatie klaagt toch dat hij niet kan schrijven.
Bij verdere controle komt er toch een oude instinker naar boven. Er blijkt een filesysteem geen vrije inodes meer te hebben en er kan dus ook geen expire van data meer worden gedaan door de applicatie. De enige twee opties zijn dus het vrij maken van enkele inodes of extra inodes beschikbaar stellen. Helaas is de eerste optie niet echt een optie als de data belangrijk is of index afhankelijk. De tweede optie van het logische volume en daarna het filesystem vergroten.
Bij het lezen van de manpage voor ext2/3/4 blijft dat je niet kan opgeven of je inodes kan reserveren voor de root-gebruiker zoals bij het aantal beschikbaar vrije blokken. Dit doet me ook verwonderen hoe dit in ZFS is opgelost, maar het wordt wel duidelijk dat filesystemen gebaseerd op inodes hun beste tijd hebben gehad.
Helaas is het ext3-filesysteem niet gelijkwaardig als ZFS waarbij fsck niet meer nodig is door oa de copy-on-write strategie. Gelukkig heeft ext3 wel een journal welke kan worden gebruikt om een filesysteem te herstellen als het filesysteem niet netjes wordt afgesloten zoals bij een stroomstoring bijvoorbeeld. Maar helaas is het nog wel nodig om soms een volledige controle uit te voeren om de integriteit te controleren.
Hier komt ook een probleem voor veel gebruikers aangezien de grote van filesystemen groeit en filesystemen van een paar honderd gigabyte tot een terabyte of soms zelfs meer zijn niet meer ongewoon. Je bent dan gewoon veel tijd kwijt aan het wachten totdat een controle is voltooid. Gelukkig is ext3 nu wel lang genoeg op de markt om aan te nemen dat het wel snor zit en hardwarefouten kan ext3 toch niet detecteren en oplossen, iets wat ZFS wel kan trouwens.
Het volgende commande zet dan ook een tijdslimiet van 12 maanden op het filesysteem en de controle zal dan ook maar eens per 12 maanden worden uitgevoerd. Dit ongeacht het aantal keren dat het filesysteem is gebruikt.
$ sudo tune2fs -c 0 -i 12m /dev/mapper/nemo01-home
Het bovenstaande natuurlijk alleen uitvoeren als je weet wat je doet en over goede back-ups beschikt.
Recente reacties