windows磁盘映射到centos7, nfs使用
在centos7下面开发,遇到几次虚拟机无法启动,导致里面代码丢失的问题。
从同事那边听说了nfs工具,可以将windows的某个目录映射到虚拟机的centos下面,作为一个磁盘挂载。
nfs 下载地址:https://www.hanewin.net/nfs-e.htm
下载和安装的 参考地址:Windows10搭建NFS服务 - fuzidage - 博客园 (cnblogs.com)
1.在nfs软件里面添加一行配置如下:
F:\sharepath2025\nfs_share -name:nfs *(rw,sync,no_root_squash)
表示把F盘 sharepath2025\nfs_share 目录当成nfs共享目录,-name:nfs表示客户端挂载时使用nfs表示 F:\sharepath2025\nfs_share 路径
2.在centos7下面 创建挂载点
sudo mkdir /mnt/henry_mount_point
sudo chmod 777 /mnt/henry_mount_point
ls -ld /mnt/henry_mount_point
## 如果不是root账号,这里还涉及到修改 henry_mount_point 文件夹属性的问题(因为它是root创建)
# 将 henry_mount_point 文件夹属性改为 henry 用户所在的组和属性,
# 这样henry用户就能在该目录下读写了。我的当前普通用户名是 henry
sudo chown henry:henry /mnt/henry_mount_point
3.在centos7下面 加载挂载点 (192.168.21.49是我windows的ip)
sudo mount -t nfs -o nolock 192.168.21.49:/nfs /mnt/henry_mount_point
如果一切顺利,应该就完成了。
我这边关闭了windows所有的防火墙。
其他疑问:
我手动挂在了一个目录
sudo mount -t nfs -o nolock 192.168.21.49:/nfs /mnt/henry_mount_point
我希望每次系统启动的时候,都能去自动挂在它。我需要怎么 做,我是centos7系统
在 CentOS 7 系统中,要使 NFS 目录在系统启动时自动挂载,你需要编辑 /etc/fstab
文件。这个文件包含了系统启动时需要挂载的文件系统的信息。
以下是如何在 /etc/fstab
文件中添加一个 NFS 挂载点的步骤:
- 打开
/etc/fstab
文件进行编辑:
sudo vi /etc/fstab
- 在文件的末尾添加一行,类似于以下内容(根据你的 NFS 服务器和挂载点的具体信息进行调整):
192.168.21.49:/nfs /mnt/henry_mount_point nfs nolock,_netdev 0 0
这行信息的含义是:
192.168.21.49:/nfs
是 NFS 服务器的地址和要挂载的目录。/mnt/henry_mount_point
是本地系统上的挂载点。nfs
是文件系统类型。nolock
是挂载选项,表示不使用文件锁。- 最后的
0 0
表示 dump 和 fsck 的备份和检查顺序(NFS 不需要 dump 备份,并且在启动时不需要 fsck 检查)。
-
保存并关闭文件。
若干脚本示例:
#!/bin/bash ## ubuntu sudo mount -t nfs -o nolock 192.168.xx.xx:/nfs_ubuntu /mnt/windows_share
#!/bin/bash sudo mount -t nfs -o nolock 192.168.xx.xx:/nfs_fedora /mnt/windows_share
#!/bin/bash sudo mount -t nfs -o nolock 192.168.xx.xx:/nfs /mnt/henry_mount_point
nfs工具配置内容:
F:\sharepath2025\nfs_share -name:nfs *(rw,sync,no_root_squash) F:\sharepath2025\nfs_ubuntu -name:nfs_ubuntu *(rw,sync,no_root_squash) F:\sharepath2025\nfs_fedora -name:nfs_fedora *(rw,sync,no_root_squash) F:\sharepath2025\nfs_linuxapp -name:nfs_linuxapp *(rw,sync,no_root_squash)