![安装根目录无权访问的磁盘映像](https://linux22.com/image/1268611/%E5%AE%89%E8%A3%85%E6%A0%B9%E7%9B%AE%E5%BD%95%E6%97%A0%E6%9D%83%E8%AE%BF%E9%97%AE%E7%9A%84%E7%A3%81%E7%9B%98%E6%98%A0%E5%83%8F.png)
我需要挂载位于 NFS 网络共享上的磁盘映像,而无需先复制它。
只有我所在的 RHEL 5 计算机上的非 root 用户 ( apache
) 才有权限访问该网络共享上的文件。
sudo mount
/sudo losetup
都不起作用,因为我失去了访问文件的权限。添加/etc/fstab
带有user
标志的条目也不起作用。chmod ugo+rw
网络共享也失败了。
有没有办法不用mount
先复制这些磁盘映像?
按照@Malvineous 的建议进行操作:
$ losetup -o 512 /dev/loop7 img.img
/dev/loop7: Permission denied
# chown apache:apache /dev/loop7
$ losetup -o 512 /dev/loop7 img.img
memlock: Cannot allocate memory
Couldn't lock into memory, exiting.
执行与 root 完全相同的操作。
答案1
如果您chown apache /dev/loop0
随后losetup
以 apache 用户身份设置回送设备,会发生什么情况?然后您应该能够以 root 身份挂载 /dev/loop0。
针对更新后的问题:
快速 Google 建议你可以通过增加普通用户可以锁定的内存量来解决这个问题。由于只有 root 可以执行此操作,因此你需要 su 到 root,运行“ulimit -l unlimited”以删除限制,然后 su 到你之前的用户(不要像平常一样注销以返回普通用户,否则你将在此过程中恢复之前的限制。)