PVE使用lxc.mount.entry,让LXC容器共享宿主机目录
环境PVE 8.1.3(x86_64),8.1.7(arm64)均测试成功,无需编译更换内核了!
LXC可以用,虚拟机不行,虚拟机可以用 9p
的方法,参考我的这篇文章,PVE使用9p挂载,让虚拟机共享宿主机目录
该方法不依赖网络,即便没有网卡都可以,也不会因为IP变化导致挂载失效
第1步,LXC开机时,创建挂载点目录
在LXC开机状态,在LXC中先创建挂载点,改成你的。必须要先创建好这个挂载点
mkdir /mnt/mergerfs1
第2步,LXC容器关机,修改LXC配置文件
将LXC容器关机
在PVE宿主机上,编辑LXC配置文件,配置文件位置是 /etc/pve/lxc/12001.conf
,其中12001是我的LXC-ID,改成你的
使用nano vi等文本编辑工具编辑该文件,在文件开始位置加入以下代码,保存并退出。
lxc.mount.entry: /srv/mergerfs/mergerfs1 mnt/mergerfs1 none rw,bind 0 0
/srv/mergerfs/mergerfs1
是PVE宿主机上要共享的目录mnt/mergerfs1
是刚才在LXC中创建的目录/mnt/mergerfs1
去掉开头的/
得到的- 以上改成你自己的
第3步,LXC开机,查看是否挂载成功
将LXC容器开机,查看是否挂载成功,命令
df -hT #查看挂载信息
ls -lah /mnt/mergerfs1 #查看共享过来的文件目录
你这里类型和我显示的不一样没关系,实际能用就行
还有一种方法:
https://pve-doc-cn.readthedocs.io/zh-cn/latest/chapter_pct/Container_Settings.html#id8