Linux 切换用户的Bash脚本
我有一个cent OS服务器,有5个帐户:Linux 切换用户的Bash脚本,linux,bash,Linux,Bash,我有一个cent OS服务器,有5个帐户:developer、user1、user2、user3和user4。所有用户主目录都位于/home下,如/home/developer、/home/user1、/home/user2、/home/user3和/home/user4。我想在/home/developer文件夹中创建4个脚本:user1.sh、user2.sh、user3.sh和user4.sh。当用户developer运行脚本user1.sh时,他会切换到user1,并将cd切换到user
developer
、user1
、user2
、user3
和user4
。所有用户主目录都位于/home
下,如/home/developer
、/home/user1
、/home/user2
、/home/user3
和/home/user4
。我想在/home/developer
文件夹中创建4个脚本:user1.sh
、user2.sh
、user3.sh
和user4.sh
。当用户developer
运行脚本user1.sh
时,他会切换到user1
,并将cd
切换到user1
(/home/user1
)的主目录,以此类推。背后的想法是阻止开发人员访问根目录,并允许通过简单地使用该用户名执行命令来切换到其他用户的主目录。有可能吗?我想你是在看su-otherUser
当然,您必须提供其他用户的密码
我想类似于
sudo su-otherUser
的东西可以工作,但我没有尝试过您不需要任何脚本。只要使用su-l
就可以了。如果你坚持认为这太复杂了,你可以给它取个别名。如果您在键入密码时遇到麻烦,请查看sudo
命令,它是(非常不安全的)NOPASSWD
选项。@arkascha我如何设置visudo以允许用户“开发者”在不输入密码的情况下切换到除root以外的所有其他用户?您真的使用了该手册吗?似乎没有,因为里面有解释。尝试使用mansudo
和mansudoers
。你真的应该自己去弄清楚。这是了解类unix系统的最佳、最简单和最有效的方法:阅读手册页并亲自尝试。我在Dockerfile
的入口点脚本中使用了这一方法,出于某种原因,它会停止脚本,不允许脚本继续运行。有什么线索吗?