linux用戶分爲幾類分別是什麼?
centos6
分爲3類
1 超級用戶 root UID 0
2 系統用戶 UID 1-499 管理進程,沒有家目錄,不能登錄系統
3 普通用戶 UID 500-65535
centos7
1 超級用戶 root UID 0
2 系統用戶 UID 1-999 管理進程,沒有家目錄,不能登錄系統
3 普通用戶 UID 1000-65535
文件rwx信息:
r 可以讀取文件中內容
w 可以編輯文件中內容
x 可以執行文件
文件權限總結:
- 1 root用戶對所有文件有絕對的權限,只要有了執行權限就可以對文件進行任何操作
- 2 對於文件來說,寫權限和執行權限,都需要讀權限配合,只要文件有了讀權限,也可以修改文件後強制保存.
- 3 如果想對文件進行操作,必須對文件賦予讀權限
目錄中rwx信息
r 讀取目錄中文件屬性信息 (有讀取文件block的權限)
w 可以在目錄中添加刪除文件數據信息 (有讀取文件block的權限)
x 是否可以進入到目錄中
目錄權限總結
- 1 root用戶對所有目錄有絕對全新
- 2 對於目錄來說,寫的權限和讀的權限,需要有執行權限配合
- 3 如果想對目錄進行操作,必須賦予執行權限
問題1 在test用戶的家目錄中,新建了一個test1目錄,並把權限修改爲400,訪問結果如下圖,爲什麼看不到文件屬性信息
文件的訪問過程是從根開始訪問
- / 的權限是 555 所以對應test其他用戶的權限是可以讀取inode信息 inode 5 r-x 有執行權限就可以進入目錄獲取目錄中所有文件ionde信息 讀權限可以查看目錄 block信息(目錄下所有文件名稱信息)
- /home 目錄的權限是 755 所以對應test其他用戶的權限是可以讀取inode信息 inode 5 r-x 有執行權限就可以進入目錄獲取目錄中所有文件ionde信息 讀權限可以查看目錄 block信息(目錄下所有文件名稱信息)
- /home/test 目錄的權限是 700 所以對應test其他用戶的權限是可以讀取inode信息 inode 7 rwx 有執行權限就可以進入目錄獲取目錄中所有文件ionde信息 讀權限可以查看目錄 block信息(目錄下所有文件名稱信息)
- /home/test/test1 目錄的權限是 400 所以對應test其他用戶的權限是可以讀取inode信息 inode 4 r-- 沒有有執行權限所以無法進入目錄獲取目錄中文件inode信息 但是有讀權限所以可以查看目錄 block信息(目錄下所有文件名稱信息)
總結:因爲沒有執行權限,無法進入到目錄中,所以無法獲取目錄中文件inode信息,因此文件屬性信息顯示爲???
特殊權限
suid 執行程序時使普通用戶擁有程序所有者的權限,但suid只能對二進制程序添加
chmod u+s /sbin/useradd
guid自動繼承父目錄的屬組
chomod g+s /etc
sticky 粘滯位 在一個公共目錄,每個用戶都可以創建文件,刪除自己的文件,但不能刪除別人的文件,可以修改。
chmod o+t 目錄
爲什麼創建的目錄和文件權限是一致的
目錄 755
文件 644
因爲umask的雲因
umask 默認 0022
要注意一點:
創建文件的時候 如果umask值爲奇數則在運算結果後加1,目錄則不分umask值的奇偶
例:
umask 設置爲033
永久修改umask值的方法
vim /etc/profile
創建用戶時,用戶的默認環境是從哪裏來的
創建用戶的時候會把/etc/skel/下的所有文件拷貝到用戶的家目錄中
用戶相關命令
useradd 創建用戶命令
/etc/default/useradd 添加用戶的缺省配置
- -u 指定uid
- -g 指定gid (可以寫組名)
- -G 指定多個用戶組 附加組(可寫組名,每個用戶組之間用,分隔)
- -r 創建系統用戶
- -s 指定登錄bash環境
- -M 不創建家目錄
- -m 創建指定家目錄
- -d 指定家目錄
- -c 註釋
- -e 指定過期時間 格式”2018/07/30”
userdel 刪除用戶命令
- -r 刪除用戶家目錄
批量創建10個系統帳號test01-test10並設置密碼(密碼爲隨機8位字符串)。
#!/bin/bash
for i in `seq 01 10`
do
useradd test$i
password=`openssl rand -base64 12|head -c 8`
echo $password|passwd --stdin test$i
done
創建隨機碼的集中方法
- 1 echo $RANDOM
- 15139
- 2 openssl rand -base64 8
- wkyhbABFkMo=
- 3 date +%s%N
- 1503126951571170345
- 4 head /dev/urandom |cksum
- 1974094793 3276
- 5 cat /proc/sys/kernel/random/uuid
- 7f559951-5e93-4ac5-b7c5-4e0264b828c2
- 6 mkpasswd (這種方法需要先安裝yum -y install expect)
- ejtW-iF02
- mkpasswd -l 20
- -l 密碼長度