Ⅰ NFS服务搭建及数据无缝迁移
五一节办公室要停电,机房虽有UPS,但也支撑不了8小时。
因生产环境有业务系统挂了办公室机房的NAS存储,故需要进行迁移,步腊册骤记录如下:
先闲谈下技术-----------------------
NFS和samba的区别
samba是混合型网络中的共享服务,windows服务器可建samba服务,linux服务器也可建samba服务
nfs只面向unix、linux间的共享,linux服务器可建nfs服务(winodws系统也可以挂载nfs,就是有点不稳定)
NFS服务器上的操作--------------------------
nfs服务器操作系统版本:
[root@c7110 ~]# more /etc/system-release
CentOS Linux release 7.9.2009 (Core)
nfs服务器安装nfs服务
[root@c7110 ~]# yum -y install nfs-utils rpcbind
创建nfs目录,并授权
[root@c7110 ~]# mkdir /opt/nfs-test
[root@c7110 ~]# chmod 777 /opt/nfs-test
编辑nfs服务配置文件
[root@c7110 ~]# vi /etc/exports
内容如下:
/opt/nfs-test *(rw,root_squash,all_squash,sync)
重新加载nfs配置:
[root@c7110 ~]# exportfs -r
nfs服务设置开机启动
[root@c7110 ~]# systemctl enable rpcbind
[root@c7110 ~]# systemctl enable nfs
[root@c7110 ~]# systemctl enable nfs-lock
[root@c7110 ~]# systemctl enable nfs-idmap
启动nfs服务
[root@c7110 ~]# systemctl start rpcbind
[root@c7110 ~]# systemctl start nfs
[root@c7110 ~]# systemctl start nfs-lock
[root@c7110 ~]# systemctl start nfs-idmap
查看nfs服务启动后,所监听的端口信息:判局蚂
[root@c7110 ~]# rpcinfo -p
linux服务器服务器上操作-------------------------------
业务服务器安装nfs软件客户掘埋端
[root@c7111 ~]# yum -y install nfs-utils
建立一个挂载目录
[root@c7111 ~]# mkdir /opt/test-m
挂载nfs服务器共享出来的目录
[root@c7111 ~]# mount -t nfs 10.x.x.10:/opt/nfs-test /opt/test-m/
查看下已挂载的nfs
[root@c7111 ~]# df -h
Filesystem Size Used Avail Use% Mounted on
devtmpfs 1.5G 0 1.5G 0% /dev
tmpfs 1.5G 0 1.5G 0% /dev/shm
tmpfs 1.5G 8.8M 1.5G 1% /run
tmpfs 1.5G 0 1.5G 0% /sys/fs/cgroup
/dev/mapper/centos-root 97G 2.3G 95G 3% /
/dev/sda1 1014M 171M 844M 17% /boot
tmpfs 297M 0 297M 0% /run/user/0
10.x.x.6:/opt/nfs-test 97G 4.1G 93G 5% /opt/test-m
经测试,数据可读可写,证明nas服务没有问题,于是进行数据同步,数据同步用rsync命令。
rsync -avp [email protected]::nas_6 /mnt/guidang/ --password-file=/root/rsync_pass --bwlimit=100000
数据同步完,通知研发进行挂载切换。研发同事在测试时,发现文件属性中的uid及gid与原来的不一致,有些担心,于是又小完善了一下NFS服务。
编辑nfs服务配置文件
[root@c7110 ~]# vi /etc/exports
内容如下:
/opt/nfs-test *(no_all_squash,anonuid=600,anongid=600)
重新加载nfs配置:
[root@c7110 ~]# exportfs -r
Ⅱ linuxnfs閰岖疆鏂囦欢linuxnfs閰岖疆
linux閰岖疆bond鍜宐ridge鍙e尯鍒锛
linux閰岖疆bond鍜宐rige镄勫尯鍒鍏跺疄鏄寮鐜妗ユ帴鍜岄棴鐜杩炴帴涔嬮棿镄勫尯鍒锛宐ond镄勫缓绔嬭佹洿璐瑰姛澶銆
缃戞ˉ閰岖疆锛圔ridge锛
(1)vimifcfg-enp0s25
DEVICE=enp0s25
ONBOOT=yes
BOOTPROTO=none
BRIDGE=br0
(2)vimifcfg-br0
DEVICE=br0
ONBOOT=yes
BOOTPROTO=none
IPADDR=172.25.254.39
NETMASK=255.255.255.0
TYPE=Bridge銆
bond--阈捐矾镵氩悎锛屾渶澶氩兼敮鎸2鍧楃绣鍗★纴灏嗕袱鍧楃绣鍗$粦瀹氩埌涓涓阃氶亾锛屾牴鎹涓嶅悓妯″纺澧炲姞甯﹀芥垨鍐椾綑镐с
###ifcfg-bond0
TYPE=Ethernet
BOOTPROTO=none
PEEDNS=yes
BONDING_MASTER=yes
NAME=bond0
DEVICE=bond0
ONBOOT=yes
BRIDGE=br_nfs
MTU=9000锛
###ifcfg-bond0
TYPE=Ethernet
BOOTPROTO=none
PEEDNS=yes
BONDING_MASTER=yes
NAME=bond0
DEVICE=bond0
ONBOOT=yes
BRIDGE=br_nfs
MTU=9000銆
win10镞楄埌鐗堟庝箞鎸傝浇nfs鍏变韩鐩褰曪纻
瑙e喅鏂规硶涓锛
鍙链夋枣鑸扮増锛堟枣鑸扮増涓嬭浇锛夊拰浼佷笟鐗埚叿链夋ゅ姛鑳姐备笓涓氱増鍜屽跺涵鐗堥渶瑕佷娇鐢ㄧ涓夋柟杞浠跺疄鐜般傜‘淇濈绣缁沧槸镵旈氱殑銆傚彲浠ユe父Ping阃氩规柟涓绘満锛岄槻𨱔澧欓兘宸茬粡鍏抽棴銆侺inux涓绘満涓篊entOS6.5锛屽湪镙圭洰褰曚笅链変釜鍙/nfs镄勫叡浜鏂囦欢澶广傜‘璁ゅ啓濂戒简/etc/exports鏂囦欢锛屽苟寮钖浜嗗瑰簲镄凬FS链嶅姟銆
瑙e喅鏂规硶浜岋细
1銆佺郴缁熶腑镓揿紑锻戒护鎻愮ず绗︼纴纭璁ょ绣缁滈厤缃娌℃湁闂棰桡纴鑳絧ing阃氩规柟镄処P锛
2銆佹墦寮鎺у埗闱㈡澘锛屾垒鍒扮▼搴,镓惧埌镓揿紑鎴栧叧闂瓀indows锷熻兘,镓惧埌NFS链嶅姟骞跺嬀阃夊畨瑁咃绂
3銆佸洖鍒板懡浠ゆ彁绀虹︼纴杈揿叆showmount-e+链嶅姟鍣↖P鍦板潃𨱒ョ‘璁ゆ寕杞界偣锛
4銆佺劧钖庣敤mount锻戒护𨱒ユ寕杞斤纴钖庨溃闾d釜Z锛氭槸鍒嗛厤镄勭洏绗︼绂
5銆佽繖镙疯繘鍒拌$畻链洪噷闱㈠氨鍙浠ョ湅鍒扮绣缁滃叡浜鐩褰曚简銆
濡傛灉浣犱篃闇瑕佽剧疆NFS鍏变韩鐩褰曚笉濡ㄦ寜涓婇溃镄勬柟娉曡繘琛屾搷浣溿
Ⅲ linux搭建nfs服务器,安装nfs客户端挂盘的时候没有反应,防火墙,selinux关闭了也不关用,挂载不上。
客户端的命令是没有错误的,出现挂载不上的情况,最好重新确认一下:
1,防火墙是否关闭或者开放端口;
2,selinux状态;
3,网络是否可达,ping一下;
4,NFS服务器设置是否正确,有没有给客户端所在ip段权限;
这种问题很难讲是为什么,所以,最后都重新确认一遍,各个有可能出错的地方。
Ⅳ Linux搭建NFS服务器
作者:SpookZanG
linux搭建NFS服务器
一、什么是NFS服务
NFS是Network
File
System的简写,即网络文件系统.
网络文件系统是FreeBSD支持的文件系统中的一种,也被称为NFS.
NFS允许一个系统在网络上与它人共享目录和文件。通过使用NFS,用户和程序可以象访问本地文件一样访问远端系统上的文件。
二、NFS的优势
1.本地工作站使用更少的磁盘空间,因为通常的数据可以存放在一台机器上而且可以通过网络访问到。
2.用户不必在每个网络上机器里头都有一个home目录。Home目录
可以被放在NFS服务器上并且在网络上处处可用。
3.诸如软驱,CDROM,和
Zip®
之类的存储设备可以在网络上面被别的机器使用。这可以减少整个网络上的可移动介质设备的数量。
NFS至少有两个主要部分:一台服务器和一台(或者更多)客户机。客户机远程访问存放在服务器上的数据。为了正常工作,一些进程需要被配置并运行。
三、NFS的搭建
1、服务器端
安装NFS的服务程序
yum
install
-y
nfs-utils
写配置文件
写入
/music
192.168.0.0/255.255.255.0(rw,sync)
格式是:
要共享的目录
共享的IP及掩码或者域名(权限,同步更新)
启动服务
/etc/init.d/portmap
restart
/etc/init.d/nfs
restart
chkconfig
nfs
on
chkconfig
portmap
on
然后关闭防火墙以及更改Selinux关于NIS的选项
/etc/init.d/iptables
stop
(防护墙服务关闭)
chkconfig
iptables
off
system-config-selinux
(设置selinux)
2、客户端
编辑fstab文件,实现开机自动挂载
mount
-t
nfs
IP:/目录
挂载到的目录
(此为临时挂载)
如:mount
-t
nfs
192.168.0.9:/doce
/doc
编辑FSTAB文件
vim
/etc/init.d/fstab
IP:/目录
挂载到的目录
nfs
defaults
0
0
然后关闭防火墙以及更改Selinux关于NIS的选项
/etc/init.d/iptables
stop
(防护墙服务关闭)
chkconfig
iptables
off
system-config-selinux
(设置selinux)
至此,搭建完毕。
Ⅳ LINUX怎么挂载NFS
在linux客户端挂接(mount)NFS磁盘共享之前,必须先配置简虚并好NFS服务端。x0dx0a1、Solaris系统NFS服务端配置方法如下:x0dx0a(1)修改 /etc/dfs/dfstab, 增加共享目录x0dx0ashare -F nfs -o rw /export/home/sunkyx0dx0a(2)启动nfs服务x0dx0a# /etc/init.d/nfs.server startx0dx0a(3)NFS服务启动以后,也可以使用下面的命令增加新的共享x0dx0a# share /export/home/sunky1x0dx0a# share /export/home/sunky2x0dx0a注:/export/home/sunky和/export/home/sunky1是准备共享的目录x0dx0ax0dx0a2、linux系统NFS服务端配置方法如下:x0dx0a(1)修改 /etc/exports,增加共享目录x0dx0a/export/home/sunky 10.140.133.23(rw)x0dx0a/export/home/sunky1 *(rw)x0dx0a/export/home/sunky2 linux-client(rw)x0dx0a注:/export/home/目录下的sunky、sunky1、拦迹sunky2是准备共享的目录,10.140.133.23、*、 linux-client是被允许挂接此共享linux客户机的IP地址或主机名。如果要使用主机名linux-client必须在服务端主机 /etc/hosts文件里增加linux-client主机ip定义。格式如下:x0dx0a10.140.133.23 linux-clientx0dx0a(2)启动与停止NFS服务x0dx0a/etc/rc.d/init.d/portmap start (在REDHAT中PORTMAP是默认启动的)x0dx0a/etc/rc.d/init.d/nfs start 启动NFS服务x0dx0a/etc/rc.d/init.d/nfs stop 停止NFS服务x0dx0a注:若修改/etc/export文件增加新的共享,应先停止NFS服务,再启动NFS服务方能使新增加的共享起作用。使用命令exportfs -rv也可以达到同样的效果。x0dx0a3、linux客户端挂接(mount)其他linux系统或UNIX系统的NFS共享x0dx0a誉陪# mkdir _p /mnt/nfsx0dx0a注:建立一个目录用来作挂接点(mount point)x0dx0a#mount -t nfs -o rw 10.140.133.9:/export/home/sunky /mnt/nfsx0dx0a注:这里我们假设10.140.133.9是NFS服务端的主机IP地址,当然这里也可以使用主机名,但必须在本机/etc/hosts文件里增加服务端ip定义。/export/home/sunky为服务端共享的目录。x0dx0a如此就可以在linux客户端通过/mnt/nfs来访问其它linux系统或UNIX系统以NFS方式共享出来的文件了。以上操作在 redhat as server 3、redflag server4.1、suse server 9以及Solaris 7、Solaris 8、Solaris 9 for x86&sparc环境下测试通过。x0dx0a权限问题:x0dx0a假设 server 端的使用者 jack, user id 为 1818, gid 为 1818, client 端也有一个使用者 jack,但是 uid 及 gid 是 1818。client 端的 jack 希望能完全读写 server 端的 /home/jack 这个目录。server 端的 /etc/exports 是x0dx0a这样写的:x0dx0a /home/jack *(rw,all_squash,anonuid=1818,anongid=1818)x0dx0a这个的设定档的意思是,所有 client 端的使用者存取 server 端 /home/jack 这x0dx0a目录时,都会 map 成 server 端的 jack (uid,gid=1818)。我 mount 的结果是x0dx0a1. client 端的 root 可以完全存取该目录, 包括读、写、杀??等x0dx0a2. client 端的 jack (uid,gid=1818) 我可以做:x0dx0a rm -rf server_jack/*x0dx0a cp something server_jack/x0dx0a mkdir server_jack/a
Ⅵ LINUX怎样安装和使用NFS服务
LINUX NFS安装和使用,具体步骤如下:
1 安装
需要安装 portmap和nfs-utils这两个包,下载rpm包后用rpm安装或者直接用yum安装都可以。
rpm -ivh portmap-4.0-65.2.2.1.i386.rpm
rpm -ivh nfs-utils-1.0.9-50.el5.i386.rpm
2 配置
配置文件是/etc/exports,如果不存在需要自己创建。
/etc/exports文件内容格式:
<输出目录> [客户端1域名/IP(选项(访问权限,用户映射,其他))] [客户端2域名/IP 选项(访问权限,用户映射,其他)]
NFS主要的选项有3类:
A 访问权限选项
设置输出目录只读:ro
设置输出目录读写:rw
B 用户映射选项
all_squash:将远程访问的所有普通用户及所属组都映射为匿名用户或用户组(nfsnobody);
no_all_squash:与all_squash相反(默认设置);
root_squash:将root用户及所属组都映射为匿名用户或用户组(默认设置);
no_root_squash:与rootsquash相反;
anonuid=xxx:将远程访问的所有用户都映射为匿名用户,并指定该用户为本地用户(UID=xxx);
anongid=xxx:将远程访问的所有用户组都映射为匿名用户组账户,并指定该匿名用户组账户为本地用户组账户(GID=xxx);
C 其它选项
secure:限制客户端只能从小于1024的tcp/ip端口连接nfs服务器(默认设置);
insecure:允许客户端从大于1024的tcp/ip端口连接服务器;
sync:将数据同步写入内存缓冲区与磁盘中,效率低,但可以保证数据的一致性;
async:将数据先保存在内存缓冲区中,必要时才写入磁盘;
wdelay:检查是否有相关的写操作,如果有则将这些写操作一起执行,这样可以提高效率(默认设置);
no_wdelay:若有写操作则立即执行,应与sync配合使用;
subtree:若输出目录是一个子目录,则nfs服务器将检查其父目录的权限(默认设置);
no_subtree:即使输出目录是一个子目录,nfs服务器也不检查其父目录的权限,这样可以提高效率;
例如,我们在namenode1机器上配置做如下配置
/home/dfs/nfs_share_edits/ namenode2(rw)
这个配置是把namenode1上的/home/dfs/nfs_share_edits目录设置成共享,可以给namenode2来访问,访问权限是可读写。
3 启动
sudo service portmap start
sudo service nfs start
查询状态
service portmap status
service nfs status
停止服务
service nfs stop
service portmap stop
4 客户端挂载
命令格式
mount NFS服务器IP/域名:共享目录本地挂载目录
例如,在namenode2机器上运行mount命令挂载namenode1的NFS共享目录
mkdir /home/dfs/nfs_share_edits
sudo mountnamenode1:/home/dfs/nfs_share_edits /home/dfs/nfs_share_edits
这是把namenode2把namenode1的NFS共享目录挂载到本地,这样就可以访问远程的共享目录了,挂载前需要先创建本地的挂载目录。
挂载之后,可以用mount命令查看挂载状态
sudo mount | grep -i nfs
卸载命令
sudo umount namenode1:/home/dfs/nfs_share_edits
5 相关的守护进程
nfsd
它是基本的NFS守护进程,主要功能是管理客户端是否能够登录服务器;
mountd
它是RPC安装守护进程,主要功能是管理NFS的文件系统。当客户端顺利通过nfsd登录NFS服务器后,在使用NFS服务所提供的文件前,还必须通过文件使用权限的验证。它会读取NFS的配置文件/etc/exports来对比客户端权限。
portmap
主要功能是进行端口映射工作。当客户端尝试连接并使用RPC服务器提供的服务(如NFS服务)时,portmap会将所管理的与服务对应的端口提供给客户端,从而使客户可以通过该端口向服务器请求服务。
6 相关的命令
#查看配置
exportfs
#默认查看共享的服务
showmount -e
#查看已经与客户端连接上的目录信息
showmount -a