我正在运行带有 3.19 内核的 Ubuntu 14.04,它应该支持 OpenFS(从内核 3.18 开始)。我一直在阅读有关 OverlayFS 的信息,但对如何实际使用它感到困惑。看起来它可能是 LVM 的一个非常有用的替代方案,可以将更改写入其他地方,同时备份被覆盖的原始文件系统?
有人可以给我示例挂载命令(如果可能)用于以下情况:
使用原始磁盘映像(使用 创建dd if=/dev/zero of=$HOME/filestystem1.img bs=4096 count=1024000)作为覆盖文件系统,将其安装在我主机文件系统的顶部,$HOME/mount该文件系统应该已经包含一些随机文件,例如file1.txt和file2.txt。一旦挂载,我相信我仍然应该能够看到我已经存在的文件,我现在创建的任何文件实际上都将存储在filesystem1.img我可能移动到另一个系统的文件中?
创建另一个原始磁盘映像并将这个映像挂载到我们刚刚创建的另一个映像之上。我是作为在上一个示例中运行的 mount 命令之后执行的第二个挂载命令来执行此操作,还是可以一次指定两个挂载?
我不知道 OverlayFS 是否是我需要在磁盘映像上mkfs -t xxx /path/to/raw/disk/image使用mount -t OverlayFS. 当我运行时:
cd /sbin
ls mkfs*
Run Code Online (Sandbox Code Playgroud)
我得到以下内容,但没有显示制作覆盖文件系统的选项。
mkfs mkfs.cramfs mkfs.ext3 mkfs.ext4dev mkfs.minix mkfs.ntfs
mkfs.bfs mkfs.ext2 mkfs.ext4 mkfs.fat mkfs.msdos mkfs.vfat
Run Code Online (Sandbox Code Playgroud) 我在 Ubuntu 18.04 包中安装了一个 snap 包,我想使用 root 帐户编辑其中一个文件。首先我切换到 root su,但是当我在 nano 中打开文件时,它告诉我:
[ File '/snap/phpstorm/36/bin/phpstorm64.vmoptions' is unwritable ]
Run Code Online (Sandbox Code Playgroud)
然后我尝试了这个:
root@elahe-VPCEA31FX:/home/elahe# sudoedit /snap/phpstorm/36/bin/phpstorm64.vmoptions
Run Code Online (Sandbox Code Playgroud)
上面的命令文件中的纳米打开后,却做出更改,并保存后Ctrl+O与退出后Ctrl+x我得到这个消息:
sudoedit: unable to write to /snap/phpstorm/36/bin/phpstorm64.vmoptions: Read-only file system
sudoedit: contents of edit session left in /var/tmp/phpstorm64XXRCQzZi.vmoptions
Run Code Online (Sandbox Code Playgroud)
我什至尝试使用以下命令更改文件的权限:
root@elahe-VPCEA31FX:/home/elahe# chmod 755 /snap/phpstorm/36/bin/phpstorm64.vmoptions
Run Code Online (Sandbox Code Playgroud)
得到了这个:
chmod: changing permissions of '/snap/phpstorm/36/bin/phpstorm64.vmoptions': Read-only file system
Run Code Online (Sandbox Code Playgroud)
root 用户不能编辑文件真是太神奇了!这是一个错误吗?