PVE共享磁盘给linux虚拟机
本帖最后由 生信喵 于 2024-8-18 17:14 编辑# 背景
我们挂载了磁盘给PVE,但是这个磁盘如果要给其他虚拟机使用,粗暴的方式就是给其他虚拟机直接在硬件那添加一个磁盘,但是这种方式并不是共享,而是占用指定的空间,显然这并不方便。
于是我选择了NFS的方式进行共享,这样局域网内设备都可以使用(linux+windows)。
# PVE安装NFS服务端
pve shell
```
apt-get update
apt-get install nfs-kernel-server
```
我们挂载的磁盘创建的目录是/mnt/sda1-16t(一直到sdg1-16t),我们继续使用这样的命名规律。
```
nano /etc/exports
```
例如添加行:/mnt/sda1-16t *(rw,sync,no_root_squash)
!(data/attachment/forum/plugin_zhanmishu_markdown/202408/d4202e5786a4113b64e65a5b7bb1428b_1723972202_3510.png)
保存退出
```
systemctl restart nfs-kernel-server
```
重启服务。
查看本地nfs共享的目录:
`showmount -e`
~~我们可以去pve的数据中心,挂载NFS磁盘~~(我们前面已经目录的形式挂载了,这里的nfs挂载就不需要了,差别就是添加时选择 目录 还是 NFS)。
# PVE虚拟机安装NFS客户端
我安装的是ubantu22.04lts,如果不同可以自行找对应系统的挂载教程。
ssh打开虚拟机
```
# 先安装必要的NFS客户端工具:
sudo apt install nfs-common -y
# 创建一个挂载点
sudo mkdir /mnt/nfs
# 挂载NFS共享 ip是pve节点的系统ip
sudo mount -t nfs 192.168.31.202:/mnt/sda1-16t /mnt/nfs
```
/mnt/sda1-16t是我之前挂载磁盘是创建的目录。
192.168.31.202是我的pve系统的ip地址。
验证是否成功共享
!(data/attachment/forum/plugin_zhanmishu_markdown/202408/12e72e606738a2a3db127324b6bb2562_1723972202_5106.png)
最后一行,即为成功。
# 自启动可选(生产环境不推荐
我们还可以配置开启自动挂载NFS共享。
因为pve的虚拟机是基于pve产生的,一般重启 先有pve才有虚拟机,
所以共享的目录也是先存在,虚拟机刚好也可以挂载上。
但是内网多节点的服务器 如果允许开机自启动nfs,就会出现,nfs服务端没开机,客户端开不了机(卡在mount目录上)。
```
sudo nano /etc/fstab
```
末尾添加
```
192.168.31.202:/mnt/sda1-16t /mnt/nfs nfs defaults 0 0
```
保存退出
# 后记
后面再上windows,macos,电视TV里Kodi等,都可以连接NFS。
欢迎来到~~德莱联盟~~家用nas局域网。
页:
[1]