linux用户修改用户shell

时间:2024-03-12 08:25:08

要拒绝系统用户登录,可以将其shell设置为/usr/sbin/nologin或者/bin/false

# usermod -s /usr/sbin/nologin username

或者

# usermod -s /bin/false username

 

/bin/false

/bin/false什么也不做只是返回一个错误状态,然后立即退出。将用户的shell设置为/bin/false,用户会无法登录,并且不会有任何提示。

 

/usr/sbin/nologin

nologin会礼貌的向用户显示一条信息,并拒绝用户登录:

This account is currently not available.

有一些软件,比如一些ftp服务器软件,对于本地非虚拟账户,只有用户有有效的shell才能使用ftp服务。这时候就可以使用nologin使用户即不能登录系统,还能使用一些系统服务,比如ftp服务。/bin/false则不行,这是二者的重要区别之一。

 

/etc/nologin

如果存在/etc/nologin文件,则系统只允许root用户登录,其他用户全部被拒绝登录,并向他们显示/etc/nologin文件的内容。