首頁 > 軟體

Linux基礎教學學習筆記35——設定NFS和SMB檔案共用服務

2020-06-16 18:02:21

Linux基礎教學學習筆記35——設定NFS和SMB檔案共用服務

一、設定NFS服務

    NFS服務使用埠:2049

    此外還使用以下RPC服務的隨機埠:

    RPC使用埠111:遠端進程呼叫

        rpc.lock:隨機埠

        rpc.mount:隨機埠

        rpc.stat:隨機埠

在RHEL6中,以上隨機埠需要設定固定的埠,而RHEL7中則以更簡單的方式管理:

檢視本機開放的NFS埠,當重新啟動NFS服務的時候,開放的埠會改變:

[root@client ~]# rpcinfo -p localhost
  program vers proto  port  service

    100024    1  udp  59791  status
    100024    1  tcp  43154  status
    100005    1  udp  20048  mountd
    100005    1  tcp  20048  mountd
    100005    2  udp  20048  mountd
    100005    2  tcp  20048  mountd
    100005    3  udp  20048  mountd
    100005    3  tcp  20048  mountd
    100003    3  tcp  2049  nfs
    100003    4  tcp  2049  nfs
    100227    3  tcp  2049  nfs_acl
    100003    3  udp  2049  nfs
    100003    4  udp  2049  nfs
    100227    3  udp  2049  nfs_acl
    100021    1  udp  46989  nlockmgr
    100021    3  udp  46989  nlockmgr
    100021    4  udp  46989  nlockmgr
    100021    1  tcp  59814  nlockmgr
    100021    3  tcp  59814  nlockmgr
    100021    4  tcp  59814  nlockmgr
    100011    1  udp    875  rquotad
    100011    2  udp    875  rquotad
    100011    1  tcp    875  rquotad
    100011    2  tcp    875  rquotad

在RHEL7中,則只需要在防火牆新增相應的NFS服務即可:

[root@linuxidc ~]# firewall-cmd --add-service=nfs --permanent
[root@linuxidc ~]# firewall-cmd --add-service=rpc-bind --permanent
[root@linuxidc ~]# firewall-cmd --add-service=mountd --permanent

編輯/etc/exports檔案,設定NFS共用:

共用目錄            範圍1(許可權1,許可權2,許可權3)        範圍2(許可權1,許可權2,許可權3)
/aa            10.35.89.0/26(rw,sync)    10.35.56.0/26(rw,sync)

修改了exports檔案後,無需重新啟動nfs服務,否則可能會導致其他使用者存取掛死,執行以下命令重新載入共用內容即可:
[root@linuxidc ~]# exportfs -avr

在用戶端檢視伺服器端共用的檔案:
[root@client ~]# showmount -e 10.35.89.32

掛載伺服器端共用的資料夾:

[root@client ~]# mount 10.35.89.32:/aa /nfs

檢視伺服器端共用的檔案的預設許可權,其中65534指的是nfsnobody使用者和組:

[root@client ~]# cat /var/lib/nfs/etab 
/aa10.35.89.0/26(rw,sync,wdelay,hide,nocrossmnt,secure,root_squash,no_all_squash,no_subtree_check,secure_locks,acl,anonuid=65534,anongid=65534,sec=sys,rw,secure,root_squash,no_all_squash)

用戶端預設使用的是nfsnobody的使用者存取共用檔案:
[root@client nfs]# touch aa
[root@client nfs]# ll
total 0
-rw-r--r--. 1 nfsnobody nfsnobody 0 Feb 11 10:05 aa

    export的許可權如果加上no_root_squash,則用戶端使用root使用者存取共用檔案時,使用的是root使用者

二、設定samba服務

samba用於類unix和windows之間的檔案共用

安裝samba包:
[root@linuxidc ~]# yum install samba -y

    samba的2個服務:

        1、smb:埠TCP139和445

        2、nmb::用於windows的netbios協定 使用udp137和138

防火牆新增samba服務:

[root@linuxidc ~]# firewall-cmd --add-service=samba --permanent

編輯/etc/samba/smb.conf組態檔:

主要 引數:

全域性引數: 

                workgroup = WORKGROUP
                hosts allow = 127. 192.168.12. 192.168.13


                log file = /var/log/samba/log.%m


                security = user


            config file = /etc/samba/smb.conf.%U  為每個使用者單獨設定存取許可權

共用設定:

      [public]
          comment = Public Stuff
          path = /home/samba
          public = yes
          writable = yes(是否隱藏)
          printable = no
          write list = +staff (+或@代表是組)
        hosts allow = 10.35.89.30

使用smbpasswd命令新增samba使用者,新增的使用者必須是系統已經存在的的使用者,使用smbpasswd命令需先安裝samba-client包:
[root@linuxidc ~]# smbpasswd -a RedHat

使用pdbedit命令檢視samba使用者列表:
[root@linuxidc ~]# pdbedit -L
redhat:1000:redhat

使用smbclinet在linux系統存取samba共用檔案:
[root@client nfs]# smbclient -L //10.35.89.32

連線smb共用服務:

[root@client nfs]# smbclient  //10.35.89.32 -U redhat%redhat

使用multuser多使用者實現多使用者許可權的設定:

安裝cifs包:

[root@client /]# yum install cifs-utils.x86_64 -y

掛載共用檔案:

伺服器端共用設定“

[bb]
331        comment= bb share
332        path = /bb
333        writable = no
334        write list = tom

用戶端掛載:

 [root@client /]# mount -o multiuser,username=redhat,password=redhat,sec=ntlmssp //10.35.89.32/bb  /cc

用戶端使用除root之外的其他使用者對共用的檔案沒有相關的讀寫許可權:

[tom@client cc]$ ls
ls: reading directory .: Permission denied

獲取伺服器端使用者的許可權:

[tom@client ~]$ cifscreds add 10.35.89.32 -u tom

此時再存取共用資料夾,具有了讀寫許可權:
[tom@client cc]$ ls
aa  bb  cc  nfs

       

        用戶端設定開機自動掛載,編輯fstab:

//10.35.89.32/bb        /cc    cifs    multiuser,username=redhat,passwd=redhat,sec=ntlmssp 0 0

 

--------------------------------------分割線 --------------------------------------

Ubuntu 12.04安裝NFS server http://www.linuxidc.com/Linux/2012-09/70728.htm

NFS伺服器安裝設定實現Ubuntu 12.04與ARM檔案共用 http://www.linuxidc.com/Linux/2012-10/73159.htm

Ubuntu搭建nfs伺服器 http://www.linuxidc.com/Linux/2012-10/71930.htm

檔案伺服器NFS設定詳解 http://www.linuxidc.com/Linux/2013-06/86542.htm

Ubuntu下搭建NFS網路檔案系統伺服器 http://www.linuxidc.com/Linux/2013-07/87367.htm

Heartbeat_ldirector+LB+NFS實現HA及LB、檔案共用 http://www.linuxidc.com/Linux/2013-06/85292.htm

CentOS 5.5設定NFS伺服器教學 http://www.linuxidc.com/Linux/2013-03/81737.htm

Ubuntu 12.10下NFS的安裝使用 http://www.linuxidc.com/Linux/2013-03/80478.htm

--------------------------------------分割線 --------------------------------------

本文永久更新連結地址http://www.linuxidc.com/Linux/2015-04/116146.htm


IT145.com E-mail:sddin#qq.com