<0>.建立目錄和檔案的預設權限[umask]
(1)umask ---> 檢視系統目錄預設預留權限位;檔案預設預留權限位 ---> 目錄權限減去<111>
(2)umask 007 ---> 臨時修改系統目錄預設預留權限位 為 007
(3) 永久修改系統umask值
1).vim /etc/profile 系統配置檔案,使用者登陸後才會運作
if [ $UID -gt 199 ] && [ "`/usr/bin/id -gn`" = "`/usr/bin/id -un`" ]; then
umask 002 普通使用者的umask
else
umask 022 超級使用者的umask
fi
2).vim /etc/bashrc shell的配置檔案,系統啟動自動運作
if [ $UID -gt 199 ] && [ "`/usr/bin/id -gn`" = "`/usr/bin/id -un`" ]; then
umask 002
else
umask 022
fi
3).source /etc/profile 更新修改後的指令;讓更改立即生效
4).source /etc/bashrc 更新修改後的指令;讓更改立即生效
<1>.特殊權限位
1>.sticky 粘制位
作用:隻針對目錄生效,當一個目錄上有sticky權限時,在這個目錄中的檔案隻能被檔案的所有者和root使用者删除
設定方式:chmod o+t dir 或者 chmod 1XXX dir ---> 給目錄加上粘制位
2>.sgid 強制位
作用:對檔案:隻針對二進制可執行檔案,當檔案上有sgid時,任何人執行檔案是以該檔案所有組的身份去執行
對目錄:當目錄上有sgid時,任何人在此目錄中建立的檔案都屬于目錄的所有組
設定方式: chmod g+s file|dir
chmod 2xxx file|dir
3>.suid 冒險位
作用:隻針對二進制可執行檔案,當檔案上有suid時,任何人執行這個檔案中的程式産生的程序都屬于檔案的所有人
設定方式: chmod u+s file
chmod 4xxx file
<2>.acl清單( setfacl )
1>.作用:讓特定使用者擁有特定的權限
2>.acl清單的檢視
[[email protected] mnt]# setfacl -m u:kiosk:rwx file
-rw-rwxr--+ 1 root root 0 Oct 1 19:45 file
注釋 : 第 11 位為 . 時代表沒有 acl 權限 ; 為 + 時代表有 acl 權限。
[[email protected] mnt]$ getfacl file -----> 檢視檔案的acl權限
# file: file ----->檢視acl開啟後的檔案的權限
# owner: root ----->檔案名稱
# group: root ----->檔案所在組
user::rw- ----->檔案所有人的權限
user:kiosk:rwx ----->指定使用者的權限
group::r-- ----->檔案所在組的權限
mask::rwx ------>能賦予使用者的最大權限值
other::r-- ----->其他人的權限
3>.acl清單的管理
getfacl file|dir ---> 檢視檔案的 ACL 權限
setfacl -m <u|g|m>:<username|groupname>:rwx 檔案名 ---> 給檔案添加指定使用者|組|mask的指定權限值
setfacl -m d:<u|g|m>:<username|groupname>:rwx目錄名 ---> 給目錄添加指定使用者|組|mask的指定權限值
setfacl -x <u|g>:<username|groupname> 檔案名 | 目錄 ---> 移除指定使用者|組在檔案或者目錄上的指定權限值
setfacl -b 檔案名 | 目錄 ---> 移除檔案或者目錄上的所有acl值
4>.mask的值
在權限清單中mask表示能生效的最大權力值
當用chmod減小開啟後acl的檔案權限時,mask值會發生變化
chmod g-w file----->看到減掉時的mask值
setfacl -m m:rwx file----->恢複mask值
setfacl -m d:u:student:rwx /mnt/file----->acl預設權限隻針對目錄設定
"acl權限隻針對設定完成之後建立立的檔案或目錄生效,而已經存在的檔案是不會繼承預設權限的“
<3>.檢視程序
圖形檢視 gnome-system-monitor
程序檢視指令
ps -A ---> 所有程序
-a ---> 目前環境中運作的程序,不包含環境資訊
-u ---> 在目前環境中運作的程序
a ---> 在目前環境中運作的程序
x ---> 列出系統中所有運作包含tty輸出裝置
f ---> 列出程序的父子關系
e ---> 列出程序的詳細資訊(系統的資源調用)
<4>.程序常用的組合
ps aux ---> 顯示系統中所有程序并顯示程序使用者
ps ef ---> 顯示程序詳細資訊并顯示程序父子關系
ps ax ---> 顯示目前系統中的所有程序
<5>.顯示程序指定資訊
ps -o xxx ---> 顯示程序的指定資訊
ps -o comm ---> 程序名稱
user ---> 程序所有人
group ---> 程序所有組
%cpu ---> 程序cpu使用率
%mem ---> 程序記憶體使用率
pid ---> 程序id
nice ---> 程序優先級
<6>.程序排序
ps ax --sort=+%cpu 由低到高排序
-%cpu 有高到低排序
<7>.程序的優先級
S --->程序狀态 s --->頂級程序 N --->優先級低
+ --->前台運作 < --->優先級高 l --->記憶體中有鎖定空間
優先級範圍 ----> (-20~19)-20 最高,19 最低
優先級檢視 ----> ps ax -o pid,nice,comm
改變程序優先級 ----> renice -n 優先級數字 程序id
指定某個優先級開啟程序:
nice -n 優先級數字 程序名稱 ---> 開啟程序并且指定程式優先級,在前台運作
nice -n -5 vim& ---> 開啟vim程序并且指定程式優先級為-5,在背景運作
<8>.環境中程序的前背景調用
jobs --->檢視被打入環境背景的程序
jobs -l ---> 檢視目前 bash 的 job, 并顯示該 job 的狀态與 PID
ctrl+z --->把占用終端的程序打入背景
fg jobsnum --->把背景程序調回前台
bg jobsnum --->把背景暫停的程序運作
comm & --->讓指令直接在背景運作
<9>.程序信号等級
常用程序信号等級
1 程序重新加在配置
2 删除程序在記憶體中的資料
3 删除滑鼠在記憶體中的資料
9 強行結束單個程序(不可以被阻塞)
15 正常關閉程序(可能會被阻塞)
18 繼續運作暫停的程序
19 暫停指定程序,(不會被阻塞)
20 暫停指定程序,(會被阻塞)
發起信号
kill 信号 程序pid
killal 信号 程序名稱**加粗樣式**
pkill 信号 條件
<10>.信号的監控(top)
top:動态監控程序,檢視程序資訊
s: 修改程序重新整理間隔時間
m: 根據記憶體占有率進行排序
c: 根據 cpu 占有率進行排序
u: 後面輸入使用者名 , 用來檢視該使用者發起的所有程序
k: 後面跟要作用的程序 pid, 和發起的信号 (eg:9,15,20) 用來給某個程序發起一信号
q: 退出程序檢視界面
h: 顯示 top 指令的幫助
1 ;顯示cpu每個核的負載