日本熟妇hd丰满老熟妇,中文字幕一区二区三区在线不卡 ,亚洲成片在线观看,免费女同在线一区二区

使用NFSv4 ACL進行權(quán)限管理

本文介紹在使用NFSv4協(xié)議掛載的文件系統(tǒng)上,如何設(shè)置NFSv4 ACL來進行文件或目錄權(quán)限管理。

前提條件

已使用NFSv4協(xié)議掛載文件系統(tǒng)。具體操作,請參見掛載NFS文件系統(tǒng)

背景信息

您可以使用NFSv4協(xié)議掛載文件系統(tǒng),并在已掛載文件系統(tǒng)的機器上安裝符合Linux標準的nfs4-acl-tools軟件。安裝完成后,通過標準工具nfs4_getfaclnfs4_setfacl設(shè)置NFSv4 ACL。

命令說明

在設(shè)置NFSv4 ACL前,請先熟悉相關(guān)操作命令。

命令

說明

nfs4_getfacl <filename>

查看文件當前的ACL權(quán)限。

nfs4_setfacl -a A::GROUP@:W <filename>

GROUP設(shè)置寫權(quán)限。

nfs4_setfacl -a A::1000:W <filename>

給用戶1000設(shè)置寫權(quán)限。

nfs4_setfacl -a A:g:10001:W <filename>

給用戶組10001設(shè)置寫權(quán)限。

nfs4_setfacl -e <filename>

交互式編輯設(shè)置ACL權(quán)限。

nfs4_getfacl <filename> > saved_acl.txt

將文件當前的ACL權(quán)限保存為一個文本文件。

nfs4_setfacl -S saved_acl.txt <filename>

恢復(fù)保存到文本文件里的ACL權(quán)限。

nfs4_setfacl -m A::1001:rwaxTNcCy A::1001:rxtcy file1

修改文件file1上的其中一條ACE的權(quán)限。

nfs4_getfacl file1 | nfs4_setfacl -S - file2

將文件file1ACL權(quán)限復(fù)制到文件file2上。

nfs4_getfacl file1 | grep @ | nfs4_setfacl -S - file1

刪除文件file1上所有非保留的ACE。

nfs4_setfacl -R -a A:g:10001:rW dir

對目錄樹dir下所有文件和目錄,增加用戶組10001可以讀寫訪問的權(quán)限。

find dir -type f -exec sh -c 'for ace in $(nfs4_getfacl \{} | grep "^A.*\:1005\:"); do nfs4_setfacl -x $ace \{}; done' \;

刪除目錄樹dir下所有文件中包含1005ACE。

nfs4_setfacl -a A:fdg:10001:rW dir1

讓用戶組10001對目錄dir1下新創(chuàng)建的文件和目錄有讀寫權(quán)限。

nfs4_setfacl -a A:fg:10001:rx dir1

讓用戶組10001對目錄dir1下新創(chuàng)建的文件有讀和執(zhí)行權(quán)限。

操作步驟

您可以參考以下步驟,為目錄或文件設(shè)置NFSv4 ACL實現(xiàn)權(quán)限管理。

  1. 創(chuàng)建用戶和群組。

    本文假設(shè)創(chuàng)建普通用戶player,屬于普通用戶群組players;管理員admini,屬于管理員群組adminis;另外再創(chuàng)建一個用戶anonym。

    sudo useradd player
    sudo groupadd players
    sudo usermod -g players player
    sudo useradd admini
    sudo groupadd adminis
    sudo usermod -g adminis admini
    sudo useradd anonym
  2. 安裝NFSv4 ACL工具。

    如果已安裝NFSv4 ACL工具,請?zhí)^此步驟。

    sudo yum -y install nfs4-acl-tools
  3. 獲取用戶群組playersadminisid。

    打開/etc/group文件,獲取用戶群組playersadminisid,如下所示。

    players:x:19064:player
    adminis:x:19065:admini
  4. 對目錄和文件設(shè)置NFSv4 ACL。

    本文假設(shè)創(chuàng)建目錄dir0,針對目錄dir0中的所有文件,授予群組players只讀權(quán)限,授予群組adminis讀寫執(zhí)行權(quán)限,不授予其他用戶權(quán)限。

    sudo umask 777
    sudo mkdir dir0
    sudo nfs4_setfacl -a A:fdg:19064:RX dir0
    sudo nfs4_setfacl -a A:fdg:19065:RWX dir0
    sudo nfs4_setfacl -a A:fdg:OWNER@: dir0
    sudo nfs4_setfacl -a A:fdg:GROUP@: dir0
    sudo nfs4_setfacl -a A:fdg:EVERYONE@: dir0

    設(shè)置完成后,可執(zhí)行sudo nfs4_getfacl dir0查看設(shè)置結(jié)果。

    A::OWNER@:tTnNcCy
    A::GROUP@:tncy
    A::EVERYONE@:tncy
    A:fdi:EVERYONE@:tncy
    A:fdi:OWNER@:tTnNcCy
    A:fdi:GROUP@:tncy
    A:g:19064:rxtncy
    A:g:19065:rwaDxtTnNcCy
    A:fdig:19064:rxtncy
    A:fdig:19065:rwaDxtTnNcCy
  5. 驗證ACL的設(shè)置結(jié)果。

    1. 驗證用戶admini具有讀寫權(quán)限。

      sudo su admini -c 'touch dir0/file'
      sudo su admini -c 'echo 123 > dir0/file'
    2. 驗證用戶player具有只讀權(quán)限。

      1. 驗證是否有創(chuàng)建文件的權(quán)限(例如,創(chuàng)建dir0/file文件)。

        • 執(zhí)行命令

          sudo su player -c 'touch dir0/file'
        • 如果返回如下信息,則表示用戶player無權(quán)限創(chuàng)建文件。

          touch: cannot touch ‘dir0/file’: Permission denied
      2. 驗證是否有寫權(quán)限(例如,向dir0/file文件中寫入內(nèi)容)。

        • 執(zhí)行命令

          sudo su player -c 'echo 456 >> dir0/file'
        • 如果返回如下信息,則表示用戶player無寫權(quán)限。

          bash: dir0/file: Permission denied
      3. 驗證是否有讀權(quán)限。

        • 執(zhí)行命令

          sudo su player -c 'cat dir0/file'
        • 如果返回如下信息,則表示用戶player有讀權(quán)限。

          123

        您還可以通過執(zhí)行sudo su player -c 'nfs4_getfacl dir0/file'命令,查看用戶playerdir0/file文件的權(quán)限。

        A::OWNER@:tTnNcCy
        A::GROUP@:tncy
        A::EVERYONE@:tncy
        A:g:19064:rxtncy
        A:g:19065:rwaxtTnNcCy
    3. 驗證用戶anonym無權(quán)限。

      1. 驗證無權(quán)限查看dir0目錄下的文件。

        • 執(zhí)行命令

          sudo su anonym -c 'ls dir0'
        • 如果返回如下信息,則表示用戶anonym無權(quán)限訪問。

          ls: cannot open directory dir0: Permission denied
      2. 驗證無權(quán)限查看file文件的內(nèi)容。

        • 執(zhí)行命令

          sudo su anonym -c 'cat dir0/file'
        • 如果返回如下信息,則表示用戶anonym無權(quán)限查看file文件的內(nèi)容。

          cat: dir0/file: Permission denied
      3. 驗證無權(quán)限訪問file文件。

        • 執(zhí)行命令

          sudo su anonym -c 'nfs4_getfacl dir0/file'
        • 如果返回如下信息,則表示用戶anonym無權(quán)限訪問file文件。

          Invalid filename: dir0/file

相關(guān)操作

如果您要移除用戶權(quán)限,可參見以下方法。

建議在使用NFSv4 ACL時,盡量把每個用戶歸類到群組中。在設(shè)置NFSv4 ACL時直接設(shè)置群組權(quán)限而不用設(shè)置單個用戶的權(quán)限。這樣在移除用戶權(quán)限時只需把用戶移出某個群組即可。例如:參見以下命令將用戶admini移出群組adminis,移入群組adminis2。

  1. 創(chuàng)建adminis2群組。

    sudo groupadd adminis2
  2. 將用戶admini移出群組adminis,移入群組adminis2。

    sudo usermod -g adminis2 admini
  3. 查詢用戶ID權(quán)限。

    • 執(zhí)行命令

      id admini
    • 返回信息

      uid=1057(admini) gid=1057(admini) groups=1061(adminis2)
  4. 驗證用戶admini具備的權(quán)限。

    1. 驗證無權(quán)限訪問dir0目錄。

      • 執(zhí)行命令

        sudo su admini -c 'ls dir0'
      • 如果返回以下信息,則表示用戶admini無權(quán)限訪問dir0目錄。

        ls: cannot open directory dir0: Permission denied
    2. 驗證用戶admini無權(quán)限查看dir0/file文件的內(nèi)容。

      • 執(zhí)行命令

        sudo su admini -c 'cat dir0/file'
      • 如果返回以下信息,表示用戶admini無權(quán)限查看dir0/file文件的內(nèi)容。

        cat: dir0/file: Permission denied
    3. 驗證用戶admini無權(quán)限訪問dir0/file

      • 執(zhí)行命令

        sudo su admini -c 'getfacl dir0/file'
      • 如果返回以下信息,表示用戶admini無權(quán)限訪問dir0/file

        getfacl: dir0/file: Permission denied