第4天【文件管理、管道、用戶及組管理、用戶及權限管理】
Bash的I/o重定向及管道
管道:使用豎杠符號‘|’表示,用於將前面命令的命名輸出結果作為命名後的操作對象。
重定向輸出:使用大於符號”>”表示,前面的命令成功執行以後,其屏幕輸出結果將保存到“>”好後面的指定文件中,而不是直接輸出到屏幕,因此成為重定向。
輸出重定向
#:set –C : 禁止將內容覆蓋輸出至已有文件中,只對當前終端有效;
#:set +c:關閉
>:覆蓋重定向; ls /etc/ > /tmp/fstab.txt
強制覆蓋:cat /etc/fstab >| /tmp/fstab.txt
>>:追加重定向;ls /etc >> /tmp/etc.out
標準錯誤輸出重定向
2>,覆蓋重定向錯誤輸出數據流
Cat /etc/issueee 2> /tmp/issue.txt
2>>,追加重定向錯誤輸出數據流
&>:合並標準輸出和錯誤為同一個數據流進行重定向,覆蓋
&>>:合並標準輸出和錯誤為同一個數據流進行重定向,追加;
輸入重定向: <
管道
Echo ‘$PATH’
Echo ‘$PATH’ | tr ‘a-z’ ‘A-Z’
Echo ‘$PATH’ | tr ‘a-z’ ‘A-Z’ | tr –d ‘U’
文本處理工具:
Wc,cut,sort,uniq
WC:
-l:顯示行數
-w:顯示單詞個數
-h:以更人性化的方式顯示出統計結果,而不僅僅統計目錄。
-c:顯示字節數
Cut:
Cut –d:-f1,7 /etc/passwd
-d:指明分隔符
-f:指定字段
#:第#個字段
#,#{.#}:離散的多個字段,例如:1,3,6
#-#:連續的多個字段,例如:1-6
Sort:
Sort /etc/passwd 排序
Sort -r /etc/passwd 逆序
-f:忽略字符大小寫
-r:逆序
3:用戶及組管理(03)_recv
Linux用戶及權限管理:
Linux組的類別:
用戶的基本組(主組)
組名同用戶名,且僅包含一個用戶,也可以稱私有組
用戶的附加組(額外組)
Linux 用戶和組的相關配置文件:
/etc/passwd :保存用戶及其屬性信息。
root:x:0:0:root:/root:/bin/bash
用戶名:密碼:UID:GID:用戶的完成信息:主目錄:默認Shell
/etc/group :組及其屬性信息
group_name:passwd:GID:user_list
組名:組密碼:組ID:以當前組為附加組的用戶列表
/etc/shadow :用戶密碼及其相關屬性;
root:$1$aQKPXX0F$pfYtvBEoG6TDlKUG3PY5m/:16966:0:99999:7:::
登錄名:密碼:最進一次更改密碼的日期:密碼的最小使用期限:密碼的最大使用期限:密碼警告時間段:密碼禁用期:賬戶的過期日期:保留字段;
設置用戶名密碼:echo “redhat” | passwd –stdin jerry
/etc/gshadow :組密碼及其相關屬性;
用戶和組相關的管理命令useradd
用戶創建:useradd tom
Tail -1 /etc/passwd
-u:指定創建用戶的ID號
-g:指明用戶所屬基本組,可為組名,也可以是GID。
-c:註釋信息 useradd –c “user 4” user 4
-d:指定用戶的家目錄;useradd –d /home/blair user5
Tail –n 1 /etc/passwd
-s:指定用戶的登陸sheell名。Useradd –s /bin/tcsh user6
Tail –n 1 /etc/passwd
-G:用戶屬於的附加組。 Useradd –G mygrp user7
Id user7
-r:創建系統用戶
默認值設定:/etc/default/useradd
4:用戶及權限管理(04)_recv
Groupadd命令:
-g:指明組的GID;
-r:創建一個系統組;
ID命令
Su
用戶屬性修改usermod
-d:指定新的家目錄;
修改家目錄時帶-m選項,要不是切換用戶失敗
格式:usermod –d /home/momenew –m user1
-u:指定UID;
-s:新shell;
-c:新的註釋信息;
-g:新的基本組;
-G:新的附加組;可以寫多個,逗號隔開
新附加組,原來的附加組將會被覆蓋,若保留原有,則使用-a
格式:usermod -a -G aa,bb gentoo
-l:修改新的登陸名;
-e:用戶賬戶將被禁用的日期,日期以:YYYY-MM-DD格式;
-f:密碼過期之後,賬戶徹底禁用之前的天數。
-L:鎖定用戶賬戶;
Usermod –L user5
Tail /etc/passwd #密碼第一個字符會是!號;
-U:解鎖用戶的密碼;
給用戶添加密碼:passwd
Passwd username:修改指定的用戶的密碼,僅root用戶權限
Passwd:修改自己的密碼
常用選項:
-l:鎖定指定用戶
-u: 解鎖指定用戶
-n:指定最短使用期限
-x:最大使用期限
-w:提前多少天開始警告
-i:非活動期限
--stdin:從標準輸入接受用戶密碼
Echo “PASSWORD” | passwd –stdin suer1
-e:用戶賬戶被禁用的日期,日期以YYYY-MM-DD格式指定
-f:密碼過後期間之後,賬戶徹底禁用之前的天數
刪除用戶:userdel
Userdel:
-r:刪除用戶家目錄;userdel –r user4
組屬性修改:groupmod
-n:group_name新名字;
-g:新的GID
組刪除:groupdel
Groupdel group_name
組密碼:gpasswd
Pwck:檢查密碼文件的完整性;
Newgrp mygrp 臨時切換基本組
主要管理:/etc/group和/etc/gshadow
設置組密碼:gpasswd mygrp
-a USER:將用戶添加至組中。
Gpasswd –a user1 mygrp 將用戶user1加入mygrp組,ID user1 查看
-d USER:刪除一個用戶的附加組;
Gpasswd –d user1 mygrp 將用戶的附加組mygrp刪除;
. -A USER1,USER2:設置有管理權限的用戶列表;
Gpasswd –A tom,jerry root
-M:設置組成員列表;
其他:chcn,chsh,
Chcn:修改用戶備註信息
Chcn tom
Chsh:修改默認shell
Chsh tom
命令總結:useradd,groupadd,su,id,usermod,userdel,groupmod,groupdel,passwd,newgrp,pwck,gpasswd,chage,chsh,chfn,finger.
權限管理:
文件的權限主要針對三類對象進行定義:
Owner:屬主,u
Group:屬組,g
Other:其他,o
--- 000 0
--x 001 1
-w- 010 2
-wx 011 3
r— 100 4
r-x 101 5
rw- 110 6
rwx 111 7
對於文件而言:
-R:可使用文件查看類工具獲取其內容
W:可修改其內容
X:可吧此文件提請內核啟動為一個進程;
對於目錄而言:
R:可以使用ls查看此目錄中文件列表;
W:可在此目錄中創建文件,也可以刪除此目錄中的文件;
X:可以使用ls –l查看此目錄中的文件列表,可以cd進入此目錄;
修改文件權限Chmod
1:Chmod 640 a.txt
Chmod 775 test目錄
-R:遞歸修改權限;
Chmod –R 775 test ;目錄下的所有文件修改權限;
2: u=, g= ,o=
gb=, a=, u=,g=
u+, u-,g+,g-
修改文件的屬主和屬組:
只有管理員操作;
Chown [OPTOON]…[OWNER] FILE
文件或目錄umask:
FILE: 666-umask
Note:如果某類的用戶權限減的結果中存在x權限,則將其權限+1;
Dir:777-umask
Umask:查看
Umask #:設定umask
第4天【文件管理、管道、用戶及組管理、用戶及權限管理】