#!/usr/bin/env python import struct import xattr import sys import time def get_stime(master_uuid, slave_uuid, brick): stime_key = "trusted.glusterfs.%s.%s.stime" % (master_uuid, slave_uuid) try: return struct.unpack('!II', xattr.get(brick, stime_key)) except (OSError, IOError): return "N/A" def set_stime(master_uuid, slave_uuid, brick): stime_key = "trusted.glusterfs.%s.%s.stime" % (master_uuid, slave_uuid) t = time.time() sec = int(t) nsec = int((t - sec) * 1000000) xattr.set(brick, stime_key, struct.pack("!II", sec, nsec)) if __name__ == "__main__": """ Usage: sudo python set_stime.py f8c6276f-7ab5-4098-b41d-c82909940799 \ 563681d7-a8fd-4cea-bf97-eca74203a0fe /exports/brick1 """ print "BEFORE: %s" % repr(get_stime(sys.argv[1], sys.argv[2], sys.argv[3])) set_stime(sys.argv[1], sys.argv[2], sys.argv[3]) print "AFTER: %s" % repr(get_stime(sys.argv[1], sys.argv[2], sys.argv[3]))