指定某些命令给用户

问题描述:

我只想让“混帐”用户至可以运行git命令,我编辑使用sudo visudo我的sudoers文件并添加指定某些命令给用户

# Cmnd alias specification 
Cmnd_Alias GIT_CMDS = /usr/bin/git 

# User privilege specification 
root ALL=(ALL:ALL) ALL 
git ALL=(ALL) NOPASSWD: GIT_CMDS 

当我再尝试从Git命令git用户我收到一个错误,说我没有正确的访问权限。 我该如何解决这个问题?

+0

如果更改了用户所关联的组,那么您是否注销并重新登录,以便应用新组? – jdv

+0

@jdv yup,我用root用户编辑后,我然后做了su到git用户 –

+0

等待。你的问题与你想要做的不一致。你想只用git _user_或git _group_的成员来管理这种方式吗? – jdv

“存取权”可能是从“命令执行权”不同

混帐可能仍然能够运行git命令,但可能无法更新不混帐/ git的组拥有的文件夹中。

这就是为什么你有一个像“Allow User 'git' to run 'git pull' as 'www-data' via sudo”的问题,为了让

sudo -u www-data git <a command> 

在你的情况,因为你已经指定(ALL),请检查您的访问错误与正确的sudo -u <auser>去跳投,当你运行在不属于git的文件夹中命令为git

+0

修复了这个问题,谢谢 :) –