via http://www.shkodenko.com/get-list-of-linux-users-with-shell-access/
# cat /etc/passwd |egrep "/bin/.*sh" |cut -f1 -d':' |sort
via http://stackoverflow.com/questions/134906/how-do-i-list-all-cron-jobs-for-all-users
for user in $(cut -f1 -d: /etc/passwd); do crontab -u $user -l; done
for user in $(cut -f1 -d: /etc/passwd); do echo $user; crontab -u $user -l; done </code>
Бонус - посмореть crontab пользователя, переключиться на редактор nano, отредактировать crontab
# crontab -u username -l # export EDITOR=nano Затем отредактируем задачи cron, которые запускаются под пользователем "userLogin": # crontab -u username -e
Утилита gpasswd
$ sudo gpasswd -d dx nginx Removing user dx from group nginx $ id dx uid=1000(dx) gid=1000(dx) groups=1000(dx)
Удалить все secondary группы юзера и оставить primary
$ sudo usermod -G "" user_name
Смотрим доступные в системе шеллы
# cat /etc/shells /bin/sh /bin/bash /usr/bin/sh /usr/bin/bash
Или так
chsh -l
В CentOS 7 можно поменять через chsh
# chsh -s /bin/bash dx
В CentOS 8 можно поменять через usermod
usermod --shell /bin/bash dx
Проверяем
# cat /etc/passwd | grep dx dx:x:1000:1000:dx:/home/dx:/bin/bash
и
# echo $SHELL /bin/bash
# usermod -s /sbin/nologin dx # usermod -s /usr/sbin/nologin dx # usermod -s /bin/false dx