useradd命令 建立新使用者或更新預設的新使用者資訊
uid範圍:
centos6:
1|1-499 系統使用者
2|500+ 普通使用者
centos7:
1| 0 超級管理員
2| 1-200 系統使用者,由系統分配給系統程序使用
3| 201-999 系統使用者,用來執行服務賬戶,不需要登陸系統(動態分配)
4| 1000+ 普通使用者
案例:
# 新建使用者加入組:
useradd –g sales jack –G company,employees //-g:加入主要組、-G:加入次要組
# 建立一個新使用者賬戶,並設定ID:
useradd caojh -u 544
usermod命令: 修改系統已經存在的使用者屬性。
引數:
-c<備註>:修改使用者帳號的備註文字;
-d<登入目錄>:修改使用者登入時的目錄;
-e<有效期限>:修改帳號的有效期限;
-f<緩衝天數>:修改在密碼過期後多少天即關閉該帳號;
-g<群組>:修改使用者所屬的群組;
-G<群組>;修改使用者所屬的附加群組;
-l<帳號名稱>:修改使用者帳號名稱;
-L:鎖定使用者密碼,使密碼無效;
-s<shell>:修改使用者登入後所使用的shell;
-u<uid>:修改使用者ID;
-U:解除密碼鎖定。
案例:
# 將newuser2新增到組staff中:
usermod -G staff newuser2
# 修改newuser的使用者名稱為newuser1:
usermod -l newuser1 newuser
# 鎖定賬號newuser1:
usermod -L newuser1
# 解除對newuser1的鎖定:
usermod -U newuser1
userdel命令: 刪除給定的使用者,以及與使用者相關的檔案。若不加選項,則僅刪除使用者帳號,而不刪除相關檔案。
引數:
-f:強制刪除使用者,即使使用者當前已登入;
-r:刪除使用者的同時,刪除與使用者相關的所有檔案。
案例:
userdel linuxde //刪除使用者linuxde,但不刪除其家目錄及檔案;
userdel -r linuxde //刪除使用者linuxde,其家目錄及檔案一併刪除;
groupadd命令: 用於建立一個新的工作組,新工作組的資訊將被新增到系統檔案中。
引數:
-g:指定新建工作組的id;
-r:建立系統工作組,系統工作組的組ID小於500;
-K:覆蓋組態檔「/ect/login.defs」;
-o:允許新增組ID號不唯一的工作組。
案例:
# 建立一個新組,並設定組ID加入系統:
[root@xxx ~]# groupadd -g 344 linuxde
**passwd命令:**用於設定使用者的認證資訊,包括使用者密碼、密碼過期時間等。系統管理者則能用它管理系統使用者的密碼。只有管理者可以指定使用者名稱稱,一般使用者只能變更自己的密碼。
引數:
-d:刪除密碼,僅有系統管理者才能使用;
-f:強制執行;
-k:設定只有在密碼過期失效後,方能更新;
-l:鎖住密碼;
-s:列出密碼的相關資訊,僅有系統管理者才能使用;
-u:解開已上鎖的帳號。
案例:
# root賬戶能修改密碼,普通使用者只能修改自己的密碼
[root@localhost ~]# passwd linuxde //更改或建立linuxde使用者的密碼;
Changing password for user linuxde.
New UNIX password: //請輸入新密碼;
Retype new UNIX password: //再輸入一次;
passwd: all authentication tokens updated successfully. //成功;
# 普通使用者如果想更改自己的密碼,直接執行passwd即可,比如當前操作的使用者是linuxde。
[linuxde@localhost ~]$ passwd
Changing password for user linuxde. //更改linuxde使用者的密碼;
(current) UNIX password: //請輸入當前密碼;
New UNIX password: //請輸入新密碼;
Retype new UNIX password: //確認新密碼;
passwd: all authentication tokens updated successfully. //更改成功;
# 讓某個使用者不能修改密碼,可以用`-l`選項來鎖定:
[root@localhost ~]# passwd -l linuxde //鎖定使用者linuxde不能更改密碼;
Locking password for user linuxde.
passwd: Success //鎖定成功;
[linuxde@localhost ~]# su linuxde //通過su切換到linuxde使用者;
[linuxde@localhost ~]$ passwd //linuxde來更改密碼;
Changing password for user linuxde.
Changing password for linuxde
(current) UNIX password: //輸入linuxde的當前密碼;
passwd: Authentication token manipulation error //失敗,不能更改密碼;
# -d引數清空使用者密碼
[root@localhost ~]# passwd -d linuxde //清除linuxde使用者密碼;
Removing password for user linuxde.
passwd: Success //清除成功;
[root@localhost ~]# passwd -S linuxde //查詢linuxde使用者密碼狀態;
Empty password. //空密碼,也就是沒有密碼;
chage命令: 用來修改帳號和密碼的有效期限。
引數:
-m:密碼可更改的最小天數。為零時代表任何時候都可以更改密碼。
-M:密碼保持有效的最大天數。
-w:使用者密碼到期前,提前收到警告資訊的天數。
-E:帳號到期的日期。過了這天,此帳號將不可用。
-d:上一次更改的日期。
-i:停滯時期。如果一個密碼已過期這些天,那麼此帳號將不可用。
-l:例出當前的設定。由非特權使用者來確定他們的密碼或帳號何時過期。
案例:
# 檢視root賬戶密碼的策略
[root@clq ~]# chage -l root
Last password change : never
Password expires : never
Password inactive : never
Account expires : never
Minimum number of days between password change : 0
Maximum number of days between password change : 99999
Number of days of warning before password expires : 7
#密碼保持有效的最大天數
[root@clq ~]# chage -l boy
Last password change : Jul 19, 2019
Password expires : never
Password inactive : never
Account expires : never
Minimum number of days between password change : 0
Maximum number of days between password change : 99999
Number of days of warning before password expires : 7
[root@clq ~]# chage -M 60 boy
[root@clq ~]# chage -l boy
Last password change : Jul 19, 2019
Password expires : Sep 17, 2019
Password inactive : never
Account expires : never
Minimum number of days between password change : 0
Maximum number of days between password change : 60
Number of days of warning before password expires : 7
id命令: 列印真實有效的使用者和組id
引數:
-g或--group 顯示使用者所屬群組的ID。
-G或--groups 顯示使用者所屬附加群組的ID。
-n或--name 顯示使用者,所屬群組或附加群組的名稱。
-r或--real 顯示實際ID。
-u或--user 顯示使用者ID。
-help 顯示幫助。
-version 顯示版本資訊。
案例:
# 使用者組為1000
[root@xclq ~]# id -g boy
1000
# 附加組為1000
[root@clq ~]# id -G boy
1000
# 使用者uid為1000
[root@clq ~]# id -u boy
1000
su命令: 使用替代使用者和組ID執行命令
引數:
-c<指令>或--command=<指令>:執行完指定的指令後,即恢復原來的身份;
-f或——fast:適用於csh與tsch,使shell不用去讀取啟動檔案;
-l或——login:改變身份時,也同時變更工作目錄,以及HOME,SHELL,USER,logname。此外,也會變更PATH變數;
-m,-p或--preserve-environment:變更身份時,不要變更環境變數;
-s<shell>或--shell=<shell>:指定要執行的shell;
--help:顯示幫助;
--version;顯示版本資訊。
**案例:
# 切換後boy沒有許可權存取root的家目錄
[root@clq ~]# su -c ls boy
ls: cannot open directory .: Permission denied
[root@clq ~]# su -c ls root
1 2.txt mongodb-linux-x86_64-rhel70-4.0.10.tgz test2.txt
1.txt anaconda-ks.cfg pwd
1.txt.bak etc.tar.gz sent
# 切換為boy同時更換家目錄
[root@clq ~]# su -l boy
Last login: Fri Jul 19 04:22:40 EDT 2019 on pts/0
[boy@clq ~]$ pwd
/home/boy
visudo命令: 編輯 / etc/sudoers 檔案的專屬命令。
引數:
**案例:
[root@clq~]# cat /etc/sudoers
## Sudoers allows particular users to run various commands as
## the root user, without needing the root password.
## 該檔案允許特定使用者像root使用者一樣使用各種各樣的命令,而不需要root使用者的密碼
## This file must be edited with the 'visudo' command.
## 該檔案必須使用"visudo"命令編輯
##等等
sudo命令: 用來以其他身份來執行命令,預設的身份為root。在/etc/sudoers中設定了可執行sudo指令的使用者。若其未經授權的使用者企圖使用sudo,則會發出警告的郵件給管理員。使用者使用sudo時,必須先輸入密碼,之後有5分鐘的有效期限,超過期限則必須重新輸入密碼。
引數:
-b:在後臺執行指令;
-h:顯示幫助;
-H:將HOME環境變數設為新身份的HOME環境變數;
-k:結束密碼的有效期限,也就是下次再執行sudo時便需要輸入密碼;。
-l:列出目前使用者可執行與無法執行的指令;
-p:改變詢問密碼的提示符號;
-s<shell>:執行指定的shell;
-u<使用者>:以指定的使用者作為新的身份。若不加上此引數,則預設以root作為新的身份;
-v:延長密碼有效期限5分鐘;
-V :顯示版本資訊。
**案例:
# 開啟紀錄檔記錄功能
1.建立sudo.log檔案
touch /var/log/sudo.log
2./etc/rsyslog.conf組態檔最後面新增一行
local2.debug /var/log/sudo.log #空白處不能用空格鍵,必需用tab鍵
3./etc/ sudoers組態檔最後新增如下
Defaults logfile=/var/log/sudo.log
Defaults loglinelen=0
Defaults !syslog
4.重新啟動syslog服務
[root@localhost .ssh]systemctl restart syslog
5.確定程序
[root@localhost .ssh]# ps -aux |grep rsyslog
6.測試
測試賬戶使用sudo命令,在root使用者檢視是否有記錄
# 第一個終端記錄sudo
[root@xxx ~]# tail -f /var/log/sudo.log
Jul 19 05:12:36 : root : TTY=pts/1 ; PWD=/root ; USER=root ; COMMAND=/bin/ls
# 第二個終端使用sudo
[root@xxx ~]# sudo ls
1 2.txt mongodb-linux-x86_64-rhel70-4.0.10.tgz test2.txt
1.txt anaconda-ks.cfg pwd
1.txt.bak etc.tar.gz sent
二進位制主程式 命令
組態檔 .cfg .ini
庫檔案 .so
幫助檔案 .doc
紀錄檔檔案 .log 用於記錄服務執行狀態 error
標頭檔案 .h include
/media 用來掛載U盤
/mnt 用來掛載硬碟、光碟機
/opt用於安裝軟體
/usr/local用於安裝軟體
/proc 偽檔案系統 內部沒有任何東西
/sys 偽檔案系統 內部沒有任何東西
fat32 單個檔案不能超過4G(windows)
ntfs 單個檔案可以超過4G(windows、在macbook唯讀)
exfat 單個檔案可以超過4G且可以跨平臺(windows/linux/unix)