linux學習入門(2使用者處理命令)

Zcgod發表於2018-08-09

1:檔案的檢視

在當前所在的檔案中,需要檢視該資料夾中的所有內容是可以用到:ls命令

ls:命令使用方法:

ls                 顯示檔案資訊
ls      -l         顯示檔案屬性 長列表顯示檔案的資訊 後設資料  touch .file  隱藏檔案     
ls     -a         顯示所有檔案包括以“.”開頭的檔案            
ls     -s         顯示檔案大小
ls     -d         顯示目錄本身

2:檔案批量選擇處理方法

檔案的萬用字元有:

             *                            匹配0--到任意字元   rm  text/*  刪除目錄裡面所有內容
           ?                           匹配單個字元(包括下列所有 下面只不過具體化
【【:alpha:】】        單個字母
【【:upper:】】       單個大寫字母
【【:lower:】】        單個小寫字母
【【:digit:】】         單個數字
【【:alnum:】】      單個數字或字母
【【:space:】】      單個空格
【【:punct:】】       單個符號

統配符使用方法: 這些萬用字元可以對檔案的名稱屬性進行分類和批量選擇,方便操作

簡單的顯示如下:

eg:要求查詢 /etc 下的所有以  .conf結尾的帶數字的檔案

上圖顯示的為所有/etc下的檔案所有的帶數字並且以.conf結尾的檔案

二;使用者的管理

1:使用者的定義:

一個系統中可以有多個使用者,同時每個使用者擁有其特有的權力,來方便工作

使用者:使用者的出現是為了 限制權力  ,因為系統可以通過對待不同的使用者來給予不同的許可權,從而實現了使用者的權力限制,也是最底層安全設定的一部分

組:組的出現是為了  賦予權力   ,相同權力的使用者可以來加入到一個組內,當使用者調動是,只需要對其所在的組進行更改就可是實現權力的改變

2:實現使用者的過程:

建立一個使用者:預設以/etc  下的passwd配置檔案配置該使用者的所有資訊,同時該使用者會以資料夾的形式存在與系統中,預設下時在/home  的家目錄下。

所以一個簡單隻需要帳號和密碼的使用者建立成功後,系統預設會為該使用者配置補齊其他的所有資訊,只需要後期更改資訊即可,不需要在新增資訊

3:使用者配置檔案:

1:使用者資訊:/etc/passwd    

通過  cat  /etc/passwd    開啟passwd檔案,可以檢視所有使用者的資訊

資訊內容是:

使用者名稱稱:使用者密碼:使用者的uid:使用者初始組uid:使用者說明:使用者的家目錄:使用者預設使用的shell

2.  使用者組資訊:etc/group

使用者組資訊內容:組名稱:組密碼:組id:附加組成員

3:使用者家目錄:/home

用來存放使用者資料夾的地方

4:/etc/skel.*

使用者骨檔案  (該目錄在使用者建立成功後,該目錄下的所有檔案會複製給給使用者資訊下)
使用者環境配置模版,在使用者建立後會自動複製到家目錄中

 

4:使用者的建立和刪除

1:使用者的建立
useradd               username                  建立使用者使用預設規則(/etc/login.defs)
useradd      -u     username                   使用者的uid
useradd      -g     username                   使用者的初始組id
useradd      -G    username                   指定使用者的附加組
useradd       -c    username                   制定使用者的說明文字
useradd      -d    username                    制定使用者的家目錄
useradd       -s   username                    制定使用者的shell

man            useradd             檢視useradd使用方法

建立出來的使用者:

2:使用者的刪除

userdel              username          刪除使用者身份

但是這種方式刪除不掉該使用者的配置檔案,則/home下的zhangchen檔案刪除不掉

userdel     -r       username          刪除使用者及該使用者下的所有配置檔案

 

3:組的建立

groupadd               name           建立組
groupadd     -g       name           建立組指定的id
groupdel                 name           刪除組

5:使用者的檢視

在檢視使用者是,建議開啟監控命令,這樣看也檢視使用者的資訊變換

監控命令:watch -n 1 ‘tail -n 5 /etc/passwd /etc/group;ls -l /home‘

whoami                            檢視當前使用者
id           username          檢視使用者的id資訊                            
id     -u   username          檢視使用者的uid
id    -g    username          檢視使用者的gid(必須寫已經存在的組)
id    -G   username          檢視使用者所在的所有的組id
id    -n    username          顯示使用者的名稱(以名稱顯示)

如何檢視本機有的shell?
cat  /etc/shells   nologin 時不提供和使用者互動的(用nologin成為系統使用者)

/etc/login.defs    在次檔案中可以設定建立使用者的預設信

6:使用者的管理

usermod     -l     a         b       修改使用者名稱稱   修改b為a   -l 修改
usermod    -u     666    a        改變初始uid
usermod    -g     21      a        改變初始組為21
usermod    -G    30      a        改變附加組為30(但是如果有其他附加組會清除其他組只留下30)

usermod    -aG  40      a        增加附加組為40

usermod    -d                      更改使用者家目錄指向(如果之修改檔案指向目錄,則檔案無法開啟,因為指向目錄和home下的使用者檔案不匹配)
usermod    -md                   更改使用者家目錄指向同時對家目錄下的使用者檔案進行修改
usermod    -s                      更改檔案的介紹

修改前資料:

修改後:

 

usermod    -G    (組id)      username        改變附加組(但是如果有其他附加組會清除其他組只留下輸入的組id)

usermod    -aG  (組id)      username        增加附加組

命令的區別:

在使用之前,nchen在g1 和 g2 兩個組中,但在使用-G後,g1和g2組中的nchen都消失,nchen只存在與1005的yy組中

而使用-aG後,也會在修改前的基礎上新增

7:使用者的切換


su    - username      切換使用者 

高階使用者切換到低階使用者不需要密碼  低階使用者切換到高階使用者或者切換到平級使用者需要密碼
 

注意:1.使用者切換後及時退出再進入下一個使用者
            2.su -  表示切換使用者身份和使用者環境    
 

8:使用者的認證資訊

/etc/shadow     記錄使用者的認證資訊

使用者認證資訊解釋:(共10個資訊,且用:分割出來)

以下圖nchen使用者為例:

使用者名稱稱:nchen

使用者密碼:  (一長段的加密字元)

加密方式:md5  sha512加密方式(md5是雙向加密:eg指紋識別,用指紋加密同時用指紋解密)
passwd     username                        只有超級使用者可以執行(超級使用者可以直接不需要任何人密碼就可更改密碼,賦予權力的表現)


passwd     username                         普通使用者修改自己的密碼(普通使用者只能登陸該使用者帳號後才可以更改)
usermod       -L       username           凍結帳號(在加密字串前加 ! 表記已經凍結)


usermod       -U      username            解鎖( 清除 !,一次只能清除一個)
passwd         -l        username            凍結帳號(強度高,相當於加鎖兩次,也就是在前加兩個 !)


passwd        -u        username            解鎖(一次最多可以清除 兩個 !)
passwd        -d        username            清除密碼

密碼最後其次被修改的時間(使用了多長時間):(17753表示為距離1970.1.1的天數)
如果該位為0時 則使用者在登陸時,必須強制修改密碼  
指令程式碼chage      -d    0    username
                passwd   -e           username

密碼最短有效期:(過多少天才能修改,0表示沒有最短有效期,隨時可以修改密碼)
指令程式碼:chage      -m   1    username    表示過1天才能修改密碼
                    passwd    -n   1     username      

祕密最長有效期:(最長多少天后必須修改,99999幾乎可以認定為有效期無限)
                   chage       -M       30    username       30天后必須修改
                   passwd     -X      30     username       30天后必須修改

密碼過期警告:(7表示為密碼過期前7天警告)
指令程式碼:chage     -W     30      username        在過期的前30天發出密碼過期警告

密碼非活躍期:(密碼過期後的非活躍天數,不做操作在活躍期過後會被到期凍結)
指令程式碼:chage         -I     2      username        密碼到期後的非活躍期為2天
                    passwd      -i     2      username

帳號到期日:(在多少天后密碼到期)
指令程式碼:chage     -E     "2018-11-11"     nchen

未設定使用者自定義

 

9:使用者權力下放

使用者所用的權力和超級使用者的權力都書寫在 /etc/sudoers  檔案下,也再次說明了linux一切皆檔案

可以通過對  /etc/sudoers  檔案的修改來實現對使用者權力的賦予

修改方式有兩種:   vim  /etc/sudoers    !!但是這種修改方式在出現錯誤是不會報錯,是的錯誤無法排查,不建議使用
                                   visudo           開啟的檔案是/etc/sudoers  用visudo的開啟方式在出現錯誤是會報錯提醒

使用者權力下放配置流程:

1:用 visudo開啟/etc/sudoers

2:檢視主機名稱(程式碼:hostname)(如圖,localhost為本機名稱)

2:查詢到 100行(輸入:100)(此步驟可以省略,但是可以通過參考檔案對於root權力的書寫方式來書寫對使用者的權力下放,同時使用者下放程式碼集中,用於二次查詢閱讀),並輸入 i 來進入編譯模式

程式碼解釋:nchen(被下放權力的使用者)

  localhost=(root) (主機名,所擁有的root權力)

NOPASSWD:  (使用賦予的權力是是否需要輸入該使用者的密碼,可以不書寫)

/usr/sbin/useradd,/usr/sbin/userdel   (使用/usr/sbin下的useradd和userdel權力)

3:測試nchen使用者是否擁有了該權力

登陸被賦予權力的使用者,然後使用權力(!!在使用權力是前面要加上sudo!!)

其他使用者如果沒有被配置則無法使用該權力

 

 

相關文章