分散式系統詳解--Linux(許可權)
分散式系統詳解--Linux(許可權)
之前再windows上面其實也是有許可權的,只是因為我們登入windows系統的時候,可能直接登入的我們自己的電腦,所以直接登入的是管理員許可權級別的使用者,但是再linux上面,常常是以伺服器的形式來進行操作。這樣就需要一個管理員以及多個使用者,管理員擁有所有的許可權,其他的人僅僅是以使用者的形式進行操作,這樣就使得Linux的系統的安全性更高。
一、檔案許可權說明。
如果看明白了這件事情呢?那我們看
[[email protected] ~]# ll
總用量 52
-rw-r--r--. 1 root root 0 8月 14 02:46 5??ĖEG????2?0?-.
-rw-------. 1 root root 1438 12月 15 2017 anaconda-ks.cfg
-rwxr--r--. 1 root root 240 12月 16 2017 a.txt
-rw-r--r--. 1 root root 27338 12月 15 2017 install.log
-rw-r--r--. 1 root root 7572 12月 15 2017 install.log.syslog
drwxr-xr-x. 3 uucp 143 4096 8月 9 00:51 jdk1.8.0_151
-rw-r--r--. 1 root root 0 9月 19 02:48 mima.av
[ [email protected] ~]#
那我們怎麼去改變一個檔案的許可權呢?
(1)改變檔案的許可權--用“+”,“-”號
1, chmod u+x mima.av (u:所有者 ; x :執行權)
我們會發現在mima.av上面 -rwxr--r--上面root對這個檔案有了執行權。
2,想不僅對所有者進行賦許可權,還有組和人,那就 chmod g+w,o+w mima.av (g:組許可權 ; o:人;w :寫許可權;)
[[email protected] ~]# chmod g+w,o+w mima.av
[[email protected] ~]# ll
總用量 52
-rw-r--r--. 1 root root 0 8月 14 02:46 5??ĖEG????2?0?-.
-rw-------. 1 root root 1438 12月 15 2017 anaconda-ks.cfg
-rwxr--r--. 1 root root 240 12月 16 2017 a.txt
-rw-r--r--. 1 root root 27338 12月 15 2017 install.log
-rw-r--r--. 1 root root 7572 12月 15 2017 install.log.syslog
drwxr-xr-x. 3 uucp 143 4096 8月 9 00:51 jdk1.8.0_151
-rwxrw-rw-. 1 root root 0 9月 19 02:48 mima.av
3,將賦予檔案的許可權刪掉,chmod g-w,o-w mima.av (g:組許可權 ; o:人;w :寫許可權;)
(2)改變檔案的許可權--用“=”號
例:chmod u=rwx,g=rw,o=rw mima.av
(3)改變檔案的許可權--用“數字”改變
許可權的數字表示 | |
---|---|
r(讀) | 4 |
w(寫) | 2 |
x(執行) | 1 |
示例:rwxr-xr-xr | 7 5 5 |
二、許可權的作用
(1)許可權對檔案的作用
r:讀取檔案內容(可以執行 cat more head tail)
w:編輯新增、修改檔案內容(可以執行vi echo)----特別指出:不包括刪除檔案。
x:執行
(2)許可權對目錄的作用
r:可以查詢目錄下的檔名
w:具有修改目錄結構的許可權。如新建檔案和目錄,刪除此目錄下檔案和目錄,重新命名此目錄下檔案和目錄(如touch、rm、mv、cp)
x:可以進入目錄
值得注意的是:
對檔案來講:最高許可權是:x
對目錄來講:最高許可權是:w
對目錄而言: 有意義的數字: 0(沒有許可權)、5(r+x 讀+執行)7(r+w+x(全部)) 其他均沒有實際意義
三、其他許可權命令
當我們需要講一個檔案賦予一個使用者所有的許可權時,也就是說可能附的許可權是:7 5 7。
這樣的許可權既不實際也不合理。那麼我們怎麼辦呢?
(1)改變擁有著身份 chown 使用者
(2)改變使用者組的身份 chgrp 使用者組(在Linux中建立使用者的時候同時建立了使用者組)
(3)同時改變 chown root:root mcb
四、許可權分配例項
要求:1,我建立了一個機密神祕資料夾 secret
2,密碼小組長 leader可以擁有最高許可權(rwx)
3,密碼小組員 member1 member2 member3 可以擁有檢視許可權
4,其他人無許可權
1,新建secret 檔案 mkdir secret
2,新建一個小組長 useradd leader
3,新建三個小組員 useradd member1; useradd member2;useradd member3;
4,新建一個分組 groupadd member
5,將三個小組員移動到member 小組中 gpasswd -a member1 member
6,更改資料夾的使用者許可權 chown leader:member secret
7,更改資料夾的屬性許可權 chmod 750 secret
最終結果如下:
總結:
分配檔案基本許可權時,在最小許可權情況下能夠實現要求即可。
五、預設許可權
(1)檔案的預設許可權
1,檔案預設不能建立為執行檔案,必須手工賦予執行許可權。
2,所以檔案預設最大的許可權為666
3,預設許可權需要換算成字母再相減
4,建立檔案之後的預設許可權為 666減去umask值。
又要舉例子了:
其實是這樣的
(1)檔案的許可權是 666 umask的值是022 -rw-rw-rw- 減去 -----w--w- 等於 -rw-r--r-- 644
(2)檔案的許可權是 666 umask的值是033 -rw-rw-rw- 減去 ----wxwx 等於 -rw-r--r-- 644
(2)目錄的預設許可權
1,目錄的預設許可權最大為777
2,預設許可權需要換算成字母再相減
3,建立檔案之後的預設許可權,為777減去umask的值。
(3)修改預設許可權方式
1,臨時生效,重啟之後就回復原來預設許可權。umask
2,永久生效。 vi /etc/profile(環境變數配置檔案)
OK 檔案和目錄的許可權大體瞭解就到這兒了~~
文章參考地址:https://www.imooc.com/learn/481
歡迎訂閱關注公眾號(JAVA和人工智慧)
獲取更多免費書籍、資源、視訊資料
知識點超級連結: