我想要一个脚本 X.sh 来切换用户并执行操作,但到目前为止我有这个:
#!/bin/sh
sudo su partner -s /bin/bash
supervisord -c ~/supervisord.conf
exit
我希望用户合作伙伴执行supervisord并退出,但我得到的只是在命令行中切换的用户bash shell,这样做是su partner -s /bin/bash
我访问合作伙伴用户的唯一方法。
请帮忙
答案1
您应该使用sudo -u partner supervisord -C ~/supervisord.conf
,并在 /etc/sudoers 文件中设置当前用户。允许用户“current”以“partner”身份执行此命令的条目如下所示:
current ALL=(partner:partner) NOPASSWD: /path/to/supervisord
确保使用,visudo
而不是尝试手动编辑 sudoers 文件。这里有一个更深入但简单的 sudoers 文件语法解释这里。