本文主要对自己配置nfs的步骤以及趟过的坑进行记录:
内容概要:
1.首先确认挂载硬盘,硬盘如果是大于2T,同时希望硬盘所有空间在同一个分区,需要采用gpt分区(parted);
如果硬盘空间在2T以内,可以采用mbr分区(因为mbr每个区最大只有2T,gpt可以单区10T);
2.配置前,确认服务器;选一台服务器当做服务端,其他服务器(不限台数)当做客户端;
3.挂载硬盘及配置步骤:对硬盘进行分区→格式化硬盘→配置nfs服务端→挂载硬盘→配置nfs客户端。
4.遇到的坑:
(1)为了保证所有服务器挂载硬盘后,能够看到硬盘中文件及文件夹的操作人员,需要保证所有服务器上同一个用户的用户id必须一致,否则会出现nobody的情况;
(2)合并硬盘:如果一台服务器上挂在了多块小容量硬盘,希望将硬盘合并,需要在给硬盘分区创建逻辑卷lvm;
(3)自动挂载:不一定用autofs,可以直接vim /etc/fstab 添加一行内容进行设置。(文章中会详细说明)
开始挂载
一.对硬盘进行分区:
lsblk(查看当前服务器的硬盘情况)
1.mbr分区:(只对硬盘分一个区,如果有多个区需要自行百度)
fdisk -u /dev/vdb
n(创建新分区)
p(输出分区)
1(分区信息设置)
回车(分区信息设置,采用默认设置)
回车(分区信息设置,采用默认设置)
p(输出查看)
w(保存并退出fdisk)
分区成功
2.gpt分区:
参考文档:http:///entry/62639
#如果硬盘之前已经是mbr分区,用mklabel转换分区格式
parted /dev/vdb
#划分所有空间到一个分区
mkpart primary 0 -1
3.逻辑卷扩充分区(合并硬盘)
参考文档:
参考文档:
参考文档:
参考文档:
pvcreate /dev/vdb
#vgcreate中的lvm是逻辑卷名称
vgcreate LVM /dev/vdb
#2.9T是硬盘空间大小,可以自行调整,也可以使用百分比(推荐)
lvcreate -L2.9T -nDATA LVM
lvcreate -l +100%FREE -n DATA /dev/vdb
mkfs -t ext3 /dev/LVM/DATA
mount /dev/LVM/DATA /mnt/
#开始扩充硬盘空间:
pvcreate /dev/ndb
lvextend -l +100%free /dev/mapper/LVM-DATA
e2fsck -f /dev/mapper/LVM-DATA
resize2fs /dev/mapper/LVM-DATA
二.格式化硬盘
参考文档:https://help.aliyun.com/document_detail/25426.html?spm=a2c4g.11186623.6.575.63516530WLkjwu
#因为ext4文件系统安装时,服务器文件系统故障,所以采用ext3,并不影响使用。
mkfs.ext3 -T largefile /dev/vdb
三.配置nfs服务端
参考文档:
yum -y install nfs-utils
rpcbind
mkdir /mnt
vim /etc/exports
#在文件中添加以下内容,服务端开启客户端访问功能
/mnt/*(rw,sync,no_root_squash)
service rpcbind start
service nfs start
chkconfig rpcbind on
chkconfig nfs on
四.挂载硬盘并设置开机自动挂载
#首先,为了确保所有服务器都可看到硬盘中文件操作人的名称,进行以下设置(不同服务器的相同用户,id必须一致)
vim /etc/idmapd.conf
#在文件中#Domain = 修改为以下内容:
Domain = *.
#修改完后,设置开机自动挂载
echo /dev/vdb /mnt ext3 defaults 0 0 >> /etc/fstab
#开机挂载的配置文件是/etc/fstab,如果要取消自动挂载,去文件中删除对应行即可
vim /etc/fstab
#挂载硬盘
mount /dev/vdb /mnt
五.配置nfs客户端
mkdir /mnt
yum -y install nfs-utils rpcbind
showmount -e 192.168.1.80
mount -t nfs 192.168.1.80:/mnt /mnt
mount
df -h
#df -h后查看挂载情况,挂载正常无需进行以下步骤!!!!!!!!!!!
#如果客户端因为之前在同一目录挂载过硬盘,进行过很多操作,挂载时迟迟不响应,尝试执行以下命令
#参考文档:http://blog.sina.com.cn/s/blog_df05333f0102y1c9.html
rpcinfo -p
rpm -qa |grep nfs-utils
yum -y install nfs-utils
systemctl start nfs-utils
systemctl enable nfs-utils
rpcinfo -p
六.卸载硬盘
fuser -km /mnt
umount /mnt
#实在不行的话强行卸载的第二种办法:
umount -l /mnt
#断开nfs客户端连接
umount -lf 192.168.1.198:/mnt/disk229_03
七。常用命令
#查看硬盘状态
lsblk
#查看挂载状态:两种(如果df -h迟迟不响应,需要查看挂载硬盘的服务端是否异常,重启服务端nfs)
df -h
mount
#查看nfs进程
ps -aux|grep -v grep|grep nfs
#停止服务端nfs服务
service nfs stop
#重启服务端nfs
service nfs restart
#查看当前服务器的ip
ip ifconfig
#查看服务端口 (通过内网ip可判断)
netstat -anptl