stille schijf in OpenBSD

Pagina: 1
Acties:

Acties:
  • 0 Henk 'm!

  • begintmeta
  • Registratie: November 2001
  • Niet online

begintmeta

Moderator General Chat
Topicstarter
Ik heb een klein servertje en in verband met netwerkomstandigheden moet het in de woonkamer staan. Er zit een 8cm-casefan in (temperatuurgestuurd van 500 tot 1700rpm, normaal gesproken 700), een sata-hdd en een ide-flash-module. Als de schijf niet draait is het apparaat zo goed als onhoorbaar. De bedoeling is dus om op een veilige manier de hdd te ontzien in verband met geluid, en het flashgeheugen in verband met zijn maximaal 2000000 nominale rewrites (en in totaal wat stroom te besparen).

Op de server draait (in de toekomst): een vpn-toegang, een database (postgresql), httpd, php5 en openssh. Verder wil ik het servertje eventueel voor periodieke mailverzameling gebruiken (met fetchmail) en voor het nachtelijk uploaden van grote hoeveelheden data (foto's). Vermoedelijk zal slechts enkele keren per dag gebruik worden gemaakt van de webfuncties.

Ik heb daarvoor de volgende indeling in partities gemaakt: (wd0 is de 160GB hdd, wd1 is 4gb flash, 1GB ram is beschikbaar. atactl wordt gebruikt om de standbytijd op 15 minuten te zetten):

/dev/wd1a on / type ffs (local, noatime)
/dev/wd1f on /usr type ffs (local, noatime, nodev)
/dev/wd0d on /tmp type ffs (local, nodev, nosuid)
/dev/wd0e on /var type ffs (local, nodev, nosuid)
/dev/wd0g on /home type ffs (local, nodev, nosuid)
/dev/wd0i on /usr/sourcebuild type ffs (local, nodev, nosuid)
/dev/wd0j on /.persistent type ffs (local)
mfs on /dev type mfs (asynchronous, local, noexec, nosuid, size=4096 512-blocks)
mfs on /var/log type mfs (asynchronous, local, nodev, nosuid, size=200000 512-blocks)
mfs on /var/db type mfs (asynchronous, local, nodev, nosuid, size=200000 512-blocks)
mfs on /var/cron type mfs (asynchronous, local, nodev, nosuid, size=100000 512-blocks)
mfs on /var/run type mfs (asynchronous, local, nodev, nosuid, size=100000 512-blocks)
(ik ga vermoedelijk/zeker nog wat sleutelen aan de mountopties en afmetingen van de memoryfilesystems, tips zijn welkom)

/etc/resolv.conf{.save} heb ik gesymlinked naar bestanden op /.persistent, /usr/src, /usr/ports en /usr/xenocara zijn gesymlinked naar directories in /usr/sourcebuild. De directories om de mfs te vullen zijn ook op /.persistent aangemaakt. /var/db/pkg in het betreffende mfs is weer gesymlinked naar een locatie op de hdd.

Daarmee heb ik voor zover ik in mijn hoofd heb de meeste erg frequent wijzigende bestanden naar memorydisks verplaatst, en veel relatief vaak veranderende bestanden naar locaties op de hdd. Alleen eventuele databases en websites(+logs) zitten nog op de hdd, dat betekent dan opstarten van de schijf zodra men gebruik maakt van de webpagina's. Zeker de database en mail wil ik niet op memorydisks hebben...

Om bij reboots de logbestanden en dergelijke te bewaren wil ik gebruik maken van rsync om de 'basisdirectories' vanuit de mfs te updaten. Ook zal ik dagelijks een rsync laten uitvoeren door /etc/daily.local

Misschien dat dit topic de een of andere GoTer op (goede/betere) ideeen brengt (is makkelijk ook op andere OS toepasbaar natuurlijk).

Ik hoop ook met name dat iemand nog punten van verbetering aan kan reiken, die zullen er ongetwijfeld zijn. (zeker tav de webfuncties)

Acties:
  • 0 Henk 'm!

  • psyBSD
  • Registratie: April 2004
  • Laatst online: 02-01-2021

psyBSD

Hates 0x00 bytes

Ik zou /tmp ook voorzien van een een memory filesystem. Deze map wordt immers gebruikt voor alle tijdelijke rommel. /var/log is iets wat verstandig is om op je hdd te zetten. Wanneer er dingen fout gaan kun je immers hier achterhalen wat er gebeurd is. Je wilt niet dat je logs kwijt zijn nadat je systeem gecrashed is ;)

my 2ct.

| Olympus OM-D EM10 mk2 | m.Zuiko 14-42mm f/3.5-5.6EZ | m.Zuiko 40-150mm f/4-5.6 R | m.Zuiko 60mm f/2.8 | 2x Godox v860 | Godox X1 |


Acties:
  • 0 Henk 'm!

  • begintmeta
  • Registratie: November 2001
  • Niet online

begintmeta

Moderator General Chat
Topicstarter
Klopt mbt /var/log, maar ik heb er bewust voor gekozen dat op een mfs te zetten ivm gebruik van de hdd (en daarmee gepaard gaand 'geraas'). In principe crasht het systeem niet ;)

/tmp kan ik inderdaad wel op een mfs zetten, maar zoveel verandert daar doorgaans niet in mijn geval (afaik iig), en dan is veel potentiele opslagruimte eventueel wel fijn.

Ik heb wel gemerkt dat een cronjob (*/30 * * * * /usr/sbin/sendmail -L sm-msp-queue -Ac -q) er in comb inatie met mijn atactl opdracht voor zorgt dat de hdd opspint, na een kwartier downspint, dan na een kwartier weer opspint etc.. daar dus nog maar even verandering in brengen...

ik zit ook nog met veranderingen in de metadata, bijvoorbeeld de modification date van /etc/resolv.conf

(overigens staan /usr/obj en /usr/xobj ook op de hdd)

[ Voor 10% gewijzigd door begintmeta op 28-03-2008 08:46 ]


Acties:
  • 0 Henk 'm!

  • begintmeta
  • Registratie: November 2001
  • Niet online

begintmeta

Moderator General Chat
Topicstarter
Voor de volledigheid nog mijn toevoegingen:

# # Save /var/ ... directories
printf "Copying /var/{cron,db,log} to HDD ..."
/usr/local/bin/rsync -az --delete /var/log/ /.persistent/varlog
/usr/local/bin/rsync -az --delete /var/db/ /.persistent/vardb
/usr/local/bin/rsync -az --delete /var/cron/ /.persistent/varcron
echo " done."

heb ik toegevoegd aan /etc/daily.local en aan /etc/rc.shutdown

aan de crontab heb ik periodieke SMART-checks toegevoegd:
# check SMART drive status
35 1 * * * /sbin/atactl /dev/wd0c smartstatus >> /dev/null 2>&1
# do short SMART drive check
40 1 * * * /sbin/atactl /dev/wd0c smartoffline shortoffline >> /dev/null 2>&1
# do extended SMART drive check
45 1 5,15,25 * * /sbin/atactl /dev/wd0c smartoffline extenoffline >> /dev/null 2>&1


en ik heb de frequentie van de sendmail mqueue runner aangepast:
# sendmail clientmqueue runner
5 */8 * * * /usr/sbin/sendmail -L sm-msp-queue -Ac -q


ook heb ik stanbytijden opgesteld via /etc/rc.local
echo -n 'enable idle and standby functionality for the HDD'
/sbin/atactl /dev/wd0c setidle 60
/sbin/atactl /dev/wd0c setstandby 960


Helaas gaat de HDD vanzelf even een secondje standby bij een boot (ivm het commando atactl wd0 setstandby), is daar iets aan te doen?

[ Voor 0% gewijzigd door begintmeta op 29-03-2008 10:31 . Reden: enkele crontijden aangepast ivm fouten en timeouts bij atactl ]


Acties:
  • 0 Henk 'm!

  • begintmeta
  • Registratie: November 2001
  • Niet online

begintmeta

Moderator General Chat
Topicstarter
hmm, de symlinks /etc/resolve.conf worden vanzelf vervangen door bestanden... terwijl dat afaik niet zou moeten gebeuren door het rc scipt. Dus toch wat onnodige schrijfacties op de flashschijf... maar qua frequentie (denk ik) te verwarlozen.

Verder vraag ik me af of grub (gebruik ik om in 'noodgevallen' debian te kunnen booten op het servertje) elke keer zijn menukeuzevoorkeur opslaat tbv volgende boot, ik gebruik default=saved (oid)

hoe vaak is zo'n sendmail -L sm-msp-queue -Ac -q eigenlijk nodig?