一、前置准备
uname -r命令检查内核版本。overlayroot,CentOS/RHEL/Fedora使用overlay):
sudo apt update && sudo apt install overlayroot;sudo yum install overlay;sudo dnf install overlayfs。二、创建Overlay目录结构
OverlayFS需要三个核心目录(可选merged为挂载点):
sudo mkdir -p /mnt/overlay/{lower,upper,work,merged}
注:
workdir需放在有足够空间的分区(如/var),且建议使用chown设置正确用户权限(如sudo chown -R 1000:1000 /mnt/overlay/work)。
三、配置Overlay挂载参数
通过mount命令手动挂载,关键参数说明:
-t overlay:指定文件系统类型为Overlay;-o:挂载选项,必含lowerdir、upperdir、workdir(多目录用逗号分隔,无空格),例如:sudo mount -t overlay overlay \
-o lowerdir=/mnt/overlay/lower,upperdir=/mnt/overlay/upper,workdir=/mnt/overlay/work \
/mnt/overlay/merged
示例场景:若
lowerdir为系统根文件系统(/mnt/rootfs)、upperdir为用户家目录(/home/username),则合并后/mnt/overlay/merged中,lowerdir的内容为基础层,upperdir的内容会覆盖同名文件。
四、验证挂载结果
df -h /mnt/overlay/merged查看挂载信息,确认文件系统类型为overlay;merged目录内容:
lowerdir中有file1.txt(内容为“Hello from lower”)、upperdir中有同名文件(内容为“Hello from upper”),则merged目录中file1.txt显示为“Hello from upper”(上层覆盖下层)。五、持久化配置(开机自启)
若需系统重启后自动挂载,需将配置添加到/etc/fstab文件:
/etc/fstab:sudo nano /etc/fstab;overlay /mnt/overlay/merged overlay defaults,lowerdir=/mnt/overlay/lower,upperdir=/mnt/overlay/upper,workdir=/mnt/overlay/work 0 0
sudo mount -a,验证配置是否生效。六、优化建议
lowerdir层(如将多个只读层合并为一个),减少OverlayFS的遍历开销;noatime(不更新访问时间戳)提升性能,或data=writeback(提高写速度,但有数据丢失风险,仅用于非关键场景);upperdir之上使用tmpfs(内存文件系统)作为缓存,加速频繁读写的文件;upperdir和workdir的IO性能;sysctl调整fs.overlay-max-layers(最大层数,默认128),增加层数上限(需根据系统资源调整)。