【问题标题】:Not able to create a directory using sudo -u username mkdir /var/log/test无法使用 sudo -u username mkdir /var/log/test 创建目录
【发布时间】:2016-12-16 07:16:32
【问题描述】:

我无法使用root 用户的sudo 权限创建目录,如果我登录到用户,我可以使用sudo 在/root 下创建目录。我还添加了允许/etc/sudoers 文件中的所有命令,详细信息如下:

[root@linux home]# cat /etc/sudoers | grep  tes
test  ALL= NOPASSWD: ALL

错误

[root@linux home]# sudo -u test mkdir /var/log/test3

mkdir: 无法创建目录'/var/log/test3': 权限被拒绝

有什么想法吗?

谢谢

【问题讨论】:

  • 感谢您的回复。但是如果使用 sudo 以用户身份登录,我可以创建目录。请让我知道用户使用逗号创建目录的足够权限( sudo -u username mkdir /var/log/test)

标签: linux shell centos sudo sudoers


【解决方案1】:

通过运行“sudo -u test”,您给自己的权限低于 roor 用户,因为您以用户“test”而不是“root”身份运行命令。从 root 用户,您可以运行:

mkdir /var/log/test3

阅读man sudo了解更多信息。

或者:

运行visudo 并取消注释轮组,然后将用户测试添加到轮组。

如果你不介意我问,为什么你需要从 root 用户创建一个特定用户的目录?特别是因为您创建的目录不是特定于用户的?

另外,在 sudoers 文件中,您应该添加 test ALL=(ALL) NOPASSWD: ALL,而不是 test ALL= NOPASSWD: ALL

【讨论】:

  • 我有一个二进制文件,它在 /root 下创建多个目录和文件。在执行二进制文件时,由于权限问题没有创建文件夹,但二进制文件正在以用户所有权运行。有什么想法吗?
  • 我不能单独评论任何帖子,所以我一直在更新我原来的帖子。但这听起来像是所有权问题,而不是
  • 但这听起来像是所有权问题,而不是系统权限提升问题。看看这个:wiki.archlinux.org/…
  • 抱歉,是整个页面,而不仅仅是那个部分。
【解决方案2】:

sudo 是一个强大的工具,用于管理非 root 用户的权限。当你是 root 时,你可能更喜欢使用su 命令。

man su

su - username -c 'mkdir /tmp/testfile'

然后

ls -l /tmp/testfile

查看谁属于这个文件。

【讨论】:

    猜你喜欢
    • 2021-11-01
    • 2018-02-06
    • 2012-12-04
    • 1970-01-01
    • 2015-08-16
    • 1970-01-01
    相关资源
    最近更新 更多