首先创建Overlay所需的目录(lowerdir为基础层,upperdir为用户修改层,workdir为OverlayFS内部工作目录,mergedir为合并后的视图):
sudo mkdir -p /path/to/lowerdir /path/to/upperdir /path/to/workdir /path/to/mergedir
注:
lowerdir通常指向基础系统目录(如/或/lib/initramfs-<version>.img提取的内容),upperdir和workdir需为空目录。
使用mount命令手动挂载,验证配置是否正确:
sudo mount -t overlay overlay -o lowerdir=/path/to/lowerdir,upperdir=/path/to/upperdir,workdir=/path/to/workdir /path/to/mergedir
参数说明:
lowerdir:基础文件系统层(只读);upperdir:用户修改的文件存储层(可写);workdir:OverlayFS内部使用的临时目录(必须为空)。
通过以下命令检查Overlay是否成功挂载:
mount | grep overlay
若输出包含overlay关键字及正确的lowerdir、upperdir、workdir路径,则说明挂载成功。
在mergedir(合并后的视图)中进行文件修改(如创建、修改或删除文件),然后检查upperdir是否同步了这些变更:
# 在mergedir中创建测试文件
sudo touch /path/to/mergedir/testfile.txt
# 检查upperdir是否包含该文件
ls -l /path/to/upperdir/testfile.txt
若upperdir中存在testfile.txt,则说明用户修改已成功保存到upperdir(OverlayFS的特性:所有修改仅存储在upperdir)。
若需开机自动挂载,需编辑/etc/fstab文件,添加以下条目:
overlay /path/to/mergedir overlay defaults,lowerdir=/path/to/lowerdir,upperdir=/path/to/upperdir,workdir=/path/to/workdir 0 0
然后重启系统,再次检查mergedir是否正常挂载并保留之前的修改:
sudo reboot
ls -l /path/to/mergedir/testfile.txt # 检查重启后文件是否存在
注:若使用
overlayroot工具(替代手动挂载),需编辑/etc/overlayroot.conf并启用服务:sudo nano /etc/overlayroot.conf # 设置[general] enabled=yes sudo systemctl enable overlayroot sudo systemctl start overlayroot重启后通过
df -h或mount命令验证overlayroot是否生效。
若挂载失败,可通过以下日志定位问题:
journalctl -xe # 查看系统日志
dmesg | grep overlay # 查看内核日志
常见错误包括:目录路径不存在、权限不足、workdir非空等。
通过以上步骤,可全面测试Debian Overlay配置的正确性,确保OverlayFS能正常挂载、保存用户修改并实现持久化。