簡介:常用的文件共享方式有ftp、nsf和samba三種,其中ftp的客戶可以是任意平臺, nfs則是面向linux/unix用戶的,而samba是專門針對windows客戶的。
SAMBA是DEC開始開發的,用于在不同的Unix機器間的資源共享,開始使用udp協議。后來基于tcp重新開發后,效率有了很大提高。它使用的協議是SMB。samba自然主要用于在windows和unix之間共享資源。資源包括文件、打印機等等。
NFS是SUN開發的,用于UNIX/LINUX機器之間的資源共享。其設置相當容易,主要是配置/etc/exports文件,然后運行exportfs -a來共享出來。現在NFS已經成為UNIX/LINUX上的標配。
FTP的目的是在Internet上共享文件而發明的一種協議,基于TCP/IP。世界上絕大多數系統都會有支持FTP的工具存在,通用性很強。
下面是三種服務器的對比情況:
服務器名稱 | 用戶客戶端平臺 | 使用范圍 | 服務端口 |
FTP | Windows/linux/unix/macOS等 | 發布網站和文件共享 | Tcp/21 |
NFS | Linux/unix | 發布網站和文件共享 | Tcp/2049 |
SAMBA | Windows | 文件共享(網上鄰居) | Tcp/445,tcp/139 |
本文主要介紹在Linux中部署NFS服務器并設置開機自動啟動nfs的過程,詳細內容請參考下文。
一、登陸Linux環境
二、安裝NFS服務
1、執行命令# yum install -y nfs-utils安裝該服務
2、啟動nfs和rpcbind服務
執行命令# systemctl start nfs和systemctl start rpcbind
3、創建需要共享的目錄
執行命令# mkdir /home/nfs/share
備注:執行mkdir加參數-p可以使用 -p 參數來創建多級文件夾。
4、設置nfs配置文件
執行指令# vim /etc/exports設置
備注:此處rw表示可讀寫,sync表示文件同時寫入硬盤和內存。
5、設置共享目錄權限
執行指令# chmod -R 777 /home/nfs/share
6、設置防火墻放行2049端口
執行指令# firewall-cmd --add-port=2049/tcp --permanent
使其生效# friewall-cmd --reload
7、重啟nfs和rpcbind服務
執行指令# systemctl restart nfs & systemctl restart rpcbind
三、客戶端訪問測試
1、創建需要掛載nfs的目錄
執行指令# # mkdir /home/attachments
2、添加遠程nfs服務的掛載目錄
執行指令# mount -t nfs 172.16.27.47:/home/nfs/share /home/attachments/
3、測試是否掛載成功
客戶端操作:
cd /home/attachments然后創建文件夾test2022
服務器端操作:
cd /home/nfs/share
執行指令ls查看能看到test2022文件夾證明掛載成功
四、設置客戶端開機自啟動nfs
1、設置/etc/rc.d/rc.local的權限
執行指令# chmod +x /etc/rc.d/rc.local
2、編寫nfs自啟動腳本
執行指令# vim /usr/local/nfsboot.sh
3、賦予nfs自啟動腳本可執行權限
執行指令# chmod +x /usr/local/nfsboot.sh
4、打開/etc/rc.d/rc.local文件,在末尾增加如下內容
5、重啟客戶端進行驗證
客戶端如下圖
服務器端如下圖
五一節辦公室要停電,機房雖有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