在系統中我們可以用chmod來設定文件權限 設定方式由三種1 字符方式設定文件權限 2數字方式設定文件權限 3依照模板複製文件權限
1字符方式來設定權限 chmod <u|g|o|a><+-=><r|w|x>目標 u代表用戶 g代表用戶組 o代表其他人 a代表所有 後面跟+-= 分別是添加 撤銷 設定 後面跟相應的權限
對於file1來說所有人的權限是rwx 現在我們把w權限剪掉掉
給所有人和所有組去掉一個r權限
給其他人加上一個執行權限
給所有人加上r權限給所有組加上w權限 其他人去掉一個r權限
在權限設定時 相同位可以合併 不同位以逗號隔開
給所有位都減去r權限 給所有加上r權限
再給所有位都加上r權限
其他位權限的統一操作 直接採用+/-即可
我們給所有位都加上rwx權限 這裏不表明用戶會出問題 其他位的權限不是rwx
正確的添加方法
現在在-w權限 只對我們的所有人位權限作出了更改
r/x 表示的是去掉所有 但是w只去掉所有人的權力 如果想要給所有位都減去或者加上w
a+/-/+ 權限 代表所有位 如果前面什麼都不加 在某些權限可能會出問題
我們的rwx一共是三位 如果三位權限都沒有就是000 如果三位的權限都有那就是111 111代表二進制的7 權限可以用一個八進制數字來表示就是0-7 權限的管理方法 chmod 數字 TAG
對於file2文件我想讓他的權限和file1相同
file1的權限就是555 操作如下
再讓他的所有人和所有組的權限都加一個w 也就是rwxrwxr-x 等同於775
所以在更改權限的時候只需要把權限對應的八進制數計算出來賦值就可以了
3 權限複製 chmod --reference=/mnt/westos westos1 源文件 目標文件
比如當前file1文件的權限和file3的權限是不一樣的
我們複製其權限 把file3文件的權限賦予給file1
權限預留閥值的理解
資源存在的意義在於共享 權限開放越大 共享效果越明顯 但是安全性越差 對於系統安全而言 開放權力越小 系統越安全在系統中開放應應開放的權力以確保系統的功能性及安全性
在系統當中可以通過命令來查看系統的預留閥值 前面的0表示特殊權限的值 系統的最高權限777-閥值022=755 也就是說我們建立目錄的權力是755
文件的權力 與umask有一定關係 但是如果我們的umask上沒有設定預留閥值 那麼文件權限的預留閥值要看文件系統是什麼類型的 我們所用到的日誌文件系統 比如:xfs或者ext文件系統他的預留閥值會減去個111 因爲在linux中執行權力是很不安全的權力也就是777-022=755-111=644 他在文件系統上就會被去掉 因爲我們所說的病毒 木馬 以及一些後臺等等 都是我們所說到的程序 而程序如果有執行權力 他就可以運行起來 這樣會給系統帶來不必要的損害 所以在文件系統把111去掉拉 而不是umask去掉了
創建文件和目錄 權限分別是644和755
這個預留閥值越大 代表系統越安全 但是開放的功能就越少
現在再新建文件權限應該是777-077-111=600 新建目錄的權限應該是777-077=700
但是這個設定是臨時的設定 也就是說爲退出這個shell 重新打開一個shell這個設定就不再生效了
重新鏈接 新建文件可以看到權限是644 目錄的權限仍然是755
這是因爲我們再shell當中設定的umask077 只是當前的shell生效了 當我退出這個程序 程序的設定就跟隨程序的退出而關閉了我們把這樣的設定稱爲臨時設定 如果想永久的設定umask值 需要編輯兩個文件 第一個是shell的配置文件
這裏面有個if語句 如果我們的UID是大於199並且用戶的名稱和組名稱是一致的那麼他用的是上面這個 如果UID小於199或者用戶和組的名字不一樣用下面哪個 上面哪個是普通用戶的umak 下面那個是超級用戶的umask
現在我們修改超級用戶的umask 用戶的安全性就提高了
|
還要修改用戶環境的配置文件 這兩個文件的值必須是一直的
這兩個文件更改完以後不會立即生效 因爲這個文件在shell開啓的時候已經讀過了 在我們更改完以後shell根本就沒有識別我們當前的更改
我們需要刷新一下
我們再創建文件 先把mnt下的文件刪掉 可以看到權限是777-077-111=600 而不是之前的644
新建目錄權限777-077=700
權限的預留閥值可以直接用umask直接指定 但是這個指定是臨時的 umask 加預留閥值 就可以設定了 永久的更改umask需要更改兩個文件 shell的配置文件和系統用戶的配置文件 值兩個文件的配置必須是一致的
linux文件權限的設定方法
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.