我在Raspberry Pi上运行Raspbian Wheezy,我想从PHP调用一个Python脚本。 这一切都很好(我称之为' exec python go.py '从PHP),但现在我想调用一个需要root权限的脚本。 我明白,以root身份运行将帮助我在这里(' exec sudo python go2.py ',所以我将这行代码添加到我的sudo文件 %www-data ALL=(ALL) NOPASSWD: ALL 好吧,现在它再次运作。 但后来我了解到,授予www-data组无限制的sudo权利并不是一个好主意。 然后我发现这个问题( 如何授予特定的脚本文件的sudo权限? ),它向我展示了如何将sudo权限授予单个目录: %www-data ALL=(ALL) NOPASSWD: /var/www/exec/ 然后一切都停止了,因为这在我的机器上不起作用。 你能告诉我我做错了吗? 我使用lighttpd作为我的networking服务器。
我试图通过将以下行添加到我的/ etc / sudoers文件的底部,来防止以www用户身份运行节点的命令提示input密码: gituser ALL=(ALL) NOPASSWD: /usr/bin/sudo -u web-user NODE_ENV=production /path/to/node app.js 我也尝试把这个命令放在一个shell脚本中,然后运行它,但没有任何的喜悦: gituser ALL=(root) NOPASSWD: /usr/local/sbin/startnode 有没有人有什么我在做什么错误的想法? 最终,我将作为一个暴发户服务运行,所以命令将是“sudo服务runnode停止/启动”,并从一个git钩子触发,但我想原则将是相同的。 FYI,sudoers文件的全部内容: Defaults env_reset Defaults secure_path="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin" # Defaults root ALL=(ALL:ALL) ALL %admin ALL=(ALL) ALL %sudo ALL=(ALL) ALL gituser ALL=(ALL) NOPASSWD: /usr/bin/sudo -u web-user NODE_ENV=production /path/to/node app.js gituser ALL=(root) NOPASSWD: /usr/local/sbin/startnode
我没有在我的机器上安装sudo,但我有一个第三方程序作为不同于root的用户运行,并尝试执行sudo命令。 有没有办法让这个程序运行sudo? 我以root用户身份login,并在/ usr / bin中创buildsudo bash脚本,其中包含以下内容,因为我知道root密码有一种方法可以修改脚本以root用户身份运行命令。 或者还有其他的方法吗? 是的,这是愚蠢的,但我只需要这个testing。 #!/bin/sh $@
在Ubuntu 12.04,当我这样做 sudo -u <user> ls 我明白了 env: -u: No such file or directory 这发生在任何命令和<user>任何用户,包括我和root。 任何想法如何解决这个问题?
我在Debian 5,我想移动文件,但是我得到了一个权限被拒绝的错误,即使我是root。 你有什么解决办法? -rw-rw-rw- 1 scusr scusr 49901 Jun 17 09:04 flux_outfacture_130617090229UN_Test_888880617014310001.pdf $ mv flux_outfacture_130617090229UN_Test_888880617014310001.pdf flux_out/facture_130617090229UN_Test_888880617014310001.pdf mv:无法移动flux_outfacture_130617090229UN_Test_888880617014310001.pdf' to flux_out / facture_130617090229UN_Test_888880617014310001.pdf':Permission denied
我有一个非常类似于Dan Bishop的Ubuntu 12.04 Ultimate Server Guide的设置 。 我实际上创build了一系列可靠的脚本来在我的github上自动化这个过程。 所以我在客户端连接的机器上设置了ldap + kerberos。 我有一个运行nfs服务器的nas,它为域中的用户提供/ home目录。 你可以在github上看到我的完整configuration,减去我的环境特定的variables,如密码等。 除了一个问题,一切似乎都在起作用。 如果我以domainadmin用户身份login到计算机,则可以使用sudo来运行更新apt cache等命令,但是我无法修改/ home中的数据。 请参阅下面的内容,请注意,两个用户(ansible和jgrowl)都是domainadmins: ansible@ip-192-168-0-13:~$ pwd /home/ansible ansible@ip-192-168-0-13:~$ ls -l /home total 12 drwxr-xr-x 8 ansible ansible 4096 Aug 12 14:07 ansible drwxr-xr-x 7 jgrowl jgrowl 4096 Aug 12 14:08 jgrowl ansible@ip-192-168-0-13:~$ mkdir test1 ansible@ip-192-168-0-13:~$ ls -l total 4 drwxrwxr-x […]
我有一个情况,我希望主要的pipe理员用户(所有的sudo)有一个命令作为另一个用户的无密码sudo。 据我所知,这应该在/ etc / sudoers中给出以下内容: ramo ALL=(otherUser) NOPASSWD: /usr/bin/command ramo ALL=(ALL) ALL 但是这两条线似乎有冲突,或者第二条覆盖了第一条。 任何想法如何做到这一点? 干杯 拉莫 编辑:原来我稍微误解了sudo如何指定用户。 我有一个印象,如果你有所有=(otherUser),那么你不需要“sudo -u其他用户”,但可以sudo。 事实并非如此。
我也有一个pipe理Sudo的OpenLDAP安装。 每次我创build一个sudoersangular色时,我都必须列出这个sudoersangular色可以运行的命令。 这导致了很多重复。 有没有办法将networking组中的Linux命令分类,并扩大LDAP sudoersangular色SudoCommand字段中的networking组? 例如:使用成员/ bin / ls,/ usr / bin / less,/ usr / bin / tail创build一个名为“view”的networking组(或其他),在SudoCommand字段中input+ view。 当需要为不同的目录/文件授予各种SudoRoles相同的命令时,这将是有益的吗?
刚刚login到服务器并使用screen -R重新连接到现有屏幕。 我已经完全忘记了我曾经使用sudo su -之前没有退出,所以当我通过屏幕重新连接时,我以root的身份回来了! 有没有办法在屏幕上阻止sudo su ,或者以某种方式阻止通过屏幕重新连接到root? 或者我只需要在使用屏幕时非常注意使用sudo su ?
我正在使用Capistrano 2(.15.4)部署rails应用程序(我知道,试图达到3,但尚未完成)。 我们有一个新的服务器环境正在build立,IT人员更倾向于通过我们自己的用户访问,并要求用户部署。 我一直在testing使用: set :use_sudo, true set :sudo, "sudo -u <user>" 它看起来像sudo正在为使用sudo命令的手动定义的任务工作: cap deploy:restart … triggering load callbacks * 2014-09-01 11:34:28 executing `deploy:restart' * executing "sudo -u <user> touch /path/to/deploy/current/tmp/restart.txt" servers: ["hostname.com"] … 请注意, deploy:restartfunction被手动定义为: cmd = "touch #{current_path}/tmp/restart.txt" sudo cmd 但在部署时,它看起来不像sudo为自动update_code任务启动: cap deploy … triggering load callbacks * 2014-09-01 10:14:32 executing `deploy' * […]