Categories
Internet, Unix en security

Ext3 is nog geen ZFS

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.

Categories
Internet, Unix en security

GnuPG onderhouden

PGP is een mooie vinding en hoewel het web of trust zwakheden kan hebben doordat mensen onzorgvuldig omgaan met hoe ze sleutels moeten ondertekenen. Maar helaas of gelukkig blijven er wijzigingen aan die web of trust plaats vinden doordat sleutels verlopen of relaties met andere sleutels zijn opgezet.

Om de lokale keystore te verversen en opnieuw het web of trust te berekenen is het verstandig om dit een per maand of per paar weken te doen. Dit afhankelijk van de wijzigingen die je verwacht en hoe actief je bent. Het volgende commando in cron doet alles wat nodig is om de keystore elke zondagavond bij te werken.


37 20 * * * Sun ( gpg -q --refresh-keys && gpg -q --check-trustdb --batch --yes ) >/dev/null 2>&1

Wel een punt van aandacht. De tijd 20:37 is een gekozen random tijd, maar kies een eigen tijdstip zodat de keyservers niet elke zondagavond op hetzelfde tijdstip worden bestookt.

Categories
Internet, Unix en security

Commando mkdir

Hoewel veel commando’s simpel lijken en door iedereen ze volledig lijkt te begrijpen is het lezen van een manpage soms best handig. Je komt veel nieuwe dingen te waar je nooit aan gedacht had en zo ook met het command mkdir. Een commando vaak gebruikt bij het inrichten en soms ook vaak met het command chmod om permissies goed te zetten. Dit terwijl dit ook met de m-flag kan welke de permissies aanpast van de uiteindelijke directory.

mkdir -m 0700 /path/to/example

Het kan ook gebeuren dat je bijvoorbeeld /path/to/example wilt aanmaken, maar /path/to bestaat soms nog niet. Nu kan je met condities gaan werken om dat af te vangen en dit kan soms best lastig zijn als de directorystructuur vele niveau’s heeft. Een ander probleem is dat het gebruik van variabele paden in scripts een probleem kan vormen. Voor dit probleem is er de p-flag welke ontbrekende bovenliggende directories automatisch voor je aanmaakt.

mkdir -p /path/to/example

Helaas is er nog geen optie om de eigenaar en de groep ook direct te zetten. Als iemand zin heeft om een patch te schrijven, graag en bij deze. De vraag blijft dan wel wie hem allemaal zal overnemen in andere implementaties van mkdir.

Categories
Internet, Unix en security

ELF versie informatie

Soms komen er vragen binnen waarom een applicatie raar doet bij de installatie en soms is er ook niet direct een antwoord voor, maar gelukkig zijn er wel tools voor zoals ldd om de afhankelijkheden te zien voor een executable of een shared object. En hoewel ldd ook toont of afhankelijkheden kunnen worden resolved geeft het geen bruikbare informatie over versie-afhankelijkheid.

Om beter inzicht te krijgen bestaat pvs welke informatie kan opleveren over aangeboden versies en afhankelijke versies. Hoewel dit laatste niet direct bruikbaar lijkt, kan het je wel helpen als je executables of shared objects tussen verschillende versies van Solaris moet kopiëren. Het geeft je bijvoorbeeld informatie of je libc voldoet om de executable te draaien, want dat vergeten veel packagers nog weleens te vermelden in de dependencies van een package.