File: //lib/python2.7/site-packages/lap/fsck.py
#!/usr/bin/python
import sys
import os
import commands
import datetime
import time
import sys
import yaml
from time import gmtime, strftime
def __run__(params):
try:
f = open('/etc/mtab')
t1 = time.mktime(time.localtime())
days = int(params.get('days',60))
for line in f.readlines():
if 'ext3' in line.strip() or 'ext4' in line.strip() or 'xfs' in line.strip():
interface = line.split()[0].strip()
output,lastchecked = commands.getstatusoutput("""sudo dumpe2fs -h %s 2>/dev/null | grep 'Last checked' | awk '{print $5" "$4" "$7" "$6}'""" % interface)
t2 = time.mktime(time.strptime(lastchecked,"%d %b %Y %H:%M:%S"))
checkline = str(datetime.timedelta(seconds=t1-t2))
if int(checkline.split()[0]) > days:
return [2, 'CRITICAL: Efetuar FSCK no %s . Last Checked: %s %s %s' % (interface,lastchecked,checkline.split()[0],days)]
return [0, 'OK: Fsck ok %s %s' % (checkline.split()[0],days)]
f.close()
except Exception, e:
return [0, 'OK: Fsck ok']