1. 程式人生 > >Linux 關於許可權,所有者,所屬組方面的命令

Linux 關於許可權,所有者,所屬組方面的命令

1. chmod 命令 修改檔案或目錄許可權

#chmod [] 許可權模式 檔名

選項

  • -R:遞迴設定許可權,給子目錄中的所有檔案設定許可權

許可權模式

chmod 命令的許可權模式的格式是"[ugoa] [[+-=] [perms]]",也就是"[使用者身份][[賦予方式][許可權]]"的格式。

使用者身份:

  • -u:代表所有者(user)。
  • -g:代表所屬組(group)。
  • -o:代也人(other)。
  • -a:代表全部身份(all)。

 

賦予方式:

  • -+:加入許可權。
  • --:減去許可權。
  • -=:設定許可權。

 

許可權:

  • -r:讀取許可權(read)。
  • -w:寫許可權(write)。
  • -x:執行許可權(execute)。

eg:

#chmod u+x,g+w,o+w movie //給所有者加執行許可權,給所屬組加寫許可權,給其他人家寫許可權

#chmod u-x,g-w,o-w movie //給所有者去除執行許可權,給所屬組去掉寫許可權,給其他人渠道寫許可權

#chmod u=rwx,g=rx,o=r //給所有者賦讀寫執行許可權,給所屬組賦讀執行許可權,給其他人賦讀許可權

數字許可權

  • 4:代表"r"許可權。
  • 2:代表"w"許可權。
  • 1:代表"x"許可權。

5代表“4+1”,也就是讀、寫許可權;

7代表“4+2+1”,也就是讀、寫、執行許可權;

 

644:這是檔案的基本許可權,代表所有者擁有讀、寫許可權,而所屬組和其他人擁有隻讀許可權。

755:這是檔案的執行許可權和目錄的基本許可權,代表所有者擁有讀、寫和執行許可權,而所屬組和其他 人擁有讀和執行許可權。

777:這是最大許可權。在實際的生產伺服器中,要盡力避免給檔案或目錄賦予這樣的許可權,這會造成一定的安全隱患。

 

eg: chmod 755 movie

2. chown 命令 修改檔案和目錄的所有者和所屬組

# chown [選項] 所有者:所屬組 檔案或目錄

選項:

-R :遞迴設定許可權

#touch lange //建立lange檔案

# chown user lange //將lange檔案的所有者改為user

# chown user:user lange //將lange檔案的所有者和所屬組改為user和user組

// “:” 之前是檔案所有者,之後是所屬組。這裡的“:”也可以改為 “.” 代替。

3.chgrp 命令 修改檔案和目錄的所屬組

# touch test

#chgrp user test //將檔案所testf屬組改為user

# ll testf

-rw-r--r--. 1 root user 0 Dec 7 16:59 testf

4.umask 命令 令新建檔案和目錄擁有預設許可權

#umask

0022 //umask 值為0022 , 只看後三位,

#umask -S

u=rwx,g=rx,o=rx //-s 表示用字母表示檔案和目錄的初始許可權

umask預設許可權的計算方法

  • 新建檔案的預設最大許可權是666,沒有執行(x)許可權
  • 新建目錄的預設最大許可權是777

預設許可權 = 預設最大許可權 - umask (umask的值為022)

檔案預設許可權計算: 666 - 022 = 644, 666:rw-rw-rw ; 022:----w--w- 644: rw-r--r-- (執行許可權"x"不參加計算)

例如 umask = 033

666 - 033 = 644 , 666:rw-rw-rw- ; 033: ----wx-wx 644: rw-r--r--

 

目錄預設許可權計算: 777 - 022 = 755, 777:rwxrwxrwx ; 022:----w--w- ; 755:rwxr-xr-x