目前 /mnt/resource 归 root 所有,只有 root 可以读取/写入。我如何才能使系统上的其他用户也可以读取/写入它?
并且这应该是持久的(即系统重启后它应该仍然有效)
答案1
如何使 /mnt/resource 对 Azure Linux VM 中的其他用户可读/可写?
为此,您需要使用类似以下命令:
chown other_user /mnt/resource
并且这应该是持久的(即系统重启后它应该仍然有效)
基于本文档,Azure Linux 代理 (/usr/sbin/waagent) 执行以下操作:
• 管理资源磁盘
• 格式化并安装资源磁盘
在配置实例(启动/重新启动)时,设备/dev/sdb1
将根据ResourceDisk.MountPoint=
中的设置在启动时由 waagent 挂载/etc/waagent.conf
,默认为。您可以在停止并启动实例后/mnt/resource
键入以下命令来验证这一点,应该会显示类似以下内容:cat /var/log/waagent.log | grep sdb1
2016/06/17 09:06:42 Resource disk (/dev/sdb1) is mounted at /mnt/resource with fstype ext4
由于 waagent 在启动后一段时间内创建挂载,因此在启动时立即设置权限将不起作用。(我经历过一种竞争情况,我创建了一个目录,但在/mnt/resource
挂载发生时它被删除了。)
您可以创建一个服务,它将等待/dev/sdb1
安装,/mnt/resource/
然后根据需要更改权限。
一种方法是让类似于以下的脚本作为初始化脚本运行:
#!/bin/sh
LOG=/tmp/startup.log
while [ `mount | grep /mnt/resource | wc -l` -lt 1 ];
do
echo "Waiting for mount to be created by waagent..." >> ${LOG}
sleep 5
done
echo "Changing /mnt/resource permissions..." >> ${LOG}
chown other_user /mnt/resource
答案2
Chown 和 Chmod 是实现此目的的命令。
读一下这个可能更容易https://en.wikipedia.org/wiki/Chmod
答案3
无论您对 /mnt/resource 做什么,它都不会保留文档