X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=accounts.py;h=30654080c41b1ade6352a06793a6737383ec86a8;hb=4c6c7e46c43e7c415caab7007a8fd2899ce21f2e;hp=012c04051a05c67a0c7b93350a3a56c0c6c396ae;hpb=7a75ab39a870a358a2ef2eb90fee4e74d2e1db59;p=nodemanager.git diff --git a/accounts.py b/accounts.py index 012c040..3065408 100644 --- a/accounts.py +++ b/accounts.py @@ -23,6 +23,7 @@ maximum stack size. import Queue import os import pwd +from grp import getgrnam import threading import logger @@ -89,8 +90,11 @@ class Account: if not os.access(dot_ssh, os.F_OK): os.mkdir(dot_ssh) os.chmod(dot_ssh, 0700) tools.write_file(dot_ssh + '/authorized_keys', lambda f: f.write(new_keys)) - logger.verbose('%s: installing ssh keys' % self.name) - os.chown(dot_ssh + '/authorized_keys', pwd.getpwnam(self.name)[2], 504) + logger.log('%s: installing ssh keys' % self.name) + user = pwd.getpwnam(self.name)[2] + group = getgrnam("slices")[2] + os.chown(dot_ssh, user, group) + os.chown(dot_ssh + '/authorized_keys', user, group) def start(self, delay=0): pass def stop(self): pass