linux收回用户执行权限,Linux之文件权限管理命令
一、查看文件屬性。
1、命令ls -l filename 查看長格式形式查看文件詳細屬性。
ls -l file1 ##查看文件file1的詳細屬性
結果:
- |rw-r--r--| 1 |kiosk| kiosk| 0| Jul 21 09:18 | file1
[1] [2] [3] [4] [5] [6] [7] [8]
[1] 文件的類型
—
##空文件,或者文本
d
##目錄
l
##軟鏈接
s
##socket 套接字
b
##block 塊設備
c
##字符設備
[2]文件的權限
rw-
r- -
r- -
1
2
3
1、[u] 文件擁有者對文件有什么權利
2、[g] 文件所有組對文件有什么權力
3、[o] 其他人對文件能做什么操作
[3]
(1)對文件:文件硬鏈接個數(文件內容被記錄的次數)
(2)對目錄:目錄中子目錄的個數
[4]
文件的所有人
[5]
文件的所有組
[6]
(1)對文件:文件的大小
(2)對目錄:目錄中子文件的元數據(可以理解為文件的屬性)大小
[7]
文件的內容被修改的時間
[8]
文件的名稱
二、如何改變一個文件或者目錄的所有者及所屬組呢?
chown yan 文件名/目錄名##改變一個文件/目錄的所有者
chgrp student 文件名/目錄名##改變一個文件/目錄的所屬組
chown yan:student 文件名/目錄名##同時改變一個文件/目錄的所有者為yan,所屬組為student。
chown -R yan 目錄名##遞歸改變一個目錄及目錄下文件或者目錄的遞歸改變所有者
chgrp -R student 目錄名##遞歸改變改變一個目錄及其子目錄或者子文件的改變所屬組
chown -R yan:student 目錄名##同時改變一個目錄及其子文件的所有者為yan,所屬組為student。
1、改變文件的所有人,所屬組。
準備工作:
用root用戶建立一個file文件并查看其所有者所屬組均為root。
改變file文件的所有者及所屬組。
chown yan file ##改變一個文件/目錄的所有者
chgrp yan file ##改變一個文件/目錄的所屬組
chown yan:student 文件名/目錄名##同時改變一個文件/目錄的所有者為yan,所屬組為student。
結果:
同時改變文件所有人及所屬組:
2、改變目錄的所有人,所屬組。
準備工作:用root用戶遞歸建立目錄dir,及dir1。
如圖所示:
使用命令:
chown -R yan dir##遞歸改變dir目錄及目錄下文件或者目錄的遞歸改變所有者
chgrp -R student dir##遞歸改變dir目錄及其子目錄或者子文件的改變所屬組
chown -R yan:student dir1##同時改變dir1目錄及其子文件的所有者為yan,所屬組為student。
結果如圖所示:
三、如何改變文件的權限?
1.對權限的理解
r
對文件:是否可以查看文件中的內容 —>cat file
對目錄:是否可以查看目錄中有什么子文件或者子目錄 ----> ls dir
w
對文件:是否可以改變文件里面記錄的字符
對目錄:是否可以對目錄中子目錄或子文件的元數據進行更改
x
對文件:是否可以通過文件名稱調用文件內記錄的程序
對目錄:是否可以進入目錄
2.更改方式
1、用r,w,x來改變文件權限。
格式:chmod 所有人|所屬組|其他人 + 讀|寫|執行權限 文件|目錄
chmod file|dir
chmod u+x file1
chmod g-r file2
chmod o+w file3
chmod -r file4 ##刪除所有用戶的讀權限
如圖所示:
注意:也可以用chmod o=r-w file 來設置其他人用戶的讀,執行權限。
2、用數值的方法設定文件和目錄的權限。
r w x
4 2 1 #r取4,w取2,x取1
范例:
7=rwx
6=rw-
5=r-x
4=r--
3=-wx
2=-w-
1=--x
0=---
示例代碼:
chmod 777 file2
效果圖:
四、系統默認權限umask
umask:可以理解為系統收回的權限
umask #系統建立文件是默認保留的權力
umask 077 #臨時設定系統預留權限為077
圖示:
PS:系統默認收回了所有用戶的執行權限。
永久更改umask
vim /etc/profile ##此為系統配置文件
59 if [ $UID -gt 199 ] && ["`id -gn`"="`id -un`" ]; then
60umask 002 ##普通用戶的umask
61 else
62umask 077 ##超級用戶的umask
63 fi
vim /etc/bashrc ##shell配置文件
70if [ $UID -gt 199 ] && [ "`id -gn`"="`id -un`" ]; then
71umask 002
72 else
73umask 077
74fi
source /etc/profile##讓更改立即生效
source /etc/bashrc
五、特殊權限
特殊權限是用于彌補一般權限不能實現的功能,是針對文件設置的一種特殊功能。
1.sticky ##粘制位
作用:
只針對目錄生效,當一個目錄上有sticky權限時
在這個目錄中的文件只能被文件的所有者刪除
設定方式:
chomd o+t dir
chmod 1XXX dir
示例:
沒有加sticky權限,一個公共目錄用戶可以刪除其他用戶建立的文件。
給dir目錄加sticky權限后:
2.sgid ##強制位
作用
對文件: 只針對與二進制可執行文件
當文件上有sgid時任何人執行此文件產生的進程都屬于文件的組
對目錄:
當目錄上有sgid權限時任何人在此目錄建立的文件都屬于目錄的所有組
設定方式:
chmod g+s file|dir
chmod 2XXX file|dir
對文件設置sgid權限:
準備工作:
設置/bin/watch文件的所有組為student
用root用戶執行/bin/watch文件:
用ps命令查看
ps ax -o comm,user,group | grep watch
對目錄設置sgid權限:
3.suid ##冒險位
只針對于二進制可執行文件
當文件上有suid時任何人執行這個文件中記的程序產生的進程都屬于文件的所有人
設定方式
chmod u+s file
chmod 4XXX file
準備工作:
用root用戶執行/bin/watch 文件
查詢系統的watch進程:
六、acl權限列表
1.作用
讓特定的用戶對特定的文件擁有特定的權限
2.acl列表查看
ls -l file
-rw-rwxr--+ 1 root root 0 Jul 21 15:45 file
#+表示acl開啟
getfacl file ##查看acl開啟的文件的權限
## file: file ##文件的名稱
## owner: root ##文件的所有者
## group: root ##文件的所有組
user::rw- ##文件所有者的權限
user:kiosk:rwx ##指定用戶的權限
group::r-- ##文件所有組的權力
mask::rwx ##能賦予用戶的最大權力
other::r-- ##其他人的權限
示例:
3.acl列表的管理
getfacl file
setfacl -m u:username:rwx file##設定username對file擁有rwx權限
setfacl -m g:group:rwx file##設定group對file擁有權限
setfacl -x u:username file##從acl列表中刪除username
setfacl -x g:group file##從acl列表中刪除group
setfacl -b file##關閉file上的acl列表
設置acl權限:
刪除acl權限:
關閉acl列表:
注意:打開acl權限后,用ls -l 查詢到的文件權限是假的,真實的文件權限需要用getfacl filename查看,如果使用chmod g-w file 會減去mask里面的權限,重置用 setfacl -m m:rwx file
4.mask值
在權限列表中mask表示能生效的權力值
當用chmod減小開啟acl的文件權限時mask值會發生改變
chmod g-x file2
如果要恢復mask值
setfacl -m m:rwx file
5、acl的默認權限設定
acl默認權限只針對目錄設定
“acl權限只針對設定完成之后新建立的文件或目錄生效,而已經存在的文件是不會繼承默認權限”
setfacl -m d:u:student:rwx /mnt/dir##設定acl默認權限
setfacl -k /mnt/dir##取消目錄的acl默認權限
新建立文件:繼承默認權限
總結
以上是生活随笔為你收集整理的linux收回用户执行权限,Linux之文件权限管理命令的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python中对象包含几个部分_pyth
- 下一篇: c调用python第三方库_Python