1. 程式人生 > >第七節課:文件的各種權限以及linux分區命名規則

第七節課:文件的各種權限以及linux分區命名規則

gid proc 有效時間 強烈 環境變量 root用戶 har srv 放置

筆記

(借鑒請改動)

技術分享圖片技術分享圖片

技術分享圖片

5.3:文件特殊權限

SUID 臨時擁有文件所有者的權限(基本上只是執行權限)

SGID 臨時擁有文件所有組的權限,在目錄中創建文件自動繼承該目錄的用戶組

SBIT 粘滯位,也稱保護位,為了不讓其他用戶私自修改內容。(讓用戶只能刪除自己的內容)

chmod //設置文件或目錄的權限。chmod 【參數】權限 文件或目錄

-R //遞歸操作 -f //忽略錯誤

例:chmod -Rf 777 /etc/fstab //給予777權限

chmod u+s /etc/fstab 添加suid權限

chmod u-s /etc/fstab 去掉suid權限

chmod g+s /etc/fstab 添加sgid權限

chmod g-s /etc/fstab 去掉sgid權限

chmod o+t test 添加sbit權限

chmod o-t test 去掉sbit權限

技術分享圖片

chmod -Rf 0777 /tmp 前面的0為特殊權限,suid=4,sgid=2,sbit=1

技術分享圖片

u為用戶 g為組 其他用戶為o -a代表所有人,也可單獨授權:

例:chmod u+x /etc/fstab 授予所有者執行權限

chown 設置文件或目錄的所有者或所有組屬性。chown 【參數】 所有者:所有組 文件或目錄

-R //遞歸操作 -f

//忽略錯誤

例:chown linuxprobe:root test 把test所有者改為linuxprobe,所有組為root

如果rwxrwxrwx後面的s或者t是小寫則代表原先有權限,大寫就代表原先沒有權限

技術分享圖片

以上t代表其他用戶原先擁有執行權限

5.4:文件的隱藏屬性

chattr 設置文件的隱藏屬性。chattr 【參數】 文件,若想加隱藏參數,直接 “+參數” ,去掉隱藏權限 “-參數” 即可。

i //無法對文件進行修改,僅能修改子文件,不能創建和刪除 a //僅允許補充(追加)內容,無法覆蓋和刪除

S //文件變更後立即同步硬盤 s //徹底從硬盤刪除不可恢復

A //不再修改最後訪問時間 b //不再修改存取時間

D //檢查壓縮文件中的錯誤 d //dump備份時忽略本文件

c //默認將文件或目錄進行壓縮 u //當刪除時依然保留硬盤數據,方便以後恢復

t //讓文件系統支持尾部合並 X // 可直接訪問壓縮文件中的內容

lsattr 用於顯示文件的隱藏權限。lsattr 【參數】 文件

a // 顯示所有的文件和目錄 l //顯示隱藏屬性的全稱,默認顯示簡稱一個字母

R //遞歸處理 d //若目標為目錄,請加此參數

技術分享圖片

5.5:文件訪問控制列表

一般權限,特殊權限,隱藏權限對所有用戶有效,所以引入針某一用戶或用戶組設置權限的ACL

setfacl 管理設置文件的ACL規則 setfacl 【參數】 文件

-R //目錄遞歸處理 -m // 針對普通文件

-b //刪除ACL規則參數

u是對用戶的指定,g是對組的指定

例:setfacl -Rm u:linuxprobe:rwx /root 讓用戶linuxprobe對/root有rwx權限

setfacl -Rm g:linuxprobe:rwx /root 讓用戶組linuxprobe的用戶對/root具有rwx權限

getfacl 用來查看ACL信息 。 getfacl 文件名稱

技術分享圖片

最後的(.)變成(+)代表有facl權限

5.6:su命令與sudo服務

su命令可以解決切換用戶身份的需求,使得當前用戶在不退出登錄的情況下,順暢地切換到其他用戶。

例:su - linuxprobe

su命令與用戶名之間有個減號(-),是完全切換到新的用戶,環境變量信息也變更為新用戶的相應信息,強烈建議在切換用戶身份時添加這個減號(-)。

root用戶切換其他用戶不用驗證,其他用戶切換到root用戶需要驗證

su命令會暴露root密碼,所以引入sudo

sudo 給普通用戶提供額外的權限來完成原本root管理員才能完成的任務。sudo 【參數】 命令

-h //列出幫助信息 -l //列出當前用戶可執行的命令

-u 用戶名或UID值 // 以指定的用戶身份執行命令 -b //在後臺執行指定的命令

-k //清空密碼的有效時間,下次執行sudo時需要再次進行密碼驗證

-p //更改詢問密碼的提示語

sudo的功能:

1、限制用戶執行指定的命令:

2、記錄用戶執行的每一條命令;

3、配置文件(/etc/sudoers)提供集中的用戶管理、權限與主機等參數;

4、驗證密碼的後5分鐘內(默認值)無須再讓用戶再次驗證密碼。

vim /etc/sudoers sudo配置文件,但有錯不會提醒,建議使用visudo

誰可使用 允許的主機 = (以誰的身份) 可執行的命令列表

例:linuxprobe ALL=(ALL) /usr/bin/cat

技術分享圖片

技術分享圖片

技術分享圖片

第六章

6.1一切從“/”開始(FHS結構)

linux中的一切文件都是從“根(/)”開始的

技術分享圖片

linu中的常見目錄:

/boot //開機所需文件—內核、開機菜單以及所需配置文件等
*/dev //以文件形式存放任何設備與接口
*/etc //配置文件
/home //普通用戶家目錄
/bin //存放單用戶模式下還可以操作的命令
/lib //開機時用到的函數庫,以及/bin與/sbin下面的命令要調用的函數
/sbin //開機過程中需要的命令
*/media //用於掛載設備文件的目錄
/opt //放置第三方的軟件
*/root //系統管理員的家目錄
/srv //一些網絡服務的數據文件目錄
/tmp //任何人均可使用的“共享”臨時目錄
/proc // 虛擬文件系統,例如系統內核、進程、外部設備及網絡狀態等(只是運行狀態,不是真實的數據)
/usr/local //用戶自行安裝的軟件
/usr/sbin //Linux系統開機時不會使用到的軟件/命令/腳本
/usr/share //幫助與說明文件,也可放置共享文件
/var //主要存放經常變化的文件,如日誌
/lost+found // 當文件系統發生錯誤時,將一些丟失的文件片段存放在這裏

上述加星號的新手需優先記住。

bin或sbin都是保存程序文件的目錄

絕對路徑:是從根目錄(/)開始的目錄或文件

相對路徑:是相對於當前路徑的寫法

6.2、物理設備的命名規則

IDE設備 /dev/hd[a-d] //已經很少見
SCSI/SATA/U盤 /dev/sd[a-p] //常見的設備
軟驅 /dev/fd[0-1]
打印機 /dev/lp[0-15]
光驅 /dev/cdrom //光驅一般以/dev/sr0,/dev/sr1......命名
鼠標 /dev/mouse
磁帶機 /dev/st0或/dev/ht0

常見的 /dev/sd 開頭設備

由a-p來代表16塊不同的硬盤,默認從a開始,由內核的識別順序來決定,識別的第一塊為/dev/sda,第二塊/dev/sdb ......

主分區或擴展分區編號從1開始至4結束

邏輯分區從5開始

分區編號只是編號,不是指第幾個分區,例如/dev/sdb3 只是指第二塊硬盤編號為3的主分區

技術分享圖片

在硬盤分區中,由於第一扇區字節容量問題(512字節),主引導記錄(446字節),結束符(2字節),每個分區(16字節)

以上情況導致只能劃分四個分區,實際中卻可能需要超過的4個分區

技術分享圖片

為解決上述問題,需要最後16字節指向另外的分區,來實現劃分多於4個分區。這就是擴展分區。

擴展分區不是確切的分區,可以說是一個指針,指向另外的分區,在擴展分區中可以劃分邏輯分區。

例如:/dev/sdb8就是第二塊硬盤中的邏輯分區

技術分享圖片

(借鑒請改動)

復習:第五章的權限,第六章的FHS目錄結構

預習:預習第六章和第七章7.1

第七節課:文件的各種權限以及linux分區命名規則