linux – 如何在不输入密码的情况下在另一个用户中运行shell脚本
发布时间:2020-12-13 17:07:38 所属栏目:Linux 来源:网络整理
导读:我想在hudson中自动完成一项工作,但是hudson总是使用用户hudson来运行脚本.我想要的是以另一个用户身份运行脚本. 我查看了ServerFault的答案,但只发现了一个使用su命令的解决方案,这需要我键入目标用户的密码.这不适用于自动脚本. 任何人都可以帮助这个吗?
我想在hudson中自动完成一项工作,但是hudson总是使用用户hudson来运行脚本.我想要的是以另一个用户身份运行脚本.
我查看了ServerFault的答案,但只发现了一个使用su命令的解决方案,这需要我键入目标用户的密码.这不适用于自动脚本. 任何人都可以帮助这个吗?谢谢. 解决方法
您可以使用sudo来执行此操作.首先,您需要修改/ etc / sudoers文件以添加允许hudson用户成为相关脚本的其他用户的规则.假设您有一个需要运行/usr/local/bin/my_script.sh的user1帐户.
运行visudo来修改sudoers文件,并添加如下: hudson ALL=(user1) NOPASSWD: /usr/local/bin/my_script.sh 然后,使用以下sudo命令从hudson运行脚本: sudo -u user1 /usr/local/bin/my_script.sh 使用visudo修改sudoers文件以便在将文件放入适当位置之前检查文件是否非常重要.此外,我建议您快速阅读man sudoers,以便在将其添加到您的配置之前清楚地了解上述操作. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |