歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> 關於Linux >> 從零開始學Linux_07_Linux文件權限

從零開始學Linux_07_Linux文件權限

日期:2017/3/1 12:23:59   编辑:關於Linux
​​ 命令名稱 用途 命令舉例 groupadd 添加組 groupadd g_study
groupadd –g 777 mygroup
-g 參數直接指定gid gpasswd 管理用戶組信息,如設置密碼,添加刪除組成員 gpasswd g_study
gpasswd –a study g_study
-a增加用戶進組
-d從組裡刪除用戶 groupmod 修改用戶組信息 groupmod -n studygroup (新名)g_study(舊名) groupdel 刪除用戶組 groupdel studygroup groups 顯示用戶所屬的用戶組 groups study groupadd 添加組 groupadd g_study
groupadd –g 777 mygroup
-g 參數直接指定gid 命令名稱 用途 命令舉例 useradd或adduser 添加用戶 useradd study passwd 為用戶設置密碼 passwd study
passwd –d study (刪除密碼) usermod 修改用戶信息 usermod -c study(改後的別名) study userdel 刪除用戶 userdel –r study (-r 連主目錄一起刪除) su 用戶切換 su root id 查看用戶的UID、GID及所歸屬的用戶組 id study

一、Linux用戶類別 1、用戶類別 root:這是系統特權用戶類,他們都有訪問root登錄帳號的權限
owner:這是實際擁有文件的用戶。
group:這是共享文件的組訪問權的用戶類的用戶組名稱
world:這是不屬於上面3類的所有其他用戶。
2、/etc/shadow # cat /etc/shadow
xin:$6$vhP8o8VT$pcU8tGypN77EkId0XHZdBjyD26TQ6jCQIDU6zuejMvRRtlKhazxSbJLGRjm0bjiXLIIU4Kz4LC0rZcp.WkkLY0:16430:0:99999:7:::(:隔開每一項) (1)用戶名
(2)密碼(加密過的密碼,*或!打頭表示不能登錄)
(3)密碼最後一次被修改的時間(從1970年1月1日到該日的天數)
(4)從上一次修改密碼到下一次允許進行修改要經歷的天數
(5)經過多少天後用戶必須重新修改密碼
(6)在密碼到期前多少天向用戶發出必須修改密碼的警告
(7)密碼到期後經過多少天便把該帳號關閉
(8)帳號到期日
(9)保留
3、/etc/group (1)group文件格式: groupname:password:gid:user_list
——groupname:組名稱
——password:組密碼
——gid:組識別號
——user_list:該組用戶清單
# cat /etc/group
root:x:0: xin:x:1000:

二、組管理


三、用戶管理


四、權限管理 Linux文件權限位 (1)文件權限位的表示:-rwxrwxrwx
(2)第一位表示文件的類型,-表示普通文件,d表示目錄文件,l表示符號鏈接文件;
(3)接下來三位表示owner用戶的讀,寫,執行權限
(4)緊接著三位表示group用戶的讀,寫,執行權限
(5)最後三位表示world用戶的讀,寫,執行權限
Linux文件權限管理 1、給文件賦予相應的權限位(chmod) (1)chmod介紹 【1】chmod命令格式為:
chmod [option] mode files...
【2】mode表示格式:
<1>、數字方式:[n][n][n] r=4 w=2 x=1
rwx:4+2+1; r-x:4+1; rw-:4+2
<2>、文本方式:[ugoa][+ - =][rwx]
u -- 該檔案的擁有者;
g -- 與該檔案的擁有者屬於同一個群體(group)者;
o -- 其他以外的人; a -- 所有人; + -- 增加權限
- -- 去掉權限
= -- 設定權限
(2)舉例1 【1】給text文件賦予rwxr-xr-x權限: chmod 755 text
【2】給text及其子目錄底下所有文件賦予rwxr-xr-x權限:
chmod -R 755 text
(3)舉例2 【1】為文件abc的組擁有者增加rw權限
chmod g+rw abc
【2】為abc文件的用戶擁有者去除x權限
chmod u-x abc
【3】指定文件abc的其他用戶權限為rw-
chmod o=rw-
【4】為文件abc及其子目錄底下的所有文件的全體用戶增加x權限
chmod -R a+x abc
2、設置文件所屬的用戶以及所屬的組(chown,chgrp) (1)chgrp 【1】chgrp用來更改文件的組擁有者,其一般格式為:
chgrp [option] group file
【2】把文件abc的組擁有者改為study:
chgrp xin abc
【3】把test及其子目錄下的所有文件的組擁有者改為study:
# chgrp -R xin test/

(2)chown 【1】chown用來更改文件所有者與組擁有者,其一般格式為:
chown [option] owner[:group] file
【2】將test及其子目錄下的所有文件的所有者改為jjl:
# chown -R root test/
【3】將test文件的所有者改為jjl,組擁有者改為study:
# chown -R xin:xin test/
3、set uid(suid)、set gid(sgid) 當 s 標志在文件擁有者的 x 項目為 SUID,那 s 在群組的 x 時則稱為 Set GID, SGID !
(1)/usr/bin/passwd -rwsr-xr-x
(2)/etc/shadow -r--------
(3)suid權限僅對可執行程序有效即具有x權限
(4)本權限針對運行中的進程
(5)運行中的進程將具有該程序擁有者的權限
(6)s出現在組權限的x位置上時,稱為sgid (7)舉例
vbird 對於 /usr/bin/passwd 這個程序來說是具有 x 權限的,表示 vbird 能運行 passwd;
passwd 的擁有者是 root 這個帳號;
vbird 運行 passwd 的過程中,會『暫時』獲得 root 的權限;
/etc/shadow 就可以被 vbird 所運行的 passwd 所修改。
4、sticky bit(sbit) : 粘著位t屬性
(1)一個文件擁有w屬性,則可以刪除 (2)/tmp drwxrwxrwt
(3)僅對目錄有效
(4)防止文件或目錄被非屬主刪除,只能由自己或者root用戶刪除

5、應用

如果在這三個數字之前再加上一個數字的話,最前面的那個數字就代表這幾個權限了!

4 為 SUID2 為 SGID1 為 SBIT
(1)例1 # ls -l a -rw-r--r-- 1 root root 7 8月 26 20:01 a
# chmod 4644 a
# ls -l a
-rwSr--r-- 1 root root 7 8月 26 20:01 a (大寫S代表沒有可執行權限)
# chmod 4744 a
# ls -l a
-rwsr--r-- 1 root root 7 8月 26 20:01 a

(2)例2 # chmod 7777 a
# ls -l a
-rwsrwsrwt 1 root root 7 8月 26 20:01 a

6、umask (1)正常用戶下默認:0002 表示其他用戶必須去掉2的權限 , mode = 777 & ~umask (2)root用戶:0022 (3)如果是文件,還會去掉可執行權限,mode = 666 & ~umask

Copyright © Linux教程網 All Rights Reserved