我想临时修改/etc/passwd和/或/etc/group来“删除”一个用户/组而不删除该行。
有没有办法做到这一点?
http://forums11.itrc.hp.com/service/forums/questionanswer.do?threadId=1161913似乎表示可能不支持(但也可能是HPUX特定的)。
暂时locking一个用户的帐户,你可以做passwd -l username ,只需添加一个'!' 到/etc/shadow中的密码哈希的开头,保留用户的密码,并防止他们能够使用任何密码login。
如果你只是禁用帐户,你可以将他们的shell更改为/ sbin / nologin。 例如,在/ etc / passwd中:
username:x:500:500:Firstname Lastname:/home/username:/sbin/nologin
从我试过的一切,似乎没有办法做我所描述的,所以我要把这个答案标记为公认的。
“临时”禁用组的唯一方法是对cp /etc/groups <path/to/backup> ,在/etc/groups进行更改,稍后在需要时还原该更改。
备份/etc/passwd
cp /etc/passwd /etc/passwd.bak
从原来删除用户,备份仍然会有用户。
创build一个删除/ etc / passwd的脚本,并将/etc/passwd.bak重命名为/ etc / passwd。
在cron中设置脚本,只要你想运行就自动完成。