无法在Ubuntu 14.04 LTS上执行自有文件

无法在Ubuntu 14.04 LTS上执行自有文件,ubuntu,permissions,file-permissions,sudo,user-permissions,Ubuntu,Permissions,File Permissions,Sudo,User Permissions,我有一个文件需要作为userme执行。以下命令运行正常: # sudo /usr/lib/squid3/squid_radius_auth -f /etc/squid3/radius-config 但是,当我以userme身份运行时,会出现以下错误: # sudo -u userme /usr/lib/squid3/squid_radius_auth -f /etc/squid3/radius-config sudo: unable to execute /usr/lib/squid3/squ

我有一个文件需要作为
userme
执行。以下命令运行正常:

# sudo /usr/lib/squid3/squid_radius_auth -f /etc/squid3/radius-config
但是,当我以
userme
身份运行时,会出现以下错误:

# sudo -u userme /usr/lib/squid3/squid_radius_auth -f /etc/squid3/radius-config
sudo: unable to execute /usr/lib/squid3/squid_radius_auth: Permission denied
我试过这些:

# sudo chown userme:userme /usr/lib/squid3/squid_radius_auth
# sudo chmod 777 /usr/lib/squid3/squid_radius_auth
# sudo chmod +x /usr/lib/squid3/squid_radius_auth
但这不起作用。我就是不能让它以非root运行。

找到了答案:

只有对文件拥有读取权限才能读取文件是不够的 信息技术您还需要对它所属的目录具有读取权限 对

这里的解决方案是:

chmod 775 /usr/lib/squid3/

不,不,使系统资源世界可写是一个糟糕的想法。您应该立即恢复到sane权限(可能是
chmod 755/usr/lib/squid3
)并从那里获取权限。更新为更合理。