[Server-devel] xs-dev disk full?

Martin Langhoff martin.langhoff at gmail.com
Thu Feb 26 21:24:13 EST 2009


Right, so I've

 - moved some silly logs (do we need them?) from
/srv/library/mirror/log to /var/tmp/mirror-logs
 - compressed the logs of the joyride builds

this has freed up some 345MB and I can work with that. A little bit at least.

Now, when I say

> better do some decent programming to handle the on-disk footprint better

I mean that it's crazy to have these builders cranking out 1.6GB of
stuff every few hs and not have a garbage collector. So I wrote one.
It's not set to run, it's not even +x, I'm not part of the VIG or
anything, so I throw it in as a sample implementation. Feel free to
use it but responsibility is strictly yours

cat /root/samplecleanup.sh
#!/bin/bash -x
# suggested cleanup - martin at laptop.org
#
# each joyride build takes 1.6 GB
# let's say we can store 200 of them

MAXBUILDS=200
BUILDSONDISK=`find /srv/builds/xo-1/streams/joyride  -maxdepth 1
-mindepth 1 -type d -name 'build*' | wc -l`

EXCESS=$(($BUILDSONDISK-$MAXBUILDS))

if ( $EXCESS -lt 0 ); then
    # no fat
    exit 0
fi

for B in `find /srv/builds/xo-1/streams/joyride  -maxdepth 1 -mindepth
1 -type d -name 'build*' | sort | head -n $EXCESS`; do
    echo "Going to rm $B, mbwaha ha ha ha"
    ## rm -fr "$B"
done

You'll want to account for the other streams as well. It'd be trivial
to set a quota for each stream.

cheers,



m
-- 
 martin.langhoff at gmail.com
 martin at laptop.org -- School Server Architect
 - ask interesting questions
 - don't get distracted with shiny stuff  - working code first
 - http://wiki.laptop.org/go/User:Martinlanghoff


More information about the Server-devel mailing list