linux入門系列16--文件共享之Samba和NFS

前一篇文章「linux入門系列15--文件傳輸之vsftp服務」講解了文件傳輸,本篇繼續講解文件共享相關知識。node

文件共享在生活和工做中很是常見,好比同一團隊中不一樣成員須要共同維護同一個文檔,在windows環境下,一般會選用第三方協做工具,如騰訊文檔,石墨文檔等等。linux

以前講解了基於ftp的文件傳輸,爲什麼還會單獨講解文件共享呢?試想一下,假如咱們要修改服務器上某個文件,若是使用ftp的話,須要先下載下來進行修改,而後在上傳到服務器。這樣是很繁瑣的,這時候就可使用文件共享來解決這個問題。數據庫

文件傳輸和文件共享有本質的區別,基於ftp協議的文件傳輸能夠實現不一樣機器之間文件的傳輸和拷貝,會產生多個副本。而文件共享則只有一個副本,各個客戶端鏈接到共享服務器操做的是同一份文件。vim

Linux環境下能夠經過Samba服務或NFS服務來實現文件共享,下面分別進行介紹。windows

1、文件共享服務Samba

1.1 Samba概述

爲了解決局域網內的文件和打印機等資源的共享問題,微軟和英特爾與1987年共同制定了 SMB(Server Messages Block,服務器消息塊)協議,這使得多個主機之間共享文件變得簡單。centos

到了1991年,一個國外牛逼大學生 爲了解決 Linux 系統 與 Windows 系統之間的文件共享問題,基於SMB協議開發出了SMBServer服務程序。它是一款開源的文件共享軟件、只須要簡單的配置就能實現文件共享。安全

後來做者把它註冊商標爲Samba,它**如今已經成爲Linux系統和Windows系統之間共享文件的最佳選擇**。服務器

1.2 Samba安裝及配置文件

安裝以前規劃並準備實驗環境網絡

角色 操做系統 ip地址 主機名稱
Samba服務器 Centos7 192.168.78.101 sambaserver
Samba客戶端 Centos7 192.168.78.102 cliet
Samba客戶端 Windows10 宿主機便可

Samba服務程序的名字就是軟件包的名字,安裝後的服務名叫smb,在sambaserver主機上,經過rpm名稱查看系統是否已經安裝,若是沒有安裝則經過Yum軟件倉庫進行安裝。app

[root@sambaserver ~]# rpm -q samba
package samba is not installed
[root@sambaserver ~]# yum install samba
Loaded plugins: fastestmirror, langpacks
...省略部份內容
Installed:
  samba.x86_64 0:4.1.1-31.el7                                               
Complete!
[root@sambaserver yum.repos.d]# ^C
[root@sambaserver yum.repos.d]# rpm -q samba
samba-4.1.1-31.el7.x86_64
[root@sambaserver yum.repos.d]#

安裝完成成後,配置文件所在目錄爲:/etc/samba/,主配置文件爲:smb.conf

[root@sambaserver yum.repos.d\]# ll /etc/samba/  
total 20  
-rw-r--r--. 1 root root    20 Dec  3 01:48 lmhosts  
-rw-r--r--. 1 root root   706 Dec  3 01:48 smb.conf  
-rw-r--r--. 1 root root 11327 Dec  3 01:48 smb.conf.example  
[root@sambaserver yum.repos.d\]#

接下來咱們看下配置文件裏的主要內容,仍是按「linux入門系列15--文件傳輸之vsftp服務」中的2.4.1提到的老規矩,將註釋以及空行信息去掉,便於觀察配置項。

[root@sambaserver yum.repos.d\]# mv /etc/samba/smb.conf /etc/samba/smb.conf.bak  
[root@sambaserver yum.repos.d\]# cat /etc/samba/smb.conf.bak | grep -v "#" |grep  -v ";" | grep -v "^$">/etc/samba/smb.conf

以上腳本經過grep命令-v參數反向選擇,去掉以#和分號開頭的註釋信息,用^$過濾掉空白行,過濾無用信息後經過重定向覆寫到原始配置文件中。

接下來看看主配置文件的內容:

[root@sambaserver yum.repos.d\]# cat /etc/samba/smb.conf  
[global\]  
 workgroup = SAMBA #工做組名稱  
 security = user  #安全驗證的方式,總共有4種:share、user、server、domain  
 passdb backend = tdbsam #定義用戶後臺的類型,共有3種:smbpasswd、tdsam、ldapsam  
 printing = cups   
 printcap name = cups  
 load printers = yes #設置在 Samba 服務啓動時是否共享打印機設備  
 cups options = raw  #打印機的選項  
[homes\]  #共享參數  
 comment = Home Directories #描述信息  
 valid users = %S, %D%w%S  
 browseable = No #指定共享信息是否在「網上鄰居」中可見  
 read only = No  
 inherit acls = Yes  
[printers\] #打印機共享參數  
 comment = All Printers  
 path = /var/tmp  
 printable = Yes  
 create mask = 0600  
 browseable = No  
[print$\]  
 comment = Printer Drivers  
 path = /var/lib/samba/drivers  
 write list = @printadmin root  
 force group = @printadmin  
 create mask = 0664  
 directory mask = 0775  
[root@sambaserver yum.repos.d\]#

我直接把註釋添加到每項配置的後邊,方便查看。

其中[homes]參數爲來訪用戶的家目錄共享信息,[printers]參數爲共享的打 印機設備,若是不須要能夠手動直接刪除便可。

1.3 Samba文件共享實操

經過前文能夠看到,Samba服務程序的主配置文件包括全局配置參數和區域配置參數。顧名思義,全局配置參數用於設置總體的資源共享環境,對每個獨立的共享資源都有效;而區域配置參數則用於設置單獨的共享資源,且只對該資源有效。

下面咱們就來配置並使用Samba服務

1.3.1 文件共享服務器配置

(1)Samba主配置文件配置

[root@sambaserver yum.repos.d\]# cd /etc/samba/  
[root@sambaserver samba\]# vim smb.conf  
...省略原有內容  
[database\]   #共享名稱設爲database  
 comment=請勿隨意修改數據庫喲  #提示信息  
 path=/home/database  #共享目錄/home/database  
 public=no    #關閉全部人可見  
 writeable=yes #容許寫入操做

添加以上內容並保存退出。

補充一下主配置文件中全局配置global的2個參數,security和passdb backend 。

從1.2中講到的主配置文件中能夠看出,它們的默認值分別爲user和tdbsam。

其中security有4種安裝認證方式,分別以下:

  • share:來訪主機無需驗證口令,比較方便,但安全性不好

  • user:需驗證來訪主機提供的口令後才能夠訪問,提高了安全性

  • server:使用獨立的遠程主機驗證來訪主機提供的口令(集中管理帳戶)

  • domain:使用域控制器進行身份驗證

passdb backend有3種方式,定義用戶後臺的類型:

  • smbpasswd:使用 smbpasswd 命令爲系統用戶設置 Samba 服務程序的密碼

  • tdbsam:建立數據庫文件並使用 pdbedit 命令創建 Samba 服務程序的用戶

  • ldapsam:基於 LDAP 服務進行帳戶驗證

接下來咱們就採用默認的user驗證模式來進行設置,其餘模式的搭配使用暫時不作講解。

(2)建立訪問共享資源的帳號

從默認配置文件中能夠看出,在RHEL7中Samba採用默認的user認證模式,能夠確保僅讓有密碼且受信任的用戶訪問共享資源,須要先創建帳戶信息數據庫,而且要求帳戶必須在當前系統中已經存在。

與前文講解ftp時相似,要求用戶在當前系統中已經存在,是爲了不在建立文件時引發文件權限屬性混亂而引起錯誤。

用於管理 SMB 服務程序的帳戶信息數據庫的命令爲:pdbedit。

語法格式:

pdbedit [參數] 帳戶

參數:

參數 做用
-a 創建Samba用戶
-x 刪除Samba用戶
-L 列出帳戶列表
-Lv 列出帳戶詳細信息的列表

先建立用戶samba,並設置密碼爲:123456

[root@sambaserver samba\]# useradd -s /sbin/nologin samba  
[root@sambaserver samba\]# passwd samba   
Changing password for user samba.  
New password:   
BAD PASSWORD: The password is shorter than 8 characters  
Retype new password:   
passwd: all authentication tokens updated successfully.  
[root@sambaserver samba\]# id samba  
uid=1001(samba) gid=1001(samba) groups=1001(samba)  
[root@sambaserver samba\]#

使用功能pdbedit建立samba服務的用戶,密碼爲888888(注意此處的密碼不是samba系統用戶登陸的密碼,雖然也能夠設置密碼給以前密碼相同,但必定要分清楚這2個密碼是單獨的,不要弄混淆

[root@sambaserver samba\]# pdbedit -a -u samba  
new password: #此處輸入密碼,密碼不必定要給samba用戶登陸系統的密碼一致  
retype new password: #重複輸入密碼  
Unix username:        samba  
NT username:            
Account Flags:        \[U          \]  
User SID:             S-1-5-21-3641161961-465911512-1567372236-1000  
Primary Group SID:    S-1-5-21-3641161961-465911512-1567372236-513  
Full Name:              
Home Directory:       \\\sambaserver\\samba  
HomeDir Drive:          
Logon Script:   
Profile Path:         \\\sambaserver\\samba\\profile  
Domain:               SAMBASERVER  
Account desc:   
Workstations:   
Munged dial:            
Logon time:           0  
Logoff time:          Wed, 06 Feb 2036 23:06:39 CST  
Kickoff time:         Wed, 06 Feb 2036 23:06:39 CST  
Password last set:    Wed, 22 Jan 2020 14:45:50 CST  
Password can change:  Wed, 22 Jan 2020 14:45:50 CST  
Password must change: never  
Last bad password   : 0  
Bad password count  : 0  
Logon hours         : FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF  
[root@sambaserver samba\]#

(3)建立共享資源的目錄

在前面的第一步中咱們配置了共享目錄爲/home/database。所以咱們來建立此目錄,須要考慮到文件讀寫權限問題。

[root@sambaserver samba\]# mkdir /home/database  
[root@sambaserver samba\]# chown -Rf samba:samba /home/database/  
[root@sambaserver samba\]#

(4)SELinux上下文和策略設置

因爲/home目錄是系統中普通用戶的家目錄,所以不只要考慮文件讀寫權限,還要注意SELinux安全上下文以及域策略所帶來的限制(原始的主配置文件中有關於SELinux安全上下文策略的配置說明)。

設置SELinux安全上下文

[root@sambaserver samba\]# semanage fcontext -a -t samba\_share\_t /home/database  
[root@sambaserver samba\]# restorecon -Rv /home/database/  
restorecon reset /home/database context unconfined\_u:object\_r:home\_root\_t:s0->unconfined\_u:object\_r:samba\_share\_t:s0  
[root@sambaserver samba\]#

除了設置上下文,還須要設置SELinux域相關策略,開啓相關的策略便可

[root@sambaserver samba\]# getsebool -a |grep samba  
samba\_create\_home_dirs --> off  
samba\_domain\_controller --> off  
samba\_enable\_home_dirs --> off  
samba\_export\_all_ro --> off  
samba\_export\_all_rw --> off  
samba_portmapper --> off  
samba\_run\_unconfined --> off  
samba\_share\_fusefs --> off  
samba\_share\_nfs --> off  
sanlock\_use\_samba --> off  
use\_samba\_home_dirs --> off  
virt\_sandbox\_use_samba --> off  
virt\_use\_samba --> off  
[root@sambaserver samba\]# setsebool -P samba\_enable\_home_dirs on  
[root@sambaserver samba\]#

(5)防火牆設置

samba服務名稱爲smb,重啓並設爲開機啓動,清空防火牆策略

[root@sambaserver samba\]# systemctl restart smb  
[root@sambaserver samba\]# systemctl enable smb.service   
Created symlink from /etc/systemd/system/multi-user.target.wants/smb.service to /usr/lib/systemd/system/smb.service.  
[root@sambaserver samba\]# iptables -F

至此,就能夠用客戶端使用samba服務實現文件共享了

先在共享目錄準備一個文件用於客戶端共享

[root@sambaserver home\]# cd database/  
[root@sambaserver database\]# ll  
total 0  
[root@sambaserver database\]# echo "samba server">samba.txt  
[root@sambaserver home\]# chown -Rf samba:samba /home/database/  
[root@sambaserver database\]# ll  
total 4  
-rw-r--r--. 1 samba samba 13 Jan 22 15:44 samba.txt

這樣客戶端就能夠查看並編輯此共享文件了。

Samba支持Windows、Linux、macOS之間文件共享,接下來演示客戶端是Linux和Windows的狀況。

1.3.2 Linux客戶端訪問文件共享服務

在以前準備的samba客戶端主機上安裝客戶端後,用以前的samba帳號密碼就能夠共享文件了。

(1)安裝共享客戶端

[root@cliet ~\]# yum install cifs-utils  
Loaded plugins: fastestmirror, langpacks  
Loading mirror speeds from cached hostfile  
...省略部份內容  
Installed:  
 cifs-utils.x86_64 0:6.2-10.el7  
Complete!  
[root@cliet ~\]#

(2)建立認證文件

[root@cliet ~\]# vim auth.smb  
username=samba  
password=888888  
domain=SAMBA

保存並退出,用戶密碼爲以前1.3.1第二步中建立的samba用戶及對應的密碼,domain爲主配置文件中的域。

爲了保證不被其餘人隨意看到,最後把這個認證文件的權限修改成僅root管理纔可以讀寫。

[root@cliet ~\]# ll auth.smb   
-rw-r--r--. 1 root root 44 Jan 22 15:37 auth.smb  
[root@cliet ~\]# chmod 600 auth.smb   
[root@cliet ~\]# ll auth.smb          
-rw-------. 1 root root 44 Jan 22 15:37 auth.smb  
[root@cliet ~\]#

(3)本地建立目錄掛載Samba共享目錄

[root@cliet ~\]# mkdir /database  
[root@cliet ~\]# vim /etc/fstab   
//192.168.78.101/database /database cifs credentials=/root/auth.smb 0 0  
#保存並退出  
[root@cliet ~\]# mount -a

這樣就能夠查看並修改共享服務器內的內容

[root@cliet ~\]# ll /database/  
total 4  
-rw-r--r--. 1 root root 13 Jan 22 15:44 samba.txt  
[root@cliet ~\]# cat /database/samba.txt   
samba server  
[root@cliet ~\]#
1.3.3 Windows訪問文件共享服務

本演示以win10爲例

在開始菜單輸入共享服務器地址

在彈出彈出登陸框輸入正確的帳號密碼

進入共享目錄

進入目錄後,就能夠執行查看、寫入、改名、刪除文件等操做,在samba服務器和對應的其餘客戶端就能夠看到文件的變化。所以就實現了文件共享。

2、網絡文件系統NFS

若是你只是在Linux主機之間共享文件,那NFS將更加簡單。

NFS(Network File System即網絡文件系統)服務能夠將遠程 Linux 系統上的文件共享資源掛載到本地主機的目錄上,從而使得客戶端基於TCP/IP協議,像使用本地主機上的資源同樣讀寫遠程Linux系統上的共享文件。

虛擬機準備,能夠單獨新克隆兩臺虛擬機,此處我就直接用原來的2臺機器,只是要注意爲了不上一實驗的干擾,將以前的Samba客戶端做爲nfs的服務器,將Samba服務器看成nfs的客戶端。規劃以下:

角色 操做系統 ip地址 主機名稱
NFS客戶端 Centos7 192.168.78.101 sambaserver
NFS服務器 Centos7 192.168.78.102 cliet

2.1 NFS服務器配置

(1)安裝NFS

RHEL7系統中默認已經安裝了NFS服務,能夠經過rpm命令查看,固然也能夠直接執行以下安裝命令,若是有新的包會自動更新,若是已經是最新版本則提示Nothing to do。

[root@cliet ~\]# rpm -q nfs-utils  
nfs-utils-1.3.0-0.65.el7.x86_64  
[root@cliet ~\]# yum install nfs-utils  
Loaded plugins: fastestmirror, langpacks  
Loading mirror speeds from cached hostfile  
 \* base: mirrors.aliyun.com  
 \* extras: mirrors.aliyun.com  
 \* updates: mirrors.aliyun.com  
Package 1:nfs-utils-1.3.0-0.65.el7.x86_64 already installed and latest version  
Nothing to do  
[root@cliet ~\]#

NFS包名爲nfs-utils。

(2)在NFS服務器建立共享目錄

[root@cliet ~\]# mkdir /nfs  
[root@cliet ~\]# chmod -Rf 777 /nfs/  
[root@cliet ~\]# echo "nfs server">/nfs/nfs.txt  
[root@cliet ~\]# chmod -Rf 777 /nfs/  
[root@cliet ~\]# ll /nfs/   
total 4  
-rwxrwxrwx. 1 root root 11 Jan 22 23:11 nfs.txt  
[root@cliet ~\]#

建立目錄,修改權限,並建立共享文件。

(3)NFS服務配置

NFS服務程序配置文件爲/etc/exports,默認爲空。採用以下格式定義要共享的目錄和相應的權限。

格式:共享目錄的路徑 容許訪問的 NFS 客戶端(共享權限參數)

相關參數及做用以下

參數 做用
ro 只讀
rw 讀寫
root_squash 當NFS客戶端以root管理員訪問時,映射爲NFS服務器的匿名用戶
no_root_squash 當 NFS客戶端以root管理員訪問時,映射爲NFS服務器的root管理員
all_squash 不管NFS客戶端使用什麼帳戶訪問,均映射爲NFS服務器的匿名用戶
sync 同時將數據寫入到內存與硬盤中,保證不丟失數據
async 優先將數據保存到內存,而後再寫入硬盤;這樣效率更高,但可能會 丟失數據

按上邊的語法格式,把第一步建立的nfs目錄共享給192.168.78.0/24網段內的全部主機,讓這些主機都有讀寫權限。爲了最大限度保證數據不丟失,在將數據寫入到NFS服務器的硬盤中後纔會結束操做,同時把來訪客戶端root管理員映射爲本地的匿名用戶,配置以下:

[root@cliet ~\]# vim /etc/exports  
/nfs 192.168.78.*(rw,sync,root_squash)

保存並退出,注意ip地址與權限之間沒有空格。

(4)設置防火牆策略

直接清空iptables防火牆的默認策略,以避免默認的防火牆策 略禁止正常的NFS共享服務。

[root@cliet ~\]# iptables -F

(5)啓動NFS服務程序

[root@cliet ~\]# systemctl restart rpcbind  
[root@cliet ~\]# systemctl enable rpcbind  
[root@cliet ~\]# systemctl start nfs-server  
[root@cliet ~\]# systemctl enable nfs-server

在使用NFS服務進行文件共享以前,須要使用RPC(Remote Procedure Call,遠程過程調用)服務將NFS服務器的I 地址和端口號等信息發送給客戶端。

所以,在啓動NFS服務以前,還須要重啓並啓用 rpcbind 服務程序,並將這兩個服務一併加入開機啓動項中。

至此NFS服務器端配置完成,接下來配置NFS客戶端。

2.2 NFS客戶端使用

(1)查看NFS服務器

查看NFS服務器遠程共享信息使用showmount命令。

語法:

showmount [參數] 服務器ip

參數:

參數 做用
-e 顯示NFS服務器的共享列表
-a 顯示本機掛載的文件資源的狀況
-v 顯示版本號

輸出格式爲:「共享的目錄名稱 容許使用客戶端地址」

[root@sambaserver database\]# showmount -e 192.168.78.102 Export list for 192.168.78.102: /nfs 192.168.78.* [root@sambaserver database\]#

(2)建立目錄並掛載

[root@sambaserver database\]# mkdir /nfs [root@sambaserver database\]# mount -t nfs 192.168.78.102:/nfs /nfs [root@sambaserver database\]# ll /nfs/ total 4 -rwxrwxrwx. 1 root root 11 Jan 22 23:11 nfs.txt

使用mount命令並結合-t 參數,指定要掛載的文件系統的類型爲nfs,並在命令後面寫上服務器的 IP地址、服務器上的共享目錄以及要掛載到本地系統的目錄/nfs,這樣就能夠看到共享的目錄文件了。

(3)掛載信息持久化

爲了保證上一步驟的掛載能一直生效,須要將其寫入到fstab文件中。

[root@sambaserver database\]# vim /etc/fstab ...省略無關內容 192.168.78.102:/nfs /nfs nfs defaults 0 0

這樣就在本地完成了服務器的文件共享。

3、自動掛載服務autofs

3.1 autofs概述

不管是以前講解本地yum源的安裝仍是本文講解的Samba和NFS服務,都須要將掛載信息接入到/etc/fstab文件中,這樣纔會使共享資源自動隨服務器開機而進行掛載。

可是若是掛載的遠程資源太多,則會給網絡帶寬和硬件資源帶來很大的壓力。若是掛載後長期不使用,會形成資源的浪費。

爲了避免形成浪費,能夠在每次須要使用才纔去手動掛載,可是這樣操做又很是繁瑣。爲了解決這個問題,autofs自動掛載服務應運而生。

與mount命令不一樣,autofs服務程序是一 種Linux系統守護進程,當檢測到用戶視圖訪問一個還沒有掛載的文件系統時,將自動掛載該文件系統。

簡單說就是,將掛載信息寫入/etc/fstab文件後,系統在每次開機時都自動將其掛載,而autofs 服務程序則是在用戶須要使用該文件系統時纔去動態掛載,從而節約了網絡資源和服務器的硬件資源。

3.2 autofs安裝及配置文件

3.2.1 autofs安裝
[root@sambaserver database\]# yum install autofs  
Loaded plugins: fastestmirror, langpacks  
...省略部份內容  
Installed:  
 autofs.x86_64 1:5.0.7-106.el7  
Dependency Installed:  
 hesiod.x86_64 0:3.2.1-3.el7  
Complete!  
[root@sambaserver database\]#
3.2.2 配置文件解釋

autofs服務程序主配置文件爲:/etc/auto.master,咱們通常採用主配置和子配置的方式進行配置。緣由是生產環境中,可能會同時管理不少設備的掛載操做,若是把全部掛載信息都寫入主配置文件,一旦內容多了將難以管理,且不利於服務執行效率。

主配置文件中採用「掛載目錄 子配置文件」的格式填寫,掛載目錄是設備掛載位置的上一級目錄。例如,光盤設備通常掛載到/media/cdrom目錄中,那麼主配置文件中的掛載目錄就寫成/media便可。

子配置文件須要用戶自定義,文件名稱沒有嚴格要求,後綴建議以.misc結束。格式爲:「掛載目錄 掛載文件類型及權限 :設備名稱」。

下邊就以自動掛載光驅爲例,進行演示autofs的用法

3.3 以光驅爲例演示sutofs使用

3.3.1 autofs配置

主配置文件

[root@sambaserver database\]# vim /etc/auto.master  
#  
# Sample auto.master file  
# This is a 'master' automounter map and it has the following format:  
# mount-point \[map-type\[,format\]:\]map \[options\]  
# For details of the format look at auto.master(5).  
#  
media /etc/iso.misc  
misc   /etc/auto.misc  
#  
# NOTE: mounts done from a hosts map will be mounted with the  
#       "nosuid" and "nodev" options unless the "suid" and "dev"  
#       options are explicitly given.  
#  
net    -hosts  
#  
# Include /etc/auto.master.d/*.autofs  
# The included files must conform to the format of this file.  
#  
+dir:/etc/auto.master.d  
#  
# Include central master map if it can be found using  
# nsswitch sources.  
#  
# Note that if there are entries for /net or /misc (as  
# above) in the included master map any keys that are the  
# same will not be seen as the first read key seen takes  
# precedence.  
#  
+auto.master  
[root@sambaserver database\]#

添加/media /etc/iso.misc保存並退出,其餘內容不變。

子配置文件

[root@sambaserver database\]# vim /etc/iso.misc  
iso -fstype=iso9660,ro,nosuid,nodev :/dev/cdrom

保存並退出。

說明:把光盤設備掛載到/media/iso 目錄中,子配置文件可將掛載目錄寫爲 iso,而-fstype 爲文件系統格式參數,iso9660 爲光盤設備格式,ro、nosuid 及 nodev 爲光盤設備具體的權限參數,/dev/cdrom 則是定義要掛載的設備名稱。

3.3.2 啓動autofs服務

配置完成後,啓動autofs服務並加入開機啓動

[root@sambaserver database\]# systemctl start autofs  
[root@sambaserver database\]# systemctl enable autofs  
Created symlink from /etc/systemd/system/multi-user.target.wants/autofs.service to /usr/lib/systemd/system/autofs.service.  
[root@sambaserver database\]#
3.3.3 使用autofs服務

通過以上操做咱們配置並開啓了autofs服務,咱們先來看下是否已經給咱們掛載好了光盤設備

[root@sambaserver database\]# df -h  
Filesystem               Size  Used Avail Use% Mounted on  
/dev/mapper/centos-root   18G  4.3G   14G  25% /  
devtmpfs                 905M     0  905M   0% /dev  
tmpfs                    914M   76K  914M   1% /dev/shm  
tmpfs                    914M   29M  886M   4% /run  
tmpfs                    914M     0  914M   0% /sys/fs/cgroup  
/dev/sda1                497M  120M  377M  25% /boot  
192.168.78.102:/nfs       18G  4.6G   13G  26% /nfs  
[root@sambaserver media\]# ls /media/  
[root@sambaserver media\]#

能夠看到光標設備沒有掛載上,而且/media 目錄中根本就沒有 iso 子目錄

接下來,咱們直接進入到掛載的/media/iso目錄,看看是否有內容

[root@sambaserver media\]# cd /media/  
[root@sambaserver media\]# ll  
total 0  
[root@sambaserver media\]# cd iso  
[root@sambaserver iso\]# ls  
CentOS_BuildTag  GPL       LiveOS    RPM-GPG-KEY-CentOS-7  
EFI              images    Packages  RPM-GPG-KEY-CentOS-Testing-7  
EULA             isolinux  repodata  TRANS.TBL  
[root@sambaserver iso\]# df -h  
Filesystem               Size  Used Avail Use% Mounted on  
/dev/mapper/centos-root   18G  4.3G   14G  25% /  
devtmpfs                 905M     0  905M   0% /dev  
tmpfs                    914M   76K  914M   1% /dev/shm  
tmpfs                    914M   29M  886M   4% /run  
tmpfs                    914M     0  914M   0% /sys/fs/cgroup  
/dev/sda1                497M  120M  377M  25% /boot  
192.168.78.102:/nfs       18G  4.6G   13G  26% /nfs  
/dev/sr0                 3.9G  3.9G     0 100% /media/iso  
[root@sambaserver iso\]#

以上演示說明,當切換到iso目錄時,也就是說只有使用掛載資源時,autofs才自動進行掛載。當系統重啓後能夠看到它沒有掛載上去,而再次切換到/media/iso目錄時,又會自動掛載。經過這種方式實現了按需分配,從而節約帶寬等資源。

在講解完文件共享以後,下一篇文章將分享使用Postfix和Dovecot搭建郵件系統。

相關文章
相關標籤/搜索