版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
在Linux实例中变更用户默认Shell的操作可以通过以下步骤完成。此操作通常用于解决因用户默认Shell被设置为/sbin/nologin
而导致无法通过SSH登录的问题。
cat /etc/passwd | grep username
username
替换为目标用户名(例如test
)。/sbin/nologin
(禁止登录):test:x:1000:1000::/home/test:/sbin/nologin
打开用户配置文件:
vi
)打开/etc/passwd
文件:
vi /etc/passwd
修改Shell路径:
/sbin/nologin
修改为/bin/bash
。test:x:1000:1000::/home/test:/sbin/nologin
test:x:1000:1000::/home/test:/bin/bash
保存并退出:
Esc
键,输入:wq
保存修改并退出编辑器。/etc/passwd
文件需要root权限,建议以root用户或具有sudo权限的用户执行上述操作。/etc/passwd
文件之前,建议先备份原文件,以便在出现问题时快速恢复:
cp /etc/passwd /etc/passwd.bak
/bin/bash
)符合您的安全策略,避免因不当配置导致系统风险。通过以上步骤,您可以成功变更Linux实例中用户的默认Shell,并解决因Shell配置错误导致的登录问题。