1. 程式人生 > >Linux---文件權限的控制

Linux---文件權限的控制

所有者 win 51cto 底層 擁有 個數 查看 大小 目錄名

1.文件權限存在的意義

系統最底層安全設定的方法之一;
保證文件可以被可用的用戶相應的操作;

2.文件權限的查看

四種方法:
ls -l file(文件名)

技術分享圖片

ls -ld dir(目錄名)

技術分享圖片

ll file(文件名)

技術分享圖片

ll -d dir(目錄名)

技術分享圖片

3.權限的查看和理解

【1】文件權限

  • rw-r--r-- 1 root root 216 May 12 2017 /mnt/rht

    (1) 文件的類型

    • 普通文件
      d 目錄
      l 軟鏈接(類似於window下的快捷方式)
      s 套結字(類似保護門)
      c 字符設備/dev/pts/下存在

      (2) rw-|r--|r-- 各個用戶對文件進行的操作
      u | g | o
      用戶|成員|其他人

      (3) 文件硬鏈接,文件內容被系統記錄的次數
      上面顯示 1 ,說明文件被系統記錄的次數為一次

      (4) 文件擁有者

      (5) 文件擁有組

      (6) 文件大小

      (7) 文件最後一次被修改的時間

      (8) 文件的名稱

【2】目錄的權限

  d rwxr-xr-x. 2 root root 4096 Jul 30 09:05 /mnt/

        目錄的權限和文件的權限有些許不同,不同的用*標記

    (1) 文件類型

    (2)文件權限

    (*3*)目錄中子目錄的個數

    (4) 用戶

    (5) 組

    (*6*) 子文件或者子目錄元數據大小(元數據:描述數據的數據)

    (7) 最後一次被修改的時間

    (8)名稱

4.如何修改文件用戶和用戶組

【1】此命令必須用root用戶執行

         chown      username     /mnt/file1          #將文件file1的擁有人改為username
                 !修改為username,前題創建username對象
                 不創建如圖:

技術分享圖片

    創建如圖useradd username

技術分享圖片

    然後修改

技術分享圖片

           chown      -R      username      dir          #將目錄dir和目錄下的子文件的擁有人全部改成username

技術分享圖片

                 chown      username:username    file|dir        ##將file文件或dir目錄的擁有人和用戶組改為username
         chown      username.username      file|dir        ##將file文件或dir目錄的擁有人和用戶組改為username(兩個方法效果一致)
                 如圖,可以看出file2的擁有人和用戶組被修改,dir無變化

技術分享圖片

                 chgrp       username      /mnt/file2         # 將file2的用戶組改為username

技術分享圖片

                 chgrp      -R    username     /mnt/dir      #將dir目錄及目錄下的文件的用戶組修改位username

技術分享圖片

5.文件權限

 【1】文件權限的作用

 r
 對文件                            是否可以查看文件中的字符
 對目錄                            是否可以查看目錄中有什麽文件

 w
 對文件                            是否可以改變文件中記錄的字符
 對目錄                            是否在目錄中管理文件,是否可以更改目錄中文件的元數據

 x
 對文件                          是否可以通過文件名調用文件內記錄的程序
 對目錄                          是否可以進入此目錄

【2】 權限的管理

   字符形式
     chmod<u|g|o><+|-|=><r|w|x>   file|dir

     數字方式
     rwx
     210
     二進制的計算方法
     如果x的位置上面有1,x為二的零次方為一,如果x位置上沒有,那麽x為0;
     同理,w位置上有數字,為二的一次方,為二,r位置上為二的二次方,為四,沒有則都為零;
      x=2**0*0|1=0|1
  w=2**1*0|1=0|2
  r=2**2*0|1=0|4

  x=1
  w=2
  r=4

        rwx=7
  rw-=6
  r-x=5
  r--=4
  -wx=3
  -w-=2
  --x=1

chmod 如圖

技術分享圖片

圖中四個命令其實效果一致;
還有比如chmod ugo-r file1; 是給文件file1的用戶,組,其他,全部設置權限為r(讀)的權限;
6.權限列表

特定用戶對特定文件有制定權限

-rw-r--r--+ 1 root root 216 May 12 2017 rht

setfacl -m u:username(用戶名):rwx file 設定file文件的權限
getfacl file 獲取文件的權限信息

如圖

技術分享圖片
圖中添加了user,名為username的用戶,他的權限是rwx,可讀可寫可操作;而組員和其他人都只有可讀;分別用getfacl file——setfacl -m u:username(用戶名):rwx file——getfacl file,一目了然的看出操作痕跡;

!!!!!了解一下
圖中
#file:file4 文件名稱
#owner:root 文件所有者
#group:root 文件所有組
user::rw- 文件擁有人的權限
group::r-- 文件擁有組的權限
mask::r-- 能賦予用戶的最大權力伐值
other::r-- 其他人的權限

setfacl -x u:username file 把特殊用戶從刪除掉

技術分享圖片

setfacl -b file 關閉權限列表

技術分享圖片

Linux---文件權限的控制