Linux之權限命令基本使用


1. 權限的基本介紹

  • ls -l 中顯示的內容如下:
-rwxrw-r-- 1 root root 1213 Feb 2 09:39 abc
  • 0-9 位說明
  1. 0 位確定文件類型(d, - , l , c , b)
    l 是鏈接,相當於 windows 的快捷方式
    d 是目錄,相當於 windows 的文件夾
    c 是字符設備文件,鼠標,鍵盤
    b 是塊設備,比如硬盤
  2. 1-3 位確定所有者(該文件的所有者)擁有該文件的權限。---User
  3. 4-6 位確定所屬組(同用戶組的)擁有該文件的權限,---Group
  4. 7-9 位確定其他用戶擁有該文件的權限 ---Other

2. rwx 權限詳解

2.1 rwx 作用到文件

  1. [ r ]代表可讀(read): 可以讀取,查看
  2. [ w ]代表可寫(write): 可以修改,但是不代表可以刪除該文件,刪除一個文件的前提條件是對該文件所在的目錄有寫權限,才能刪除該文件.
  3. [ x ]代表可執行(execute):可以被執行

2.2 rwx 作用到目錄

  1. [ r ]代表可讀(read): 可以讀取,ls 查看目錄內容
  2. [ w ]代表可寫(write): 可以修改, 對目錄內創建+刪除+重命名目錄
  3. [ x ]代表可執行(execute):可以進入該目錄

3. 文件及目錄權限實際案例

3.1 ls -l 中顯示的內容如下:

-rwxrw-r-- 1 root root 1213 Feb 2 09:39 ab
  • 10 個字符確定不同用戶能對文件干什么
  1. 第一個字符代表文件類型: - l d c b
    其余字符每 3 個一組(rwx) 讀(r) 寫(w) 執行(x)
  2. 第一組 rwx : 文件擁有者的權限是讀、寫和執行
  3. 第二組 rw- : 與文件擁有者同一組的用戶的權限是讀、寫但不能執行
  4. 第三組 r-- : 不與文件擁有者同組的其他用戶的權限是讀不能寫和執行
  • 可用數字表示為: r=4,w=2,x=1 因此 rwx=4+2+1=7 , 數字可以進行組合
  • 其它說明
1 		文件:硬連接數或 	目錄:子目錄數
root 	用戶
root	 組
1213 	文件大小(字節),如果是文件夾,顯示 4096 字節
Feb 	2 09:39 最后修改日期
abc 	文件名

4. 修改權限-chmod

4.1 基本說明:

  • 通過 chmod 指令,可以修改文件或者目錄的權限。

4.2 第一種方式:+ 、-、= 變更權限

  • u:所有者, g:所有組, o:其他人, a:所有人(u、g、o 的總和)
  1. chmod u=rwx,g=rx,o=x 文件/目錄名
  2. chmod o+w 文件/目錄名
  3. chmod a-x 文件/目錄名
  • 案例演示
  1. abc 文件 的所有者讀寫執行的權限,給所在組讀執行權限,給其它組讀執行權限。
chmod u=rwx,g=rx,o=rx abc
  1. abc 文件的所有者除去執行的權限,增加組寫的權限
chmod u-x,g+w abc
  1. abc 文件的所有用戶添加讀的權限
chmod a+r abc

4.3 第二種方式:通過數字變更權限

r=4 w=2 x=1 rwx=4+2+1=7

chmod u=rwx,g=rx,o=x 文件目錄名
相當於
chmod 751 文件/目錄名

  • 案例演示
    要求:將 /home/abc.txt 文件的權限修改成 rwxr-xr-x, 使用給數字的方式實現:
chmod 755 /home/abc.t

5. 修改文件所有者-chown

5.1 基本介紹

chown newowner 文件/目錄 改變所有者
chown newowner:newgroup 文件/目錄 改變所有者和所在組

-R :如果是目錄 則使其下所有子文件或目錄遞歸生效

  • 案例演示
  1. 請將 /home/abc.txt 文件的所有者修改成 tom
chown tom /home/abc.txt
  1. 請將 /home/test 目錄下所有的文件和目錄的所有者都修改成 tom
chown -R tom /home/test

6. 修改文件/目錄所在組-chgrp

6.1 基本介紹

chgrp newgroup 文件/目錄 【 改變所在組】

6.2 案例演示

  1. 請將 /home/abc.txt 文件的所在組修改成 shaolin (少林)
groupadd shaolin
chgrp shaolin /home/abc.txt
  1. 請將 /home/test 目錄下所有的文件和目錄的所在組都修改成 shaolin(少林)
chgrp -R shaolin /home/test

6.3 最佳實踐-警察和土匪游戲

police , bandit
jack, jerry: 警察
xh, xq: 土匪
  1. 創建組 groupadd police ; groupadd bandit
  2. 創建用戶
useradd -g police jack ; useradd -g police jerry
useradd -g bandit xh; useradd -g bandit xq
  1. jack 創建一個文件,自己可以讀 rw,本組人可以讀,其它組沒人任何權限
    首先 jack 登錄 ; vim jack.txt ; chmod 640 jack.txt
  2. jack 修改該文件,讓其它組人可以讀, 本組人可以讀寫
chmod o=r,g=r jack.txt
  1. xh 投靠 警察,看看是否可以讀寫. usermod -g police xh
  2. 測試,看看 xh 是否可以讀寫,xq 是否可以, 小結論,就是如果要對目錄內的文件進行操作,需要要有對該目錄的
    相應權限
  3. 示意圖
    在這里插入圖片描述

6.4 課后練習 1

  • 練習文件權限管理[課堂練習], 完成如下操作.
  1. 建立兩個組(神仙(sx),妖怪(yg))
  2. 建立四個用戶(唐僧,悟空,八戒,沙僧)
  3. 設置密碼
  4. 把悟空,八戒放入妖怪 唐僧 沙僧 在神仙
  5. 用悟空建立一個文件 (monkey.java 該文件要輸出 i am monkey)
  6. 給八戒一個可以 r w 的權限
  7. 八戒修改 monkey.java 加入一句話( i am pig)
  8. 唐僧 沙僧 對該文件沒有權限
  9. 把 沙僧 放入妖怪組
  10. 讓沙僧 修改 該文件 monkey, 加入一句話 ("我是沙僧,我是妖怪!");
  11. 對文件夾 rwx 的細節討論和測試!!!
    x: 表示可以進入到該目錄, 比如 cd
    r: 表示可以 ls , 將目錄的內容顯示
    w: 表示可以在該目錄,刪除或者創建文件
  12. 示意圖
    在這里插入圖片描述

6.5 課后練習 2

  1. 用 root 登錄,建立用戶 mycentos,自己設定密碼
  2. 用 mycentos 登錄,在主目錄下建立目錄 test/t11/t1
  3. 在 t1 中建立一個文本文件 aa,用 vi 編輯其內容為 ls –al
  4. 改變 aa 的權限為可執行文件[可以將當前日期追加到一個文件],運行該文件./aa
  5. 刪除新建立的目錄 test/t11/t1
  6. 刪除用戶 mycentos 及其主目錄中的內容
  7. 將 linux 設置成進入到圖形界面的
  8. 重新啟動 linux 或關機


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM