Linux 文件權限

文件權限

Linux 中任何一個文件都具備 「用戶、用戶組與其餘用戶」三種權限,一個用戶可屬於多個用戶組。全部用戶的相關信息都記錄在 /etc/passwd 文件中,密碼記錄在 /etc/shaodw 文件,用戶組記錄在 /etc/group 文件。html

root 用戶權限最高,不算其餘用戶node

文件屬性

ls -al
-rw-r--r--@  1 zhoust  staff   58503 Dec  8 07:50 antigen.zsh
drwxr-xr-x   2 zhoust  staff      64 Apr 10 18:19 database
drwxr-xr-x   6 zhoust  staff     192 Apr  9 22:12 h5
drwxr-xr-x   4 zhoust  staff     128 Nov 20 16:15 logs
drwxr-xr-x   3 zhoust  staff      96 Mar 18 17:42 node_modules
-rw-r--r--   1 zhoust  staff     320 Mar 18 17:08 package-lock.json
drwxr-xr-x   7 zhoust  staff     224 Dec  8 07:20 software
drwxr-xr-x   9 zhoust  staff     288 Nov 20 16:32 store
drwxr-xr-x   3 zhoust  staff      96 Apr  4 15:43 vkds
drwxr-xr-x   8 zhoust  staff     256 Oct 23 15:06 照片
drwxr-xr-x  12 zhoust  staff     384 Apr 19 08:36 學習視頻

分爲七個部分:json

  1. 文件類型與權限 文件類型:普通文件(-)、目錄文件(d)、連接文件(l) 權限:當前用戶、同用戶組的權限、其餘用戶權限,rwx 用數字表示就是 421
  2. 有多少文件名連接到此節點(inode)
  3. 擁有該文件的用戶名
  4. 該文件所屬用戶組
  5. 文件大小:默認爲 Byte
  6. 建立時間
  7. 文件名

rwx 對於文件和目錄的意義

對文件來講,w 意味着能夠修改該文件的內容(但不包含刪除文件),x 意味着該文件有被執行的權限(真正是否能執行與文件內容有關)。bash

目錄主要負責記錄文件名列表學習

  • r:意味着能夠讀取該目錄結構
  • w可對該目錄下的文件(或目錄)進行刪除、添加、修改、移動、重命名等,權限極大
  • x:能進入該目錄

若是用戶只對某目錄擁有 r 權限,只能查看該目錄下的文件名稱和類型,連文件大小以及各類屬性都看不到。如 zst 用戶只擁有 /home/zhoust 目錄的讀權限,只能看到該目錄下的文件名稱spa

[zhoust@MyPersonalCentOS ~]$ ls -al
total 36
drwxr-xr--  5 zhoust zhoust 4096 Apr 21 14:55 .

[zst@MyPersonalCentOS ~]$ ls -l /home/zhoust/
ls: cannot access /home/zhoust/learn: Permission denied
total 0
d????????? ? ? ? ?            ? learn

能完成任務的最小權限

若是用戶對某目錄沒有 x 權限,沒法執行該目錄下的任何命令,也不能查詢該目錄下的文件內容。code

注意第一項,只要是到了某個文件夾下,就有權限讀取該文件夾中的數據。視頻

操做動做 /dir1 /dir1/file1 /dir2 解釋
讀取 file1 內容 x r - 要可以進入 /dir1 才能讀到裏面的文件數據!
修改 file1 內容 x rw - 能進入且能修改
刪除 file1 文件 wx - - 可以進入 /dir1 具備目錄修改的權限便可!
將 file1 複製到 /dir2 x r wx 要可以讀 file1 且可以修改 /dir2 內的數據

修改文件屬性與權限

三個命令,chownchgrpchmod 分別表示修改文件所屬用戶、修改文件所屬用戶組、修改文件權限htm

chmod 語法分爲兩種,一種是用數字修改,另外一種是用符號修改文件權限。blog

使用數字修改,分別是 421 將對應位置上的數字相加,例如:

# 在 /home/zhoust 目錄下,其餘用戶都不可進入
[zhoust@MyPersonalCentOS ~]$ ls -al
drwxr-x---  5 zhoust zhoust 4096 Apr 25 20:00 .

[zst@MyPersonalCentOS ~]$ cd /home/zhoust/
bash: cd: /home/zhoust/: Permission denied

# 使用 chmod 修改成其餘用戶可進入,zst 就能進入這個目錄了
[zhoust@MyPersonalCentOS ~]$ chmod 705 .
[zhoust@MyPersonalCentOS ~]$ ls -al
drwx---r-x  5 zhoust zhoust 4096 Apr 21 14:55 .

使用符號類型修改文件權限,格式爲 [範圍][修改][某權限]u 所屬用戶,g 用戶組,o 其餘用戶,a 所有用戶,用於修改的符號有 +-=,權限仍是那三個 rwx。如今再把 /home/zhoust 目錄的其餘用戶權限關閉:

[zhoust@MyPersonalCentOS ~]$ chmod o-rx .
[zhoust@MyPersonalCentOS ~]$ ls -al
total 36
drwx------  5 zhoust zhoust 4096 Apr 21 14:55 .

原文出處:https://www.cnblogs.com/Zhoust/p/10788342.html

相關文章
相關標籤/搜索