mainusers only in newservers
This commit is contained in:
parent
27463807f5
commit
d6c9620b54
|
@ -592,37 +592,38 @@ class UNIXUserControllerNewServers(ServiceController):
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
for member in settings.SYSTEMUSERS_DEFAULT_GROUP_MEMBERS:
|
for member in settings.SYSTEMUSERS_DEFAULT_GROUP_MEMBERS:
|
||||||
context['member'] = member
|
context['member'] = member
|
||||||
self.append('usermod -a -G %(user)s %(member)s || exit_code=$?' % context)
|
self.append('usermod -a -G %(user)s %(member)s || exit_code=$?' % context)
|
||||||
if not user.is_main:
|
|
||||||
self.append('usermod -a -G %(user)s %(mainuser)s || exit_code=$?' % context)
|
|
||||||
|
|
||||||
def delete(self, user):
|
def delete(self, user):
|
||||||
context = self.get_context(user)
|
context = self.get_context(user)
|
||||||
if not context['user']:
|
if not context['user']:
|
||||||
return
|
return
|
||||||
self.append(textwrap.dedent("""
|
if user.is_main:
|
||||||
if ! id %(user)s &> /dev/null; then
|
self.append(textwrap.dedent("""\
|
||||||
echo "user %(user)s not exitst" >&2;
|
|
||||||
|
|
||||||
else
|
|
||||||
# Delete %(user)s user
|
# Delete %(user)s user
|
||||||
if ps -u %(user)s &> /dev/null; then
|
nohup bash -c 'sleep 2 && killall -u %(user)s -s KILL' &> /dev/null &
|
||||||
pkill -u %(user)s || true ; sleep 4;
|
killall -u %(user)s || true
|
||||||
pkill -9 -u %(user)s || true ; sleep 1;
|
|
||||||
fi
|
|
||||||
|
|
||||||
uid=$(id -u %(user)s)
|
|
||||||
userdel %(user)s || exit_code=$?
|
userdel %(user)s || exit_code=$?
|
||||||
groupdel %(group)s || exit_code=$?
|
groupdel %(group)s || exit_code=$?
|
||||||
|
""") % context
|
||||||
|
)
|
||||||
|
if context['deleted_home']:
|
||||||
|
self.append(textwrap.dedent("""\
|
||||||
|
# Move home into SYSTEMUSERS_MOVE_ON_DELETE_PATH, nesting if exists.
|
||||||
|
deleted_home="%(deleted_home)s"
|
||||||
|
while [[ -e "$deleted_home" ]]; do
|
||||||
|
deleted_home="${deleted_home}/$(basename ${deleted_home})"
|
||||||
|
done
|
||||||
|
mv '%(base_home)s' "$deleted_home" || exit_code=$?
|
||||||
|
""") % context
|
||||||
|
)
|
||||||
|
else:
|
||||||
|
self.append("rm -fr -- '%(base_home)s'" % context)
|
||||||
|
|
||||||
mv %(home)s %(home)s.delete
|
# TODO: comprovar funciones que no se suelen utilizar
|
||||||
rm /chroots/$uid
|
|
||||||
fi
|
|
||||||
""") % context
|
|
||||||
)
|
|
||||||
|
|
||||||
def grant_permissions(self, user, context):
|
def grant_permissions(self, user, context):
|
||||||
context['perms'] = user.set_perm_perms
|
context['perms'] = user.set_perm_perms
|
||||||
# Capital X adds execution permissions for directories, not files
|
# Capital X adds execution permissions for directories, not files
|
||||||
|
@ -734,12 +735,12 @@ class UNIXUserControllerNewServers(ServiceController):
|
||||||
)
|
)
|
||||||
|
|
||||||
def get_groups(self, user):
|
def get_groups(self, user):
|
||||||
|
groups = []
|
||||||
if user.is_main:
|
if user.is_main:
|
||||||
groups = list(user.account.systemusers.exclude(username=user.username).values_list('username', flat=True))
|
groups = list(user.account.systemusers.exclude(username=user.username).values_list('username', flat=True))
|
||||||
groups.append("main-systemusers")
|
groups.append("main-systemusers")
|
||||||
return groups
|
# groups = list(user.groups.values_list('username', flat=True))
|
||||||
groups = list(user.groups.values_list('username', flat=True))
|
# groups.append("webapp-systemusers")
|
||||||
groups.append("webapp-systemusers")
|
|
||||||
return groups
|
return groups
|
||||||
|
|
||||||
def get_context(self, user):
|
def get_context(self, user):
|
||||||
|
|
Loading…
Reference in New Issue