共計 2295 個字符,預計需要花費 6 分鐘才能閱讀完成。
這篇文章主要介紹“linux 文件權限有哪些及怎么修改”的相關知識,丸趣 TV 小編通過實際案例向大家展示操作過程,操作方法簡單快捷,實用性強,希望這篇“linux 文件權限有哪些及怎么修改”文章能幫助大家解決問題。
linux 文件權限有 7 種:1、r 權限,表示可以讀該文件的內容;2、w 權限,表示可以修改文件的內容;3、x 權限;4、rw 權限,表示可以對文件進行讀寫操作;5、wx 權限;6、rx 權限,表示可以讀該文件并能執行;7、rwx 權限,表示可讀寫、執行。
本教程操作環境:linux5.9.8 系統、Dell G3 電腦。
首先我們要想對用戶進行權限管理,就要知道如何查看一個文件的權限,我們可以用 ll 命令或者 ls -l 命令查看某個文件的權限,如下圖:
我們可以看到使用 ll 命令列出了 /app 下文件的一些信息一共 7 列,這 7 列表示了 /app 下文件的詳細信息:
(1) 第一列一共有 11 個字符,第一位顯示的是文件類型,linux 下文件一共分為 7 類:
1.- 普通文件
2.d 目錄文件
3.b 塊設備文件
4.c 字符設備
5.l 符號鏈接文件
6.p 管道文件
7.s 套件字文件
這是 linux 下 7 中不同的文件類型,然后接下來的 9 位就是我們將要介紹到的權限,這 9 位權限分為 3 組,每組 3 位,每位上有兩種情況,如上圖,第一組是 rwx, 代表的就是可讀可寫可執行,如果,r 代表可讀,如果是 - 就表示不可讀,w 代表可寫,- 代表不可寫,x 代表可執行,- 代表不可執行。這三組權限第一組代表的是文件所有者即 owner 的權限,第二組代表的是文件所有組即 group 的權限,第三組代表的是其他人即 other 的權限。最后一個. 表示的是啟用 selinux,這里不再贅述。
?(2) 第二列只有一個數字,表示該文件的連接數,如上 3 就是表示該文件有三個鏈接。
?(3) 第三列表示的是文件的所有者,即 owner 的名字,如上 root 即是表示該文件屬于 root 這個用戶。
?(4) 第四列表示的是文件的所有組,即 group 的名字,如上 root 即是表示該文件屬于 root 這個群組。
?(5) 第五列表示的是文件的大小。
?(6) 第六列表示文件的更新時間。
?(7) 第七列表示文件名
文件權限
我們對文件能夠實現的操作無非就是讀,寫,執行,以及他們的組合權限:創建,刪除,修改(能寫自然就能修改);3 位權限,無非就是 r、w、x、rw、rx、wx、rwx 這其中組合。
文件權限有 7 種:
r 權限:表示可以讀該文件的內容,使用 cat 或者 less。
w 權限:表示可以修改文件的內容,使用 vim,vi 等。
x 權限:無任何作用。
rw 權限:表示可以對文件進行讀寫操作。
wx 權限:相當于 w 權限,只能寫。
rx 權限:表示可以讀該文件并能執行他。
rwx 權限:表示可讀,可寫,可執行,為最高權限。
如何修改權限,什么人有權利修改文件或者目錄的權限呢?
修改權限是通過 chmod 命令完成的。
對所有者權限修改 chmod u+/-r/x/w/rx/rw/wx/rwx + 文件名
對群組權限修改 chmod g+/-r/x/w/rx/rw/wx/rwx + 文件名
對其他用戶權限修改 chmod o+/r/x/w/rx/rw/wx/rwx + 文件名
同時我們也可以用二進制的方法來表示文件的權限。對于每一組權限,每一位上只有兩種可能,即是有或無,我們可以用 1 表示有,0 表示無。就會是下面這樣:
r-- 100 =4
\-w- 010 =2
\--x 001 =1
rw- 110 =6
r-x 101 =5
\-wx 011=3
rwx 111=7
\--- 000 =0
因為可以用數字可以來表示權限,那么我們就有了更簡單的方法來改變文件的權限:
chmod 777 /app/house
或者 chmod 數字表示的權限 加文件,這樣可以一次性改變文件的所有權限。
** ? ?實驗看看誰能夠修改文件的權限,root 用戶是超級用戶,是可以修改所有的權限的,此處不再實驗 **。
? ?現在在創建用戶 liubei,guanyu,zhangfei,caocao,創建群組 shuguo, 設置群管理員為 guanyu,設置組成員為 liubei,guanyu,caocao; 在 app 下創建目錄 test,修改權限為 777,修改所屬組為 shuguo,切換用戶為劉備,在 /test 下創建一個 test.file,命令如下:
useradd liubei
useradd guanyu
useradd zhangfei
useradd caocao
groupadd shuguo
gpasswd -A guanyu shuguo
gpasswd -M liubei,guanyu,zhangfei
cd /app
mkdir test
chmod 777 test
su - liubei
cd /app/test
touch test.file
ll
結果如下圖:
現在 liubei 是 test.file 的 owne,guanyu 是群組 sanguo 的管理員,liubei,zhangfei,guanyu 是 shuguo 的群成員,caocao 是 other 現在測試 owner,群組成員,群管理員,其他人能否修改 test.file 的權限。
liubei 是 owner:
guanyu 是 shuguo 的群管理
zhangfei 是 shuguo 的群成員
caocao 不是 shuguo 的群成員
由此可知只有 root 和文件的所有者能修改文件的權限,別人誰都不能修改。
關于“linux 文件權限有哪些及怎么修改”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識,可以關注丸趣 TV 行業資訊頻道,丸趣 TV 小編每天都會為大家更新不同的知識點。