我们公司有两台 Linux 电脑,更换了新硬件,因此我们需要在它们上面安装 Ubuntu 操作系统。然而,有人在 4 年前就安装了它们,但没有记录如何安装,所以我的问题是:
- 如何使用 AuFS 设置沙盒主目录?
在当前 fstab 文件中有以下条目:
none /home/student aufs br:/home/.student_rw:/home/student 0 0
但我真的不明白这是什么意思。有人能详细说明一下吗?目标是创建一个干净的主目录,每次重启后都会恢复,但如果您先以超级用户身份卸载它,您必须能够更改某些内容。
答案1
AuFS 最初是 UnionFS 联合文件系统的一个实现。
联合文件系统采用现有的文件系统并透明地将其覆盖在较新的文件系统上。
要安装 aufs:
打开终端,
按Ctrl++AltT
运行:
sudo -i
apt-get update
apt-get install aufs-tools
如何挂载同一文件系统的两个目录:
打开终端,
按Ctrl++AltT
运行:
sudo -i
mkdir /tmp/rw
mkdir /tmp/aus
mount -t aufs -o br=/tmp/rw:/home/user none /tmp/aus/
前两个命令在 /tmp 中创建了两个新目录。
mount.aufs 是挂载文件系统的命令。
mount 命令指定将在 /tmp/aus 下联合挂载 /tmp/rw 和 /home/user。
目录 /tmp/aus 将包含 /tmp/rw 和 /home/user 的内容。
mount 命令中使用的选项有:
-o – specifies options to be passed to the filesystem
br – specifies a branch, where each branch is separated by colon (:).
none – specifies we don’t have any device associated with it.
mkdir /tmp/rw /tmp/aufs
mount -t aufs -o br=/tmp/rw:${HOME} none /tmp/aufs
or
mount -t aufs -o br=/tmp/rw=rw:${HOME}=ro none /tmp/aufs
然后,你就可以通过 /tmp/aufs 看到你的主目录的整个树。
如果你修改了 /tmp/aufs 下的文件,你的主目录中的文件不会受到影响,而是会在 /tmp/rw 下新创建同名文件。
并且您对文件的所有修改都将应用于 /tmp/rw 下的文件。