Ⅰ 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