天天看點

使用者及使用者組管理-Centos6

一 使用者管理指令

(*)使用者資訊檔案:  /etc/passwd
        aa:x:501:501:空:/home/aa:/bin/bash
        第一列:使用者名
        第二列:密碼位
        第三列:UID     使用者ID            =>500       普通使用者
        第四列:GID     初始組ID
        第五列:使用者說明
        第六列:家目錄
        第七列:使用者登入之後的權限

    影子檔案:    /etc/shadow //存放密碼的檔案

    組資訊檔案:   /etc/group

        zhangsan:x:500:
        組名:組密碼位:組ID:組中附加使用者


    1   添加使用者
        useradd  使用者名        

        useradd  選項  使用者名
        選項:
            -g  組名  指定初始組       
            -G  組名  指定附加組,把使用者加入組,使用附加組
            -c  添加說明
            -d  手工指定家目錄,目錄不需要事先建立/home/
            -s      /bin/bash(nologin禁止登陸)  手工指定使用者登入之後的權限   


        useradd  -g  aa  bb     添加bb使用者,同時指定初始組為aa
        useradd  -G  user1  aa  添加使用者aa,指定附加組為user1


        初始組:每個使用者初始組隻能有一個,一般都是和使用者名相同的組作為初始組
        附加組:每個使用者可以屬于多個附加組。要把使用者加入組,都是加入附加組

    2   設定密碼            
        passwd          使用者名
        passwd          改變目前使用者密碼
        passwd  root        改變root密碼

    3   删除使用者                
        userdel  -r  使用者名
            -r  連帶家目錄一起删除

    4   添加組             
        groupadd  組名

    5   删除組             
        groupdel  組名        注意:組中沒有初始使用者。

    6   把已經存在的使用者加入組                 

        gpasswd  -a  使用者名  組名        使用者加入組
        gpasswd  -d  使用者名  組名        把使用者從組中删除

二   使用者相關指令              
    1   id  使用者名     顯示使用者的UID,初始組,和附加組
        [[email protected] home]# id 使用者

    2   su  -  使用者名      切換使用者身份          
            -   連帶環境變量一起切換      
           

(*)三 ACL權限

給特殊身份的使用者設定權限。

1   getfacl  檔案名        查詢檔案的acl權限

    2   setfacl  選項  檔案名        設定acl權限  (set 設定)
                -m          設定權限
                -b          删除權限

        setfacl  -m  u:使用者名:權限   檔案名
        setfacl  -m  g:組名:權限   檔案名

        setfacl  -m u:aa:rwx  /test     給test目錄賦予aa是讀寫執行的acl權限

        setfacl -m  u:cc:rx  -R  soft/      賦予遞歸acl權限,隻能賦予目錄
            -R  遞歸  

        setfacl -b  /test                删除acl權限
        setfacl -x  u:使用者名  檔案名      删除指定使用者的ACL權限

    3   setfacl  -m d:u:aa:rwx -R /test     acl預設權限。d 含義:目錄  dir
           

預設權限隻能賦予目錄

注意:如果給目錄賦予acl權限,兩條指令都要輸入

-R 遞歸

-m u:使用者名:權限 -R 隻對已經存在的檔案生效

-m d:u:使用者名:權限 -R 隻對未來要建立的檔案生效

(*)四 輸出重定向和多指令順序執行

1   輸出重定向
            把應該輸出到螢幕的輸出,重定向到檔案。

            >   覆寫
            >>  追加

        ls  >  aa       覆寫到aa
        ls  >>  aa      追加到aa

        ls  gdlslga  2>>aa      錯誤資訊輸出到aa       強調:錯誤輸出,不能有空格
                    2 錯誤資訊

        lss  >>  aa  2>&1   錯誤和正确都輸入到aa,可以追加
                    2>&1    把标準錯誤重定向到标準正确輸出
                      & 背景運作 
        lss  >>  aa  2>>/tmp/bb     正确資訊輸入aa,錯誤資訊輸入bb
           

服務和程序管理

程序管理三個主要任務:
    判斷伺服器健康狀态
    檢視所有正在運作的程序
    強制終止程序

一   程序檢視        

    1   ps  aux     檢視目前系統所有運作的程序
        -a  顯示前台所有程序
        -u  顯示使用者名
        -x  顯示背景程序

        user: 使用者名
        pid:    程序id。PID        1  init  系統啟動的第一個程序
        %CPU    cpu占用百分比
        %MEM    記憶體占用百分比
        VSZ 虛拟記憶體占用量     KB
        RSS 固定記憶體占有量
        tty 登入終端                tty1-7  本地終端        1-6 字元  7圖形 pts/0-5
                                alt+F1-F7

        stat    狀态      S:睡眠        D:不可喚醒  R:運作      T:停止  Z:僵死  
           

W:進入記憶體交換 X:死掉的程序 <:高優先級 N:低優先級

L:被鎖進記憶體 s:含子程序 +:位于背景 l:多線程

start 程序觸發時間

time 占用cpu時間

command 程序本身

2   pstree       檢視程序樹
    3   top
        第一行:    系統目前時間      系統持續時間      登入使用者        1,5,15分鐘之前的平均負載
        第二行:程序總數
        第三行:CPU占用率      %id     空閑百分比
        第四行:記憶體使用:   總共      使用      空閑      緩存
        第五航:swap使用

        操作指令        M   記憶體排序
                    P   CPU排序
                    q   退出

    4   程序管理        終止程序
         ps aux    組合使用
        kill  PID       結束單個程序  結束程序
        -9  強制

         Pstree  程序樹
        killall  -9   程序名       結束一類程序
        pkill    -9   程序名
           

Killall sshd

W 判斷登入使用者
        pkill  -9  -t  終端号  把某個終端登入的使用者踢出
        pkill  -9  -t tty1  把本地登入終端1登入使用者踢出



二   linux服務管理

    1   分類
        1)系統預設安裝的服務         
        2)源碼包安裝的服務 
    (一)系統預設安裝的服務
    1   确定服務分類
        chkconfig  --list       檢視服務的自啟動狀态
            運作級别:0-6
                0   關機                       
                1   單使用者模式
                2   不完全多使用者,不包含N FS服務  無網絡登入
                3   完全多使用者   字元界面   
                4   未配置設定
                5   圖形界面
                6   重新開機

                init  0  halt 關機        init 5  startx  init 3
                init  6 重新開機

                runlevel            查詢系統目前運作級别


                vi  /etc/inittab
                id:3:initdefault:       定義系統預設運作級别

    2   獨立的伺服器管理        

        1)啟動            
            ①
            /etc/rc.d/init.d/服務名   start|stop|restart|status
            /etc/rc.d/init.d/httpd  start

            ②
            service   服務名   start|stop|restart|status

        2)自啟動       
            ①
            chkconfig  --level  2345  服務名  on|off

            ②           
            vi  /etc/rc.local---->/etc/rc.d/rc.local
            /etc/rc.d/init.d/httpd  start

    3   ntsysv
        所有系統預設安裝服務都可以使用ntsysv指令進行自啟動管理

    (二)源碼包安裝的服務
        1源碼包安裝的服務           

        1)絕對路徑啟動
        /usr/local/apache2/bin/apachectl  start 

        2)自啟動
        vi /etc/rc.local
        /usr/local/apache2/bin/apachectl  start
           

總結:

服務管理:

RPM包安裝服務

獨立的服務

啟動:

/etc/rc.d/init.d/服務名 start

service 服務名 start

自啟動:
                chkconfig  --level  2345  服務名  on|off
                vi  /etc/rc.local       推薦
                    /etc/rc.d/init.d/httpd  start

    源碼包服務
        啟動
                /usr/local/服務名/bin/服務名二進制執行檔案  start

        自啟動
                vi  /etc/rc.local
                    /usr/local/apache2/bin/apachectl  start

三   計劃任務

        echo  11  >>  /root/aa      在aa檔案中追加11.一會定時任務驗證用

        循環定時任務                      
        crontab  -e     編輯定時任務
        *  *  *  *  *  指令
        10  *  31  *  *  指令
        10  *  *  *  *  指令
        5  4  *  5,7,10  *  指令
        */10  *  *  *  *  指令

        第一個:一小時中第幾分鐘        0-59
        第二個:一天中第幾個小時        0-23
        第三個:一個月中第幾天     1-31
        第四個:一年第幾個月          1-12
        第五個:一周中星期幾          0-6     

        crontab  -l     檢視系統定時任務
        crontab  -r         删除定時任務
           

注意事項:

選項都不能為空,必須填入,不知道的值使用通配符*表示任何時間

每個時間字段都可以指定多個值,不連續的值用,間隔,連續的值用-間隔

間隔固定時間執行書寫為*/n格式

指令應該給出絕對路徑

星期幾和第幾天不能同時出現

最小時間範圍是分鐘,最大時間範圍是月

指令補充:

cat /proc/cpuinfo 檔案儲存了CPU裝置資訊

dmesg 檢視系統啟動資訊

cat  /var/log/dmesg     系統啟動資訊日志

        dmesg | grep eth0       檢視eth0資訊
        dmesg | grep CPU            檢視cpu資訊