關鍵檔案及許可權問題命令
一.使用者賬號檔案——passswd
“etc/passwd”檔案域的含義
域 含義
username 登入名
password 加密的使用者口令
uid 使用者ID
gid 使用者組ID
userinfo 使用者組資訊
home 分配給 使用者的主目錄
shell 使用者登入後將執行的shell
二.使用者影子檔案——shadow
“etc/shadow”檔案域的含義
域 含義
username 登入名
password 加密的使用者口令
lastchg 表示從1970年一月一日起到上次修改口令經過的天數
min 表示兩次修改口令之間至少經過的天數
max 表示口令還會有效的最大天數
warn 表示口令失效前多少天向系統發出警告
inactive 表示禁止登陸前使用者名稱還有多少天失效
expire 表示使用者被禁止的時間
flag 保留域
三. 存放新使用者配置檔案——skel
/etc/skel目錄 用於存放新使用者配置檔案,該目錄的預設檔案為隱藏檔案。在建立新使用者的時候,該目錄下的所有檔案會自動複製到新使用者的家目錄中。
通過對該檔案目錄中的檔案進行編輯、修改等操作,我們可以為使用者提供一個統一標準化的使用者初始環境。
此檔案被/etc/default/useradd(新建使用者的規則檔案) 所呼叫:
# useradd defaults file
GROUP=100
HOME=/home
INACTIVE=-1
EXPIRE=
SHELL=/bin/bash
SKEL=/etc/skel
CREATE_MAIL_SPOOL=yes
通過該檔案修改SKEL的值,我們可以指定新建使用者家目錄中的預設檔案的存放位置。
四.許可權問題
1、許可權位的含義 目前Llinux的許可權位有10位(新版本中有些檔案的許可權位最後會有個.,表示該檔案是受SELinux的保護的),每一位都代表著不同的含義:
這十位的含義:
第1位:表示檔案型別,Linux不像Windows使用擴充套件名錶示檔案型別,而是使用許可權位的第1位表示。雖然Linux檔案的種類不像Windows那麼多,但也不少,詳細情況可使用"info ls"命令檢視,常見的檔案型別有:
標識 |
表示檔案型別 |
說明 |
---|---|---|
- |
普通檔案 |
|
b |
塊裝置檔案 |
這是一種特殊裝置檔案,儲存裝置都是這種檔案,如分割槽檔案/dev/sda1 |
c |
字元裝置檔案 |
這也是特殊裝置檔案,輸入裝置一般都是這種檔案,如滑鼠、鍵盤等 |
d |
目錄檔案 |
|
l(小寫L) |
軟連結檔案 |
|
p |
管道符檔案 |
這是一種非常少見的特殊裝置檔案 |
s |
套接字檔案 |
這也是一種特殊裝置檔案,一些服務支援Socket訪問,就會產生這樣的檔案 |
第2-4位:表示檔案所有者(用u表示)的許可權,有字母則由該許可權,為-則表示沒有該許可權
標識 | 含義 | 許可權 |
---|---|---|
r | read | 讀取許可權 |
w | write | 寫許可權 |
x | execute | 執行許可權 |
第5-7位代表檔案所屬組(用g表示)的許可權,同樣用rwx表示,第8-10位代表其他人(用o表示)的許可權,也用rwx表示。
2、基本許可權命令
①chmod:修改檔案的許可權模式,命令所在路徑為/bin/chmod,所有使用者可執行
命令格式:chmod [選項] 許可權模式 檔名
選項:
-R:遞迴設定許可權,也就是給子目錄中的所有檔案設定許可權
許可權模式的格式:[ugoa][+ - =][perms],即[使用者身份][賦予方式][許可權]。
使用者身份:
u——所有者(user)
g——所屬組(group)
o——其他人(other)
a——代表全部(all)
賦予方式:
+ ——加入許可權
- —— 減去許可權
= ——設定許可權
3、數字許可權
4:同r,讀
2:同w,寫
1:同x,執行
示例:755中的第一位7表示給檔案所有者賦的許可權為4+2+1,即讀寫執行,同理第二位5表示給所屬組賦的許可權為4+1,即讀和執行,最後一位則是給其他人賦予的許可權
chmod 755 cde
常用數字許可權:
數字許可權 | 使用場景 | 描述 |
---|---|---|
644 | 檔案的基本許可權 | 所有者擁有讀、寫許可權,所屬組和其他只讀 |
755 | 檔案的執行許可權和目錄的基本許可權 | 擁有者讀、寫和執行,所屬組和其他人可讀寫 |
777 | 最大許可權 | 所有人都對該檔案擁有讀寫和執行許可權 |
4、修改所有者和所屬組
①chown:修改檔案和目錄的所有者和所屬組,命令所在目錄為/bin/chown,所有使用者可執行
命令格式:
chown [選項] 所有者:所屬組 檔案或目錄
-
1
選項
-R:遞迴設定許可權
Tip
:普通使用者不能修改檔案的所有者,哪怕自己是這個檔案的所有者也不行;普通使用者只可以修改所有者是自己的檔案的許可權(rwx)
新增使用者:新增使用者的時候會建立一個同名的該使用者的初始組,即同時會新增一個名為user1的group
useradd user1
-
1
給新加使用者設定密碼:只有root使用者可以在設定密碼時忽略Linux的提示
passwd user1
修改檔案所有者:
chown user1 cde
-
1
②chgrp:修改檔案和目錄的所屬組,命令所在目錄/bin/chgrp,所有使用者可執行
chgrp user1 cde
-
1
改回所有者和所屬組:
chown root:root cde
5、許可權含義的解釋
首先,讀、寫、執行許可權對檔案和目錄的作用是不同的。
許可權對檔案的作用:
讀(r):對檔案有讀許可權,代表可以讀取檔案中的資料。如果把許可權對應到命令上,那麼一旦對檔案有讀許可權,就可以對檔案執行cat、more、less、head、tail等檔案檢視命令。
寫(w):對檔案有寫許可權,代表可以修改檔案中的資料。如果把許可權對應到命令上,那麼一旦對檔案有寫許可權,就可以對檔案執行vim、echo等修改檔案資料的命令。注意:對檔案有寫許可權並不能刪除檔案本身,只能修改檔案中的資料;如果想刪除檔案,則需要對檔案的上級目錄擁有寫許可權。
執行(x):對檔案有執行許可權,代表檔案可以執行。在Linux中,只要檔案有執行許可權,這個檔案就是執行檔案了。只是這個檔案到底能不能正確執行,不僅需要執行許可權,還要看檔案中的程式碼是不是正確。對檔案來說,執行許可權是最高許可權。
許可權對目錄的作用:
讀(r):對目錄有讀許可權,代表可以檢視目錄下的內容,也就是可以檢視目錄下有哪些檔案和子目錄。如果把許可權對應到命令上,那麼一旦對目錄有了讀許可權,就可以在目錄下執行ls命令,檢視目錄下的內容。
寫(w):對目錄有寫許可權,代表可以修改目錄下的資料,也就是可以在目錄中新建、刪除、複製、剪下子檔案或子目錄。對應到命令上,就可以在目錄下執行touch、rm、cp、mv命令。對目錄來說,寫許可權是最高許可權。
執行(x):目錄是不能執行的,那麼對目錄擁有執行許可權,代表可以進入目錄。對應到命令上就是可以對目錄執行cd命令,進入目錄。
目錄的可用許可權只有以下3個:
0:任何許可權都不賦予
5:基本的目錄瀏覽和進入許可權
7:完全許可權(讀+寫+進人)
6、umask預設許可權
即新建檔案時賦予檔案的許可權,在/etc/profile中定義。
檢視系統的umask許可權:
umask
-
1
用八進位制數值顯示umask許可權:
umask -S
說明:上圖表示root使用者新建的檔案對於root使用者有rwx許可權,對於所屬組的其他使用者有rx許可權,對於其他使用者有rx許可權。‘
根據umask值計算新建檔案或資料夾的初始許可權的演算法如下: