如何为用户提供对 ext3 映像文件的只读挂载访问权限?

如何为用户提供对 ext3 映像文件的只读挂载访问权限?

我希望用户能够以ext3只读和无执行模式将图像文件安装为环回设备,而无需调用sudo.当前使用的命令sudo类似于:

$ EXT3_DIR=$(mktemp -d /tmp/ext3-mnt-XXX) ; sudo mount -o loop,ro,user rootfs.ext3 ${EXT3_DIR} && cd ${EXT3_DIR}

有了这个(和visudo),我创建了一个文件:/etc/sudoers.d/ext3-ro-mount其内容为:

user ALL=(root) NOPASSWD: /bin/mount -o loop\,ro\,user *.ext3 /tmp/ext-mnt-*

但是当我在没有提升的情况下运行 mount 命令时sudo,出现错误:

mount: only root can use "--options" option

我怎样才能为用户实现这一目标?(接下来的/etc/sudoers.d/ext3-ro-umount内容会是什么样子?)

编辑:

误解了我所做的事情实际上是如何工作的,我运行了命令sudo在权限较低的帐户上,输入密码并收到此错误:

{such and such} is not in the sudoers file.  This incident will be reported.

如何将用户添加到 sudoers 文件而不使其成为完整的 sudoer? 这是通过创建一个新组并授予该组执行此操作的权限来实现的吗?

编辑2:

我弄清楚了我遇到的问题。请参阅下面我的回答。

答案1

sudo支持细粒度特权。

例如,您可以进行设置,以便指定的用户或组可以在有或没有密码的情况下使用指定的参数执行指定的命令。

man sudoers

答案2

我正在寻找的 sudoer 文件的正确形式是替换userALL

ALL ALL=(root) NOPASSWD: /bin/mount -o loop\,ro\,user *.ext3 /tmp/ext-mnt-*

相关内容