Linux安裝NFS全過程
一、檢測(cè)
檢查本地是否已經(jīng)安裝nfs服務(wù)
rpm -qa | grep nfs-utils rpm -qa | grep rpcbind
出現(xiàn)以下標(biāo)識(shí)說明已經(jīng)安裝
[melonrind@melonrind ~]$ rpm -qa | grep rpcbind rpcbind-0.2.0-49.el7.x86_64 [melonrind@melonrind ~]$ rpm -qa | grep nfs-utils nfs-utils-1.3.0-0.66.el7_8.x86_64
二、安裝
需要進(jìn)行目錄共享的兩臺(tái)服務(wù)器上均需要安裝
1、在線安裝
在線安裝可以安裝nfs-utils及其依賴
yum install nfs-utils -y
2、離線安裝
需要先在可以聯(lián)網(wǎng)的環(huán)境中下載nfs-utils及其依賴包
#該命令需要root權(quán)限 yum -y install nfs-utils --downloadonly --downloaddir /home/melonrind/nfspackages #最終顯示以下信息說明所有依賴包已經(jīng)下載完成 依賴關(guān)系解決 =========================================================================================== Package 架構(gòu) 版本 源 大小 =========================================================================================== 正在安裝: nfs-utils x86_64 1:1.3.0-0.68.el7.2 updates 413 k 為依賴而安裝: gssproxy x86_64 0.7.0-30.el7_9 updates 111 k keyutils x86_64 1.5.8-3.el7 base 54 k libbasicobjects x86_64 0.1.1-32.el7 base 26 k libcollection x86_64 0.7.0-32.el7 base 42 k libevent x86_64 2.0.21-4.el7 base 214 k libini_config x86_64 1.3.1-32.el7 base 64 k libnfsidmap x86_64 0.25-19.el7 base 50 k libpath_utils x86_64 0.2.1-32.el7 base 28 k libref_array x86_64 0.1.5-32.el7 base 27 k libtirpc x86_64 0.2.4-0.16.el7 base 89 k libverto-libevent x86_64 0.2.5-4.el7 base 8.9 k quota x86_64 1:4.01-19.el7 base 179 k quota-nls noarch 1:4.01-19.el7 base 90 k rpcbind x86_64 0.2.0-49.el7 base 60 k tcp_wrappers x86_64 7.6-77.el7 base 78 k 事務(wù)概要 =========================================================================================== 安裝 1 軟件包 (+15 依賴軟件包) 總下載量:1.5 M 安裝大?。?.3 M Background downloading packages, then exiting: (1/16): libbasicobjects-0.1.1-32.el7.x86_64.rpm | 26 kB 00:00:00 (2/16): gssproxy-0.7.0-30.el7_9.x86_64.rpm | 111 kB 00:00:00 (3/16): keyutils-1.5.8-3.el7.x86_64.rpm | 54 kB 00:00:00 (4/16): libcollection-0.7.0-32.el7.x86_64.rpm | 42 kB 00:00:00 (5/16): libpath_utils-0.2.1-32.el7.x86_64.rpm | 28 kB 00:00:00 (6/16): libtirpc-0.2.4-0.16.el7.x86_64.rpm | 89 kB 00:00:00 (7/16): libverto-libevent-0.2.5-4.el7.x86_64.rpm | 8.9 kB 00:00:00 (8/16): libini_config-1.3.1-32.el7.x86_64.rpm | 64 kB 00:00:00 (9/16): libnfsidmap-0.25-19.el7.x86_64.rpm | 50 kB 00:00:00 (10/16): nfs-utils-1.3.0-0.68.el7.2.x86_64.rpm | 413 kB 00:00:00 (11/16): quota-4.01-19.el7.x86_64.rpm | 179 kB 00:00:00 (12/16): tcp_wrappers-7.6-77.el7.x86_64.rpm | 78 kB 00:00:00 (13/16): libref_array-0.1.5-32.el7.x86_64.rpm | 27 kB 00:00:05 (14/16): rpcbind-0.2.0-49.el7.x86_64.rpm | 60 kB 00:00:05 (15/16): quota-nls-4.01-19.el7.noarch.rpm | 90 kB 00:00:05 (16/16): libevent-2.0.21-4.el7.x86_64.rpm | 214 kB 00:00:09 ------------------------------------------------------------------------------------------- 總計(jì) 156 kB/s | 1.5 MB 00:00:09 exiting because "Download Only" specified
一共16個(gè)rpm包
在當(dāng)前下載目錄進(jìn)行安裝
[root@melonrind nfspackages]# rpm -ivh *.rpm --force --nodeps 準(zhǔn)備中... ################################# [100%] 正在升級(jí)/安裝... 1:libtirpc-0.2.4-0.16.el7 ################################# [ 6%] 2:rpcbind-0.2.0-49.el7 ################################# [ 13%] 3:libref_array-0.1.5-32.el7 ################################# [ 19%] 4:libevent-2.0.21-4.el7 ################################# [ 25%] 5:libcollection-0.7.0-32.el7 ################################# [ 31%] 6:libbasicobjects-0.1.1-32.el7 ################################# [ 38%] 7:libverto-libevent-0.2.5-4.el7 ################################# [ 44%] 8:tcp_wrappers-7.6-77.el7 ################################# [ 50%] 9:quota-nls-1:4.01-19.el7 ################################# [ 56%] 10:quota-1:4.01-19.el7 ################################# [ 63%] 11:libpath_utils-0.2.1-32.el7 ################################# [ 69%] 12:libini_config-1.3.1-32.el7 ################################# [ 75%] 13:gssproxy-0.7.0-30.el7_9 ################################# [ 81%] 14:libnfsidmap-0.25-19.el7 ################################# [ 88%] 15:keyutils-1.5.8-3.el7 ################################# [ 94%] 16:nfs-utils-1:1.3.0-0.68.el7.2 ################################# [100%] [root@melonrind nfspackages]# rpm -qa|grep rpcbind rpcbind-0.2.0-49.el7.x86_64 [root@melonrind nfspackages]# rpm -qa|grep nfs libnfsidmap-0.25-19.el7.x86_64 nfs-utils-1.3.0-0.68.el7.2.x86_64
三、配置NFS(服務(wù)端)
在配置時(shí),分為服務(wù)端和客戶端。服務(wù)端即被共享的服務(wù)器,共享的文件真實(shí)存在在此服務(wù)器上;客戶端即共享服務(wù)器,共享目錄指向服務(wù)端目錄。
1、創(chuàng)建共享目錄(兩臺(tái)服務(wù)器)
[root@melonrind data]# mkdir share [root@melonrind data]# cd share/ [root@melonrind share]# ll 總用量 0 [root@melonrind share]# pwd /data/share [root@melonrind share]#
2、服務(wù)端配置共享目錄
[root@rocketmq-nameserver1 share]# vi /etc/exports
添加共享命令
/data/share/ 192.168.72.163(rw,sync,no_root_squash,no_all_squash)
參數(shù)說明:
/data/share/: 共享目錄 192.168.72.163: 客戶端IP ro:共享目錄只讀; rw:共享目錄可讀可寫; all_squash:所有訪問用戶都映射為匿名用戶或用戶組; no_all_squash(默認(rèn)):訪問用戶先與本機(jī)用戶匹配,匹配失敗后再映射為匿名用戶或用戶組; root_squash(默認(rèn)):將來訪的root用戶映射為匿名用戶或用戶組; no_root_squash:來訪的root用戶保持root帳號(hào)權(quán)限; anonuid=<UID>:指定匿名訪問用戶的本地用戶UID,默認(rèn)為nfsnobody(65534); anongid=<GID>:指定匿名訪問用戶的本地用戶組GID,默認(rèn)為nfsnobody(65534); secure(默認(rèn)):限制客戶端只能從小于1024的tcp/ip端口連接服務(wù)器; insecure:允許客戶端從大于1024的tcp/ip端口連接服務(wù)器; sync:將數(shù)據(jù)同步寫入內(nèi)存緩沖區(qū)與磁盤中,效率低,但可以保證數(shù)據(jù)的一致性; async:將數(shù)據(jù)先保存在內(nèi)存緩沖區(qū)中,必要時(shí)才寫入磁盤; wdelay(默認(rèn)):檢查是否有相關(guān)的寫操作,如果有則將這些寫操作一起執(zhí)行,這樣可以提高效率; no_wdelay:若有寫操作則立即執(zhí)行,應(yīng)與sync配合使用; subtree_check(默認(rèn)) :若輸出目錄是一個(gè)子目錄,則nfs服務(wù)器將檢查其父目錄的權(quán)限; no_subtree_check :即使輸出目錄是一個(gè)子目錄,nfs服務(wù)器也不檢查其父目錄的權(quán)限,這樣可以提高效率;
四、啟動(dòng)服務(wù)端
[root@rocketmq-nameserver1 share]# systemctl status rpcbind ● rpcbind.service - RPC bind service Loaded: loaded (/usr/lib/systemd/system/rpcbind.service; indirect; vendor preset: enabled) Active: inactive (dead) [root@rocketmq-nameserver1 share]# systemctl enable rpcbind [root@rocketmq-nameserver1 share]# systemctl start rpcbind [root@rocketmq-nameserver1 share]# systemctl status rpcbind ● rpcbind.service - RPC bind service Loaded: loaded (/usr/lib/systemd/system/rpcbind.service; indirect; vendor preset: enabled) Active: active (running) since 五 2021-12-24 11:20:57 CST; 3s ago Process: 24325 ExecStart=/sbin/rpcbind -w $RPCBIND_ARGS (code=exited, status=0/SUCCESS) Main PID: 24326 (rpcbind) CGroup: /system.slice/rpcbind.service └─24326 /sbin/rpcbind -w 12月 24 11:20:57 rocketmq-nameserver1 systemd[1]: Starting RPC bind service... 12月 24 11:20:57 rocketmq-nameserver1 systemd[1]: Started RPC bind service. [root@rocketmq-nameserver1 share]# systemctl status nfs-server ● nfs-server.service - NFS server and services Loaded: loaded (/usr/lib/systemd/system/nfs-server.service; disabled; vendor preset: disabled) Active: inactive (dead) [root@rocketmq-nameserver1 share]# systemctl enable nfs-server Created symlink from /etc/systemd/system/multi-user.target.wants/nfs-server.service to /usr/lib/systemd/system/nfs-server.service. [root@rocketmq-nameserver1 share]# systemctl start nfs-server [root@rocketmq-nameserver1 share]# systemctl status nfs-server ● nfs-server.service - NFS server and services Loaded: loaded (/usr/lib/systemd/system/nfs-server.service; enabled; vendor preset: disabled) Active: active (exited) since 五 2021-12-24 11:23:20 CST; 3s ago Process: 24724 ExecStart=/usr/sbin/rpc.nfsd $RPCNFSDARGS (code=exited, status=0/SUCCESS) Process: 24720 ExecStartPre=/usr/sbin/exportfs -r (code=exited, status=0/SUCCESS) Main PID: 24724 (code=exited, status=0/SUCCESS) CGroup: /system.slice/nfs-server.service 12月 24 11:23:20 rocketmq-nameserver1 systemd[1]: Starting NFS server and services... 12月 24 11:23:20 rocketmq-nameserver1 systemd[1]: Started NFS server and services. [root@rocketmq-nameserver1 share]#
啟動(dòng)后查看共享是否成功
[root@rocketmq-nameserver1 share]# showmount -e localhost Export list for localhost: /data/share 192.168.72.163
顯示剛才配置的共享目錄和IP說明共享生效
五、客戶端配置
1、查看遠(yuǎn)程共享服務(wù)器是否共享成功
[root@melonrind share]# showmount -e 192.168.72.81 Export list for 192.168.72.81: /data/share 192.168.72.163
這里查看時(shí)連接的是遠(yuǎn)程服務(wù)端IP
2、啟動(dòng)客戶端服務(wù)
[root@melonrind share]# systemctl status rpcbind ● rpcbind.service - RPC bind service Loaded: loaded (/usr/lib/systemd/system/rpcbind.service; enabled; vendor preset: enabled) Active: active (running) since 四 2021-09-30 09:14:18 CST; 2 months 24 days ago Process: 773 ExecStart=/sbin/rpcbind -w $RPCBIND_ARGS (code=exited, status=0/SUCCESS) Main PID: 774 (rpcbind) Tasks: 1 CGroup: /system.slice/rpcbind.service └─774 /sbin/rpcbind -w 9月 30 09:14:18 melonrind.ora systemd[1]: Starting RPC bind service... 9月 30 09:14:18 melonrind.ora systemd[1]: Started RPC bind service. [root@melonrind share]# systemctl status nfs-server ● nfs-server.service - NFS server and services Loaded: loaded (/usr/lib/systemd/system/nfs-server.service; disabled; vendor preset: disabled) Active: inactive (dead) [root@melonrind share]# systemctl enable nfs-server Created symlink from /etc/systemd/system/multi-user.target.wants/nfs-server.service to /usr/lib/systemd/system/nfs-server.service. [root@melonrind share]# systemctl start nfs-server [root@melonrind share]# systemctl status nfs-server ● nfs-server.service - NFS server and services Loaded: loaded (/usr/lib/systemd/system/nfs-server.service; enabled; vendor preset: disabled) Active: active (exited) since 五 2021-12-24 11:29:50 CST; 3s ago Process: 31978 ExecStartPost=/bin/sh -c if systemctl -q is-active gssproxy; then systemctl reload gssproxy ; fi (code=exited, status=0/SUCCESS) Process: 31961 ExecStart=/usr/sbin/rpc.nfsd $RPCNFSDARGS (code=exited, status=0/SUCCESS) Process: 31959 ExecStartPre=/usr/sbin/exportfs -r (code=exited, status=0/SUCCESS) Main PID: 31961 (code=exited, status=0/SUCCESS) Tasks: 0 CGroup: /system.slice/nfs-server.service 12月 24 11:29:50 melonrind.ora systemd[1]: Starting NFS server and services... 12月 24 11:29:50 melonrind.ora systemd[1]: Started NFS server and services.
3、掛載共享目錄
mount -t nfs -o nolock 192.168.72.81:/data/share /data/share
說明:mount -t nfs -o nolock 服務(wù)端IP:共享目錄絕對(duì)路徑 本地掛載目錄
4、查看掛載結(jié)果
[root@melonrind share]# df -Th 文件系統(tǒng) 類型 容量 已用 可用 已用% 掛載點(diǎn) devtmpfs devtmpfs 1.8G 0 1.8G 0% /dev tmpfs tmpfs 1.8G 672M 1.2G 37% /dev/shm tmpfs tmpfs 1.8G 91M 1.7G 5% /run tmpfs tmpfs 1.8G 0 1.8G 0% /sys/fs/cgroup /dev/mapper/centos-root xfs 100G 33G 68G 33% / /dev/sda2 xfs 1014M 226M 789M 23% /boot /dev/sda1 vfat 1022M 12M 1011M 2% /boot/efi /dev/mapper/centos-var xfs 10G 4.1G 6.0G 41% /var /dev/mapper/centos-home xfs 812G 98G 714G 12% /home tmpfs tmpfs 366M 8.0K 366M 1% /run/user/42 tmpfs tmpfs 366M 0 366M 0% /run/user/1002 tmpfs tmpfs 366M 0 366M 0% /run/user/0 tmpfs tmpfs 366M 0 366M 0% /run/user/1000 192.168.72.81:/data/share nfs4 400G 239G 162G 60% /data/share
可以看到遠(yuǎn)程目錄已經(jīng)掛載
5、將掛載功能加入開機(jī)自啟動(dòng)
vi /etc/fstab #在文件末尾添加一句命令 192.168.72.81:/data/share /data/share nfs defaults 0 0
六、測(cè)試共享
1、在服務(wù)端共享目錄中創(chuàng)建一個(gè)文件test
[root@rocketmq-nameserver1 share]# ll 總用量 0 [root@rocketmq-nameserver1 share]# touch test [root@rocketmq-nameserver1 share]# vi test [root@rocketmq-nameserver1 share]# ll 總用量 4 -rw-r--r-- 1 root root 7 12月 24 11:35 test [root@rocketmq-nameserver1 share]# pwd /data/share
2、再去客戶端共享目錄中查看
[root@melonrind share]# cd /data/share/ [root@melonrind share]# ll 總用量 0 [root@melonrind share]# ll 總用量 4 -rw-r--r-- 1 root root 7 12月 24 11:35 test [root@melonrind share]# pwd /data/share
已經(jīng)可以看到共享的文件了
總結(jié)
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
linux下查看yum/rpm/dpkg某軟件是否已安裝的方法
這篇文章主要介紹了在linux下查看yum/rpm/dpkg某軟件是否已安裝的方法,文中給出了詳細(xì)的示例代碼,對(duì)大家具有一定的參考價(jià)值,需要的朋友們下面來一起看看吧。2017-03-03PHP程序員玩轉(zhuǎn)Linux系列 自動(dòng)備份與SVN
這篇文章主要為大家詳細(xì)介紹了PHP程序員玩轉(zhuǎn)Linux系列文章,學(xué)習(xí)自動(dòng)備份與SVN教程,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-04-04在 Linux 系統(tǒng)中手動(dòng)滾動(dòng)日志的方法
使用 logrotate 命令可以手動(dòng)執(zhí)行日志滾動(dòng)的操作。本文將要介紹的就是手動(dòng)進(jìn)行日志滾動(dòng)的方法,通過實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友參考下吧2020-03-03一條命令讓你明白shell中read命令的常用參數(shù)
今天小編就為大家分享一篇關(guān)于一條命令讓你明白shell中read命令的常用參數(shù),小編覺得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來看看吧2019-03-03Linux printf如何將十進(jìn)制轉(zhuǎn)換為十六進(jìn)制
文章總結(jié):介紹了十進(jìn)制、十六進(jìn)制和八進(jìn)制之間的轉(zhuǎn)換方法,包括使用\b命令和bc工具進(jìn)行轉(zhuǎn)換的技巧2024-12-12Linux利用firewalld和iptables實(shí)現(xiàn)IP端口限制與開放
在服務(wù)器管理中,防火墻是保護(hù)系統(tǒng)安全的重要工具,通常,我們可能會(huì)關(guān)閉firewalld,但在某些情況下,我們需要利用firewalld或iptables來限制IP請(qǐng)求,本文將詳細(xì)介紹如何使用firewalld和iptables來實(shí)現(xiàn)IP端口限制與開放,需要的朋友可以參考下2025-02-02