1. 程式人生 > >系統相關命令

系統相關命令

大小寫 pow temp atd 遠程 信號 snmp mmu 上下文切換

Linux 系統狀態的查看及管理工具:

    pstree, ps, pidof,pgrep, top, htop, glance, pmap, vmstat, dstat, kill,pkill, job, bg, fg, nohup

pstree

    pstree - display a tree of processes
    pstree [ -a ] [ -c ] [ -h | -H PID ] [ -l ] [ -n ] [ -p ] [ -g ] [ -u ][ -A | -G | -U ] [ PID | USER ]
        -a      顯示命令行參數
        -A      use ASCII line drawing(繪畫) characters
        -c      不簡潔輸出相同的子結構
        -h      高亮顯示當前進程和它們的父進程
        -H PID  高亮顯示指定PID的進程和它們的父進程
        -G      use VT100 line drawing characters
        -l      不對長的行進行截斷
        -n      通過PID來分類輸出
        -p      顯示PID
        -g,     顯示進程組id
        -u      顯示uid的過渡
        -U      使用UTF-8的格式來描繪字符
        -Z      顯示SELinux安全內容
        PID     PID號,默認為1
        USER    用戶

ps

    ps - report a snapshot(快照) of the current processes
        Linux 系統各進程的相關信息均保存在/proc/PID 目錄下的各文件中
    ps [options]
    ps --help <simple|list|output|threads|misc|all>
     or 
    ps --help <s|l|o|t|m|a>
    ps --help s
        Basic options,基礎選項:
        -A, -e                  所有進程
        -a                      帶有tty,但沒有會話發起者
         a                      帶有tty,包含其他用戶
        -d                      除去會話發起者本身
        -N, --deselect          否定選擇
         r                      僅運行進程
         T                      在這個終端的所有進程
         x                      不帶tty的進程
    
    ps --help l
        Selection by list,列表選擇:
        -C <command>            命令名
        -G, --Group <GID>       真實組id或名稱
        -g, --group <group>     會話或有效的組名
        -p, p, --pid <PID>      進程id
        --ppid <PID>    父進程id
        -q, q, --quick-pid <PID>    快速模式下的進程id
        -s, --sid <session>     會話id
        -t, t, --tty <tty>      終端
        -u, U, --user <UID>     有效的用戶id或名稱
        -U, --User <UID>        真實的用戶id或名稱
    
    ps --help o
        Output formats,輸出格式:
        -F                      額外全部
        -f                      全部格式包括命令行
         f, --forest            ascii碼art進程樹
        -H                      顯示進程等級
        -j                       工作的格式
         j                      BSD工作控制格式
        -l                      長格式
         l                      BSD 長格式
        -M, Z                   為SELinux添加安全數據
        -O <format>             使用默認列進行預加載
         O <format>             帶有BSD個性,如-O一樣
        -o, o, --format <format>    使用用戶定義的格式
         s                      單一格式
         u                      用於所取的格式
         v                      虛擬內存格式
         X                      註冊格式
        -y                      與-l一起,不顯示flags,顯示rss、vs、addr
        --context           顯示SELinux的安全內容
        --headers           重復顯示頭行,每頁一次
        --no-headers        不顯示頭行
        --cols, --columns, --width <num>    設置屏幕寬度
        --rows, --lines <num>   設置屏幕亮度
    
    ps --help t
        Show threads,顯示線程:
         H                      如同進程一樣
        -L                      可能顯示帶有LWP and NLWP 列
        -m, m                   在進程之後
        -T                      可能顯示帶有SPID列
    
    ps --help m
        Miscellaneous options:
         -c                     和-l一起顯示時序安排級別
          c                     顯示真實命令名
          e                     在命令後顯示環境
          k,    --sort          顯示分類命令,如同: [+|-]key[,[+|-]key[,...]]
          L                     顯示格式說明符
          n                     顯示數字版uid和wchan
          S,    --cumulative    包含include some dead child process data
         -y                     do not show flags, show rss (only with -l)
         -V, V, --version       display version information and exit
         -w, w                  unlimited output width
    示例:
        ps  -ef  :以完整的信息顯示所有進程信息
        ps aux
        ps  axo  +指定的內容
        echo $$,顯示當前進程編號
        查看每個進程在系統上的使用情況的標準語法
                  ps -e
                  ps -ef
                  ps -eF
                  ps -ely
        查看每個進程在系統上的使用情況的BSD語法
                  ps ax
                  ps axu
        打印進程樹
                  ps -ejH
                  ps axjf
        顯示線程的信息
                  ps -eLf
                  ps axms
        顯示安全信息
                  ps -eo euser,ruser,suser,fuser,f,comm,label
                  ps axZ
                  ps -eM
        采用用戶格式,查看root用戶運行的每個進程
                  ps -U root -u root u
        
        采用用戶定義的格式查看每個進程
                  ps -eo pid,tid,class,rtprio,ni,pri,psr,pcpu,stat,wchan:14,comm
                  ps axo stat,euid,ruid,tty,tpgid,sess,pgrp,ppid,pid,pcpu,comm
                  ps -Ao pid,tt,user,fname,tmout,f,wchan
        僅顯示系統log的進程id
                  ps -C syslogd -o pid=
        
        僅顯示pid=42
                  ps -q 42 -o comm=
        搜索進程
            ps 選項|其他命令
            ps aux |grep ls
        
    結果中的含義
        ps -ef:
            UID/PID/PPID:   代表該進程的發起者/進程號/父進程號
            C:  代表cpu,單位是百分比
            STIME:  代表進程的啟動時間,指的是進程什麽時候啟動的。
            TTY:    登錄者的終端位置,遠程登錄的顯示pst/n,本地登錄的顯示ttyn,?表示系統進程
            TIME:   進程實際花費cpu運行時間,不是系統時間
            CMD:    觸發此進程的命令
        ps aux
            %MEM:   memory,進程所占用的物理內存的百分比
            VSZ:    Virtual memory SiZe ,進程使用掉的虛擬內存大小,單位為kb
            RSS:    ReSident Size,進程占用的固定內存大小,單位為kb
            TIME:   進程實際使用cpu 時間
            COMMAND:    觸發此進程的命令
        ps  axo  pid,command,psr,pri,ni,rtprio(可以指定的還有很多,通過man ps查找解釋)
            psr:    當前進程運行的cpu 編號
            pri:    當前進程的優先級
            ni: 當前進程的nice值
            rtprio:     實時優先級
        STAT:進程狀態
            R:  running,運行狀態
            S:  可中斷的休眠
            D:  不可中斷的休眠
            T:  stopped
            Z:  zombie,僵屍態
            +:      前臺進程
            l:      多線程進程
            L : 內存分頁並帶鎖
            N : 低優先級進程
            <:      高優先級進程
            s:  會話(子進程)發起者

nice

    nice - run a program with modified scheduling(計劃中的) priority
    nice [-n] [COMMAND [ARG]...]
        -n, --adjustment=N      添加整數N給niceness,默認為10

renice

    renice - alter(更改) priority of running processes
    renice [-n] <priority> [-p|--pid] <pid>...
    renice [-n] <priority>  -g|--pgrp <pgid>...
    renice [-n] <priority>  -u|--user <user>...
        -g, --pgrp <id>         解釋進程組id參數
        -n, --priority <num>    指定nice增量值
        -p, --pid <id>          解釋進程id參數
        -u, --user <name|id>    解釋用戶id參數

pgrep&&pkill

    pgrep, pkill - look up or signal processes based on name and other attributes
        查找或標記基於名和其他參數的進程,是按預定義的模式來搜索進程的
    pgrep [options] <pattern>
    pkill [options] <pattern>
        -d, --delimiter <string>    指定輸出分隔符
        -l, --list-name             列出pid和程序名
        -a, --list-full             列出pid和完全的命令行
        -v, --inverse               negates the matching
        -w, --lightweight           list all TID
        -c, --count                 計算匹配進程數
        -f, --full                  使用進程全名匹配
        -g, --pgroup <PGID,...>     匹配列出的進程組id
        -G, --group <GID,...>       匹配真實的組id
        -n, --newest                選擇大部分近期啟動的
        -o, --oldest                選擇少量近期啟動的
        -P, --parent <PPID,...>     僅匹配所給父進程的子進程
        -s, --session <SID,...>     匹配會話id
        -t, --terminal <tty,...>    匹配控制終端
        -u, --euid <ID,...>         匹配有效的uid
        -U, --uid <ID,...>          匹配真實的uid
        -x, --exact                 精確匹配命令名
        -F, --pidfile <file>        從文件中讀取pid
        -L, --logpidfile            如果pid文件沒被鎖定那麽就顯示fail
        --ns <PID>                  match the processes that belong to the same namespace as <pid>
        --nslist <ns,...>           list which namespaces will be considered for the --ns option. Available namespaces: ipc, mnt, net, pid, user, uts
    示例:
        Find the process ID of the named daemon:
            $ pgrep -u root named
        Make syslog reread its configuration file:
            $ pkill -HUP syslogd
        Give detailed information on all xterm processes:
            $ ps -fp $(pgrep -d, -x xterm)
        Make all netscape processes run nicer:
            $ renice +4 $(pgrep netscape)

pidof

    pidof -- find the process ID of a running program.
        顯示指定命令所啟動的進程ID,查找一個運行項目的進程id。
    pidof [-s] [-c] [-n] [-x] [-m] [-o omitpid[,omitpid..]][-o omitpid[,omitpid..]..]program [program..]

top

    top - display Linux tasks
    top 動態持續監控進程的運行狀態
    top -hv | -bcHiOSs -d secs -n max -u|U user -p pid(s) -o field -w [cols]
    命令行選項 
        -h|-v   幫助和版本
        -b  批處理模式操作
        -c  命令行或項目名觸發器
        -H  線程模式操作
        -i  閑置進程觸發器
        -O  輸出域名
        -s  安全模式操作
        -S  累計時間觸發器
        -d  延遲時間間隔,如-d ss.
        -n  反復的次數,如-n number
        -u|-U   用戶過濾模式,-u |-U number or name
        -p  監控pid模式 ,如-pN1 -pN2 ...or -pN1,N2,N3
        -o  覆寫分類區域,如-o fieldname
        -w  輸出寬度覆蓋,-w [number]
    操作
        key/cmd     objective
        ^Z          掛起top
        fg          簡要retop
        <Left>      強制屏幕重繪 (if necessary)
        reset       重啟你的終端設置
        key         等價key組合
        Up          alt + \      or  alt + k
        Down        alt + /      or  alt + j
        Left        alt + <      or  alt + h
        Right       alt + >      or  alt + l (lower case L)
        PgUp        alt + Up     or  alt + ctrl + k
        PgDn        alt + Down   or  alt + ctrl + j
        Home        alt + Left   or  alt + ctrl + h
        End         alt + Right  or  alt + ctrl + l
        key         指定意義
        Up          召回老的字段來重新編輯
        Down        召回新的字段或刪除整行
        Insert      觸發插入和改寫間的模式
        Delete      字符移動到光標出,移動其他到左側
        Home        調到行首
        End         跳到行尾
    簡易顯示
         UPTIME and LOAD Averages
            top - 15:03:00 up  4:28,  3 users,  load average: 0.00, 0.01, 0.05
            項目或窗口名,顯示模式,當前時間,狀態,運行時長,用戶數量,系統平均負載:1,5,15分鐘時刻的數據。
        
        TASKs
            Tasks: 120 total,   1 running, 119 sleeping,   0 stopped,   0 zombie
            
        CPU States
            %Cpu(s):  0.3 us,  0.0 sy,  0.0 ni, 99.7 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
                us: user space,用戶運行程序占用cpu的百分比
                sy: system(kernel space),用於運行內核占用的cpu的百分比
                ni: nice,用戶進程空間所改變過優先級的進程占用cpu的百分比
                id: idle(閑置的),空閑cpu 百分比
                wa: wait IO,等待I/O花費的時間
                hi: hardware  interrupt,硬件中斷占用cpu百分比
                si: software  interrupt,軟件中斷占用cpu百分比(模式切換)
                st: stolen ,被虛擬機偷走的百分比
            
            按t鍵進入t模式下
                %Cpu(s):   0.0/0.0     0[    
                %Cpu(s):   0.0/1.2     1[ 
                %Cpu(s):  75.0/25.0  100[ ...
                其中75.0代表us和ni的百分比,25.0是sy的百分比,100是前面百分比和,“...”表示前面信息以圖形信息
        
        MEMORY Usage
            KiB Mem :   483616 total,    19900 free,   167636 used,   296080 buff/cache
            KiB Swap:  2097148 total,  2096812 free,      336 used.   254440 avail Mem 
            
            按m鍵進入m模式
                GiB Mem : 18.7/15.738   [ ...
                GiB Swap:  0.0/7.999    [ ...
                18.7表示百分比使用率,15.738表示總可用的,“...”表示圖形顯示
            
            單位轉換
                按e或E鍵進行單位切換,e進行列表中的切換,E進行表頭上的切換。
                KiB = kibibyte = 1024 bytes
                MiB = mebibyte = 1024 KiB = 1,048,576 bytes
                GiB = gibibyte = 1024 MiB = 1,073,741,824 bytes
                TiB = tebibyte = 1024 GiB = 1,099,511,627,776 bytes
                PiB = pebibyte = 1024 TiB = 1,125,899,906,842,624 bytes
                EiB = exbibyte = 1024 PiB = 1,152,921,504,606,846,976 bytes
                
        DESCRIPTIONS of Fields
            PID         進程id             
            USER        用戶名    
            PR          進程優先級,越小優先級越高
            NI          nice值             
            VIRT        進程需要的虛擬內存大小,而非使用的虛擬內存大小
            RES         進程當前使用的內存大小,不包括swap
            SHR         Shared Memory (KiB) ,進程與其他進程共享的內存大小,可以通過(RES - SHR)來計算進程所占用的物理內存大小
            %CPU        cpu使用率        
            S           Process Status,進程狀態     
                D = 不間斷休眠
                R = running
                S = sleeping
                T = stopped by job control signal
                t = stopped by debugger during trace
                Z =僵死態
            %MEM        內存使用率  
            TIME+       cpu使用時間的累加,小數點
            COMMAND     命令名或命令行   
            PPID        父進程id
            UID         用戶id
            RUID        真實用戶id
            RUSER       真實用戶名      
            SUID        保存的用戶id       
            SUSER       保存的用戶名
            GID         組id
            GROUP       組名
            PGRP        進程組id    
            TTY         控制臺tty
            TPGID       tty進程組identify
            SID         會話id     
            nTH         線程數   
            P           最後使用的cpu
            TIME        cpu時間
            SWAP        swap大小
            CODE        code大小
            DATA        數據+堆的大小
            nMaj        最大頁面故障
            nMin        最小頁面故障
            nDRT        臟頁面數
            WCHAN       休眠的公共
            Flags       任務標誌
            CGROUPS     控制組
            SUPGIDS     補充的組id
            SUPGRPS     補充的組名
            TGID        線程的組id
            ENVIRON     環境變量
            vMj         最大的故障增量差量
            vMn         最小的故障增差量
            USED        使用的內存
            nsIPC       IPC namespace Inode
            nsMNT       MNT namespace Inode 
            nsNET       NET namespace Inode 
            nsPID       PID namespace Inode 
            nsUSER      USER namespace Inode
            nsUTS       UTS namespace Inode 
            
    MANAGING Fields
        按f或F鍵進入到管理區域
        Fields Management for window 1:Def, whose current sort field is TIME+
        Navigate with Up/Dn, Right selects for move then <Enter> or Left commits,‘d‘ or <Space> toggles display, ‘s‘ sets sort.  Use ‘q‘ or <Esc> to end!
        
    INTERACTIVE Commands
        Global-Commands
            <Ent/Sp> ?, =, 0,
            A, B, d, E, e, g, h, H, I, k, q, r, s, W, X, Y, Z
        Summary-Area-Commands
            C, l, t, m, 1, 2, 3
        Task-Area-Commands
            Appearance:  b, J, j, x, y, z
            Content:     c, f, F, o, O, S, u, U, V
            Size:        #, i, n
            Sorting:     <, >, f, F, R
        Color-Mapping
            <Ret>, a, B, b, H, M, q, S, T, w, z, 0 - 7
        Commands-for-Windows
            -, _, =, +, A, a, g, G, w
        Scrolling-a-Window
            C, Up, Dn, Left, Right, PgUp, PgDn, Home, End
        Searching-in-a-Window
            L, &
            P   以占據的CPU 百分比,%CPU大小來排序
            M   以占據內存百分比,%MEM大小來排序
            T   累積占據CPU 時長,TIME+來排序
            l   uptime 信息,顯示系統負載行
            t   tasks 及cpu 信息,顯示進程摘要信息以及cpu負載狀態,會進行幾種顯示切換
            1   cpu 分別顯示,平均或單獨顯示cpu的負載狀態
            2   顯示%Node0相關信息
            m   想當於刷新,Enter也可以刷新
            q   退出命令
            s   修改延遲時長
            k   終止指定進程
            H   顯示線程信息,Threads
            h   顯示幫助信息
            E   切換表頭上的單位
            e   切換表中的單位
            f和F 切換到區域管理
            t   切換tasks和%CPU的格式
            T   切換

htop

    需從Fedora-EPEL 源下載安裝
    htop - interactive process viewer,交互式的進程查看
    htop [options]
    command-line options
        -C --no-color                   使用一個單顏色的方案
        -d --delay=DELAY                以秒為單位長度,在更新上設置延遲
        -s --sort-key=COLUMN            通過指定的列分類(try --sort-key=help for a list)
        -u --user=USERNAME              僅顯示給定用戶的進程
        -p --pid=PID,[,PID,PID...]      僅顯示給出的PID的進程
    interactive command
        Arrows, PgUP, PgDn, Home, End   滾動進程列表
        space鍵  標記或取消標記的進程
        U   取消標記的所有進程
        s   追蹤系統的進程調用
        l   顯示進程打開的文件
        F1,h,?  進入幫助頁面
         F2,S   進入配置界面,進行個性配置
        F3,/    遞增地搜索顯示的命令的行
        F4,\    遞增的進程過濾
        F5,t    顯示進程樹
        F6  在分類視圖中,選擇範圍進行分類
        F7,]    增加所選進程的優先級
        F8,[    減少所選進程的優先級
        F9,K    “殺死”所選的進程,即發送所選的信號給所選的進程
        F10,q   退出
        I   使被分類的表反向顯示
        +,- 當在目錄樹模式下,來擴展或收縮樹
        a   設置cpu的緊密度,(on multiprocessor machines)
        u   僅顯示指定用戶的進程
        M   按照內存使用率來分類
        P   按照進程使用來分類
        T   按照時間來分類
        F   
        K   隱藏內核線程
        H   隱藏用戶線程
        Ctrl - L    刷新
        輸入數值,如1234  PID搜索
    表頭說明
        Command
             The full command line of the process (i.e program name and arguments).
        PID  
            The process ID.
        PPID 
            The parent process ID.
        PGRP 
            The process‘s group ID.
        SESSION (SESN)
             The process‘s session ID.
        TTY_NR (TTY)
             The controlling terminal of the process.
        TPGID
             The process ID of the foreground process group of the controlling terminal.
        STATE (S)
             The state of the process:
                S for sleeping (idle)
                R for running
                D for disk sleep (uninterruptible)
                Z for zombie (waiting for parent to read its exit status)
                T for traced or suspended (e.g by SIGTSTP)
                W for paging
        PROCESSOR (CPU)
             The ID of the CPU the process last executed on.
        NLWP The number of threads in the process.
        NICE (NI)
             The nice value of a process, from 19 (low priority) to  -20  (high  priority).  A  high
             value  means the process is being nice, letting others have a higher relative priority.
             Only root can lower the value.
        PERCENT_CPU (CPU%)
             The percentage of the CPU time that the process is currently using.
        UTIME (UTIME+)
             The user CPU time, which is the amount of time the process has spent executing  on  the
             CPU in user mode (i.e everything but system calls), measured in clock ticks.
        STIME (STIME+)
             The  system CPU time, which is the amount of time the kernel has spent executing system
             calls on behalf of the process, measured in clock ticks.
        TIME (TIME+)
             The time, measured in clock ticks that the process has spent in user  and  system  time
             (see UTIME, STIME above).
        CUTIME
             The  children‘s  user  CPU  time,  which is the amount of time the process‘s waited-for
             children have spent executing in user mode (see UTIME above).
        CSTIME
             The children‘s system CPU time, which is the amount of time the kernel has  spent  exe‐
             cuting  system  calls  on  behalf  of  all the process‘s waited-for children (see STIME
             above).
        PRIORITY (PRI)
             The kernel‘s internal priority for the  process,  usually  just  its  nice  value  plus
             twenty. Different for real-time processes.
        PERCENT_MEM
             The  percentage  of memory the process is currently using (based on the process‘s resi‐
             dent memory size, see M_RESIDENT below).
        M_SIZE (VIRT)
             Size in memory of the total program size.
        M_RESIDENT (RES)
             The resident set size, i.e the size of the text and data sections, plus stack usage.
        M_SHARE (SHR)
             The size of the process‘s shared pages
        M_TRS (CODE)
             The size of the text segment of the process (i.e the size of the  processes  executable
             instructions).
        M_LRS (LIB)
             The library size of the process.、
        M_DRS (DATA)
             The size of the data segment plus stack usage of the process.
        M_DT (DIRTY)
             The size of the dirty pages of the process.
        ST_UID (UID)
             The user ID of the process owner.
        USER 
            The username of the process owner, or the user ID if the name can‘t be determined.
        STARTTIME
             The time the process was started.
        RCHAR (RD_CHAR)
             The number of bytes the process has read.
        WCHAR (WR_CHAR)
             The number of bytes the process has written.
        SYSCR (RD_SYSC)
             The number of read(2) syscalls for the process.
        SYSCW (WR_SYSC)
             The number of write(2) syscalls for the process.
        RBYTES (IO_RBYTES)
             Bytes of read(2) I/O for the process.
        WBYTES (IO_WBYTES)
             Bytes of write(2) I/O for the process.
        IO_READ_RATE (IORR)
             The I/O rate of read(2) in bytes per second, for the process.
        IO_WRITE_RATE (IOWR)
             The I/O rate of write(2) in bytes per second, for the process.
        IO_RATE (IO)
             The I/O rate, IO_READ_RATE + IO_WRITE_RATE (see above).
        CNCLWB (IO_CANCEL)
             Bytes of cancelled write(2) I/O.
        CGROUP
             Which cgroup the process is in.
        CTID 
            OpenVZ container ID, a.k.a virtual environment ID.
        VPID
            OpenVZ process ID.
        VXID 
            VServer process ID.
        OOM  
            OOM killer score.
        All other flags
             Currently unsupported (always displays ‘-‘).

uptime

    uptime - Tell how long the system has been running.
        顯示當前時間,系統已啟動的時間、當前上線人數,系統平均負載(1 、5 、10 分鐘的平均負載,一般不會超過1) 
        系統平均負載是指在特定時間間隔內運行隊列中的平均進程數
        通常每個CPU內核的當前活動進程數不大於3,那麽系統的性能良好。 
        如果每個CPU 內核的任務數大於5,那麽此主機的 性能有嚴重問題
        如果linux 主機是1個雙核CPU,當Load Average 為6的時候說明機器已經被充分使用
    uptime [options]
         -p, --pretty       采用漂亮格式顯示
          -s, --since       系統啟動時間

vmstat

    vmstat - Report virtual memory statistics
        動態顯示系統資源的使用情況,包括內存、磁盤、網絡、cpu等資源
    vmstat [options] [delay [count]]
    命令行選項
        -a, --active            active/inactive memory
        -f, --forks             從啟動後有多少叉形指定(fork)
        -m, --slabs             slabinfo,池信息
        -n, --one-header        不重復顯示頭部
        -s, --stats             事件數量統計
        -d, --disk              磁盤統計
        -D, --disk-sum          磁盤統計總概括
        -p, --partition <dev>   指定統計分區
        -S, --unit <char>       定義顯示單位
        -w, --wide              擴展輸出
        -t, --timestamp         顯示時間戳
    顯示
        procs:
            r:  可運行(正運行或等待運行)進程的個數,和核心數有關(隊列長度)
            b:  處於不可中斷睡眠態的進程個數( 被阻塞的隊列的長度)(IO阻塞的隊列長度)
        memory:
            swpd:   交換內存的使用總量
            free:   空閑物理內存總量
            buffer(緩存): 用於buffer 的內存總量
            cache(高速緩存):    用於cache 的內存總量
        swap(交換):
            si: 從磁盤交換進內存的數據速率(kb/s)
            so: 從內存交換至磁盤的數據速率(kb/s)
        io:
            bi: 從塊設備讀入數據到系統的速率(kb/s)
            bo:     保存數據至塊設備的速率
        system:
            in:     interrupts 中斷速率,包括時鐘,每秒中被中斷的次數
            cs:     context switch 進程切換速率
        cpu:
            us: user space,用戶運行程序占用cpu的百分比
            sy: system(kernel space),用於運行內核占用的cpu的百分比
            id: idle(閑置的),空閑cpu 百分比
            wa: wait IO,等待I/O花費的時間
            st: stolen ,被虛擬機偷走的百分比

iostat

    iostat - Report Central Processing Unit (CPU) statistics and input/output statistics for devices and partitions.
        統計CPU 和設備IO 信息
    iostat [ options ] [ <interval> [ <count> ] ]
         -c  顯示cpu報告  
         -d 顯示設備報告   
         -h     可讀性顯示
         -k | -m    以KB或MB顯示
         -N     顯示註冊設備的映射名
         -t     顯示每個報告顯示的時間
         -x     顯示擴展的統計
         -y     忽略系統啟動後的第一個報告
         -z     在取樣期間,忽略任何設備的輸出
         -j { ID | LABEL | PATH | UUID | ... }  顯示設備名,ID等是指定類型
         -T     與-g配合,進行顯示組中私有設備的全局統計
         -g <group_name>    顯示一個組的設備統計   
         -p <device> ,... | ALL  <device> ... | ALL     顯示被系統調用的塊設備和它們分區的統計
    示例
        iostat
            Display a single history since boot report for all CPU and Devices.
        iostat -d 2
            Display a continuous device report at two second intervals.
        iostat -d 2 6
            Display six reports at two second intervals for all devices.
        iostat -x sda sdb 2 6
            Display six reports of extended statistics at two second intervals for devices sda and sdb.
        iostat -p sda 2 6
            Display six reports at two second intervals for device sda and all its partitions (sda1, etc.)
    相關文件
        系統統計
            /proc/stat 
        系統運行時間
            /proc/uptime 
        磁盤狀態
            /proc/diskstats 
        塊設備統計
            /sys 
        網絡文件統計
            /proc/self/mountstats 
        當前設備名
            /dev/disk 

pmap

    pmap - report memory map of a process,進程對應的內存映射
    pmap [options] PID [PID ...]
    cat /proc/PID/maps
        -x, --extended          顯示詳情
        -X                              顯示更加詳細,警告:格式更改依賴於 /proc/PID/smaps
        -XX                          顯示內核提供的任何信息
        -c, --read-rc                   讀取默認的rc
        -C, --read-rc-from=<file>       從文件中讀取rc
        -n, --create-rc                 創建新的默認的rc
        -N, --create-rc-to=<file>       創建新村rc到文件,註意pid參數不允許配合 -n, -N
        -d, --device                    顯示設備格式
        -q, --quiet                     不顯示頭部和頁腳
        -p, --show-path                 顯示映射路徑
        -A, --range=<low>[,<high>]      限制結果範圍
    

glances

    glances是一款用於linux、BSD的開源命令行系統監控工具,它使用python開發語音開發,能夠監視cpu、負載、內存、磁盤I/O、網絡流量、文件系統、系統溫度等信息。安裝包在EPEL源。
    glances - A cross-platform curses-based system monitoring tool
    glances [OPTIONS]
    命令行選項
        -d, --debug             激活調試模式
        -C CONF_FILE    配置文件路徑
        -3, --disable-quicklook     取消快速查看模式
        -4, --full-quicklook    取消幾乎所有快速查看和加載
        --disable-cpu           取消cpu模式
        --disable-mem           取消內存模式
        --disable-swap          取消swap模式
        --disable-load          取消加載模式
        --disable-network       取消網絡模式
        --disable-ip            取消ip模式
        --disable-diskio        取消磁盤IO模式
        --disable-fs            取消文件系統模式
        --disable-sensors       取消感應器模式
        --disable-hddtemp       取下HD溫度模式
        --disable-raid          取消RAID模式
        --disable-docker        取消docker模式
        -2, --disable-left-sidebar   (py3sensors needed)取消網絡,cipanIO,文件系統,觸發器模式
        --disable-process       取消進程模式
        --disable-log           取消日誌模式
        --disable-bold          取消在終端的加粗模式
        --enable-process-extended   激活在top進程中的擴展狀態
        --enable-history        激活歷史記錄模式
        --path-history PATH_HISTORY     為圖形歷史設置輸出路徑
        --export-csv EXPORT_CSV     輸出狀態到一個CSV文件
        --export-influxdb        (influxdb needed)輸出狀態到一個influxDB服務
        --export-opentsdb       (potsdb needed)輸出狀態到一個openTSDB服務
        --export-statsd         (statsd needed)輸出狀態到一個statsD 服務
        --export-rabbitmq        (pika needed)輸出狀態到一個消息隊列中間件
        -c CLIENT, --client CLIENT  通過ipv4/ipv6連接到glances服務
        -s, --server            在服務模式運行glances
        --browser                (list of servers)開啟客戶端瀏覽
        --disable-autodiscover  取消自動發現特性
        -p PORT, --port PORT    [default: 61209]定義客戶端或服務器Tcp端口
        -B BIND_ADDRESS, --bind BIND_ADDRESS    綁定服務到給定的IPV4/ipv6地址或主機名
        --password              定義一個客戶端或服務密碼
        --snmp-community SNMP_COMMUNITY     SNMP 通信
        --snmp-port SNMP_PORT   SNMP 端口
        --snmp-version SNMP_VERSION SNMP 版本(1, 2c or 3)
        --snmp-user SNMP_USER   SNMP username用戶名 (only for SNMPv3)
        --snmp-auth SNMP_AUTH   SNMP 認證密鑰authentication key (only for SNMPv3)
        --snmp-force    強制SNMP模式
        -t TIME, --time TIME     [default: 3 sec]設置秒級別的更新
        -w, --webserver          (bottle needed)運行glances在web服務模式
        -q, --quiet             不顯示安全接口
        -f PROCESS_FILTER,  (regular expression)設置進程過濾模式
        --process-short-name    強制使用簡短名為進程名
        -0, --disable-irix      任務cpu使用率將被總的cpu劃分
        --hide-kernel-threads   在進程列表中隱藏內核線程
        --tree                  用樹狀結構顯示進程
        -b, --byte              采用b/s顯示網絡使用率
        --fahrenheit            使用華氏溫度單位顯示溫度
        -1, --percpu            在每個cpu模式上開啟glances
        --fs-free-space         顯示紋系統空間取代使用率
        --theme-white           優化顯示白色背景顏色
    交互式命令
        ENTER   設置進程過濾模式,使用正則表達式
        a       自動進程分類
        b       切換網絡I/O的單位
        c       通過CPU使用率進行分類進程
        d       顯示或隱藏磁盤I/O狀態
        e       激活或關閉top擴展狀態
        f       顯示或因此文件系統狀態
        F       在使用率或空余間切換
        g       生成當前歷史的圖表
        h       顯示或隱藏幫助頁面
        i       使用I/O使用率分類進程
        l       顯示或隱藏日誌信息
        m       MEM使用率分類進程
        n       顯示或隱藏網絡狀態
        p       使用名稱分類進程
        q       Quit
        r       重設歷史
        s       顯示隱藏傳感器狀態
        t       CPU times (TIME+)cpu時間分類進程
        T       合並的網絡I/O視圖
        u       使用用戶分類進程
        U       顯示累積的網絡I/O視圖
        w       刪除結束的告警日誌信息
        x       刪除結束的告警或嚴重錯誤信息
        z        顯示或隱藏進程狀態
        z       顯示或隱藏低cpu消耗的進程列表
        0        cpu總數分割任務cpu使用率
        1       在全局cpu和每個cpu間狀態切換
        2        激活或關閉左邊列
        3        激活或關閉快查模塊
        4       激活或關閉所有快查和負載模塊
        /        切換命令名的長短
    
    glances 支持遠程模式,即可以以C/S 模式工作:
        server:
            服務器模式,以監聽模式啟動glances
            啟動:glances -s -B IPADDR  ##-B:用於指明監聽的本地地址,IPADDR: 指明監聽的本機哪個地址
        Client:
            客戶端模式,以遠程模式啟動glances,遠程連入指定服務器,並且server上的相關性能數據
            啟動:glances -c IPADDR  ##-c:用於連入的服務器的地址,IPADDR :要連入的服務器端地址
    
    示例
        Monitor local machine (standalone mode):
            $ glances
        Monitor local machine with the Web interface (Web UI):
            $ glances -w
            Glances web server started on http://0.0.0.0:61208/
        Monitor local machine and export stats to a CSV file (standalone mode):
            $ glances --export-csv
        Monitor local machine and export stats to a InfluxDB server with 5s refresh time (standalone mode):
            $ glances -t 5 --export-influxdb
        Start a Glances server (server mode):
            $ glances -s
        Connect Glances to a Glances server (client mode):
            $ glances -c <ip_server>
        Connect Glances to a Glances server and export stats to a StatsD server (client mode):
             $ glances -c <ip_server> --export-statsd
        Start the client browser (browser mode):
            $ glances --browser

dstat

    系統資源統計, 可以代替vmstat,iostat,netstat和ifstatd的多功能產品。
    增加了監控項,可以很方便監控系統運行狀況並用於基準測試和排除故障。
    paging:
        系統分頁活動,分頁指的是一種內存管理技術用於查找系統場景,一個較大的分頁表明系統正在使用大量的交換空間,或者說內存非常分散,大多數情況下你都系統看到page in(換入)和page out(換出)的值為0
    system:
        顯示的是中斷(init)和上下文切換(csw),比較基線時才有意義。這一欄中較高的統計值通常便是大量的進程造成的擁塞,需對cpu進行關註。
    dstat - versatile tool for generating system resource statistics
    dstat [-afv] [options..] [delay [count]]
        -c, --cpu               顯示cpu 相關信息,-C #,#,...,total
        -C 0,3,total            顯示包含 cpu0, cpu3 and total
        -d, --disk              顯示disk 相關信息-D total,sda,sdb,...
        -D total,hda            顯示包含hda and total
        -g, --page              顯示page 相關統計數據
        -i, --int               顯示interrupt相關的速率數據
        -I 5,eth2               顯示包括 int5 和使用eth2的中端
        -l, --load              顯示load average相關的統計數據
        -m, --mem               顯示memory 相關統計數據
        -n, --net               顯示network 相關統計數據
        -N eth1,total           顯示包括eth1 and total
        -p, --proc              顯示process 相關統計數據
        -r, --io                顯示io 請求相關的統計數據
        -s, --swap              顯示swapped 相關的統計數據
        -S swap1,total          顯示包括swap1 and total
        -t, --time              啟動時間/日期輸出
        -T, --epoch             啟用時間計數器
        -y, --sys               顯示系統相關的數據,包括中斷和進程切換
        --aio                   啟用aio狀態
        --fs, --filesystem      啟動文件系統狀態
        --ipc                   顯示進程間通信相關的速率數據
        --lock                  啟用lock狀態enable lock stats
        --raw                   顯示raw套接的相關數據
        --socket            啟用sock而狀態
        --tcp               顯示tcp套接字的相關數據
        --udp               顯示udp套接字的相關數據
        --unix                  顯示unix sock接口相關的統計數據
        --vm                啟用vm狀態
        --plugin-name           通過插件名激活插件
        --list              顯示所有可用的插件
        -a, --all           equals -cdngy (default)
        -f, --full          自動擴展-C, -D, -I, -N and -S lists
        -v, --vmstat    等同 -pmgdsc -D total
        --bits              強制使用bits來表示bytes
        --float             強制使用浮點型值
        --integer       強制使用整數值
        --bw, --blackonwhite    為白色背景終端更改顏色
        --nocolor           關閉顏色
        --noheaders     關閉重復頭部
        --noupdate      關閉中間件更新
        --output file       把CSV輸出到文件
        --profile           show profiling statistics when exiting dstat
        --top-cpu : 顯示最占用CPU 的進程
        --top-io:   顯示最占用io 的進程
        --top-mem:      顯示最占用內存的進程
        --top-latency:      顯示延遲最大的進程
        --top-bio   顯示最消耗block io的進程
        delay   表示刷新時間,以秒為單位
        count   表示刷新數量
    示例
        顯示最占內存的一些進程信息:
            dstat -g -I -m -s --top-mem
        顯示最消耗cpu資源的信息:
            dstat -c -y -I --proc-count --top-cpu
        Using dstat to relate disk-throughput with network-usage (eth0), total CPU-usage and system counters:
            dstat -dnyc -N eth0 -C total -f 5
        Checking dstat’s behaviour and the system impact of dstat:
            dstat -taf --debug
        Using the time plugin together with cpu, net, disk, system, load, proc and top_cpu plugins:
            dstat -tcndylp --top-cpu
            this is identical to
            dstat --time --cpu --net --disk --sys --load --proc --top-cpu
        Using dstat to relate cpu stats with interrupts per device:
            dstat -tcyif

kill

    向進程發送控制信號,以實現對進程管理,每個信號對應一個數字,信號名稱以SIG 開頭(可省略 ),不區分大小寫
    kill - terminate a process
    kill [-s sigspec | -n  signum | -signal]   pid | jobs ... 
    kill -l [signal]
        pid n代表pid的值,0代表在當前進程組中的所有進程,-1代表比1大的pid,-n代表進程組n,commandname代表命令
        -s|-n signal    指定發送的信號,-s後跟名,-n後跟數字
        -l [signal] 顯示信號列表,或顯示指定信號的數值
        -L  與-l相似,將顯示信號名和它們相關的數字
        -a  顯示所有,不做限制
        -p  指定要顯示的pid的信息
        -q sigval   
            
    顯示當前系統的可用信號
        kill -l or trap -l
    查看信號的解釋
        man 7 signal
        0  :    配合echo !$ 來確認狀態是否正常
        1) SIGHUP:      無須關閉進程而讓其重讀配置文件
        2) SIGINT:      中止正在運行的進程;相當於Ctrl+c
        3) SIGQUIT:     相當於ctrl+        9) SIGKILL:     強制殺死正在運行的進程
        15) SIGTERM :   正常終止正在運行的進程
        18) SIGCONT :   繼續運行
        19) SIGSTOP :   後臺休眠,暫停進程
    指定信號的方法:
        信號的數字標識:1, 2, 9
        信號完整名稱:SIGHUP 
        信號的簡寫名稱:HUP
    示例:
        kill [-SIGNAL] pid …
        kill –n SIGNAL pid
        kill –s SIGNAL pid
        

killall

    killall - kill processes by name
    killall [-Z CONTEXT] [-u USER] [ -eIgiqrvw ] [ -SIGNAL ] NAME...
    killall -l, --list
        -e,--exact              要求精確匹配名稱
        -I,--ignore-case        不區分大小寫的進程名稱匹配
        -g,--process-group      終止進程組
        -y,--younger-than       殺死比TIME更年輕的進程
        -o,--older-than         殺死比TIME更老的進程
        -i,--interactive        交互模式,在殺死之前進行詢問
        -l,--list               顯示所有信號名
        -q,--quiet          不輸出詳情
        -r,--regexp             將名稱解釋為擴展正則表達式
        -s,--signal SIGNAL      發送指定的SIGNAL來代替SIGTERM
        -u,--user USER          僅殺死指定用戶的進程
        -v,--verbose            顯示詳情
        -w,--wait               等待進程死去
        -Z,--context REGEXP     僅終止具有上下文的進程 (必須在其他參數之前)

nohup

    nohup - run a command immune to hangups, with output to a non-tty
    nohup COMMAND [ARG]...
    如果標準輸入是一個終端,重定向到/dev/null。
    如果標準輸出是一個終端,可能附加到nohup.out,或者$HOME/nohup.out。
    如果標準錯誤是一個i終端,重定向到標準輸出。
    重定向:nohup COMMAND > FILE

screen

    screen - screen manager with VT100/ANSI terminal emulation
    screen [-opts] [cmd [args]]
    screen -r [host.tty]
        -A      將所有的視窗都調整為目前終端機的大小。
        -d <作業名稱>   將指定的screen作業離線。
        -h <行數>     指定視窗的緩沖區行數。
        -m      即使目前已在作業中的screen作業,仍強制建立新的screen作業。
        -r <作業名稱>   恢復離線的screen作業。
        -R      先試圖恢復離線的作業。若找不到離線的作業,即建立新的screen作業。
        -s      指定建立新視窗時,所要執行的shell。
        -S <作業名稱>   指定screen作業的名稱。
        -v      顯示版本信息。
        -x      恢復之前離線的screen作業。
        -ls或--list      顯示目前所有的screen作業。
        -wipe   檢查目前所有的screen作業,並刪除已經無法使用的screen作業。
    
    示例:
        創建新screen 會話
            screen –S [SESSION]
        加入screen 會話
            screen –x [SESSION]
        退出並關閉screen 會話
            exit
        剝離當前screen 會話
            Ctrl+a,d
        顯示所有已經打開的screen 會話
            screen -ls
        恢復某screen 會話
            screen -r [SESSION]

systemd-tmpfiles

    systemd-tmpfiles-Creates, deletes and cleans up volatile(易變的)and temporary files and directories.管理臨時文件和目錄
    systemd-tmpfiles [OPTIONS...] [CONFIGURATION FILE...]
        --create                創建帶有標記的文件或目錄
        --clean                 清空帶有標記的目錄
        --remove                刪除帶有標記的文件或目錄
        --boot                  在啟動時執行安全的操作
        --prefix=PATH           僅應用帶有指定前綴的規則
        --exclude-prefix=PATH   忽略帶有指定前綴的規則
        --root=PATH             Operate on an alternate filesystem root
        
        CentOS6 使用/etc/cron.daily/tmpwatch定時清除臨時文件
        CentOS7 使用systemd-tmpfiles-setup 服務實現
    配置文件:
        /etc/tmpfiles.d/*.conf
        /run/tmpfiles.d/*.conf
        /usr/lib/tmpfiles/*.conf
        /usr/lib/tmpfiles.d/tmp.conf
        /tmp 1777 root root 10d
        /var/tmp 1777 root root 30d
        

sleep

    sleep - delay for a specified amount of time
    sleep NUMBER[SUFFIX]…
        NUMBER  數字
        SUFFIX  可為s,m,h,d;分別代表秒,分,時,天

chkconfig

    chkconfig - updates and queries runlevel information for system services
        主要用於維護/etc/rc[0-6].d的目錄,在7以前版本和7以後的版本有所不同。
        7以前主要是SysV 服務和xinetd服務,7之後為systemd的服務,且在7中使用也僅顯示SysV的服務,且管理已經被systemd代替。
    chkconfig [--list] [--type <type>] [name]
    chkconfig --add <name>
    chkconfig --del <name>
    chkconfig --override <name>
    chkconfig [--level <levels>] [--type <type>] <name> <on|off|reset|resetpriorities>
        --list  查看服務在所有級別的啟動或關閉設定情形
        --type  指定sysv服務還是xinetd服務
        --add   為某存放在/etc/init.d的服務在對應的/etc/rc.d/rc0-6.d目錄下添加符號鏈接
        --del   把指定SERVICE_SCRIPTS的在7個級別符號鏈接統統刪除
        --level     指定要設置的級別,省略時表示2345
        --override  覆蓋
        resetpriorities 重啟開啟或關閉服務的優先順序,不考慮init腳本的情況
    xinetd 管理的服務
        瞬態(Transient )服務被xinetd 進程所管理
        進入的請求首先被xinetd代理
        配置文件:
            /etc/xinetd.conf 
            /etc/xinetd.d/<service>
        用chkconfig 控制的服務,與libwrap.so 文件鏈接

ntsysv

    ntsysv - simple interface for configuring runlevels,經由chkconfig來配置服務運行水平的,是個交互式的工具,
    ntsysv [--back] [--level <levels>]
        --back  在交互界面出現back按鈕
        --level 運行水平指定,如--level 016來編輯runlevels為0,1,6.

service

    service - run a System V init script
    service < option > | --status-all | [ service_name [ command | --full-restart ] ]
        SCRIPT: /etc/init.d/SCRIPT
        COMMADN:    start|stop|restart
        --status-all:   運行所有初始化腳本,按照字母順序,並帶有狀態命令

systemctl

    systemctl - Control the systemd system and service manager
    systemctl [OPTIONS...] COMMAND [NAME...]
    Query or send control commands to the systemd manager.
           --system             連接到系統管理
          -H --host=[USER@]HOST     在遠處主機上操作
          -M --machine=CONTAINER    在本地容器上操作
          -t --type=TYPE        列出指定類型的--state=STATE的單元,
          -p --property=NAME    僅顯示指定名稱的信息
          -a --all               顯示所有加載的單元或性能
          -l --full             不翻譯單元名稱作為輸出
          -r --recursive         顯示主機的單元列表和本地容器
          --reverse         一起顯示反轉的依賴性
          --job-mode=MODE   指定怎樣解決已經存在的隊列任務,當排到一個新的任務時候
          --show-types      當顯示sockets時,明確地顯示他們的類型
          -i --ignore-inhibitors    當關閉或睡眠時,忽略抑制
          --kill-who=WHO    誰發送信號
          -s --signal=SIGNAL    發送那個信號
          --now             開啟或關閉單元,且激活或取消單元
          -q --quiet            抑制輸出
          --no-block        不等到操作結束
          --no-wall         在關機前不發送wall信息
          --no-reload       在取消單元文件後不重新加載後臺進程
          --no-legend       不顯示圖標
          --no-pager        不使用管道輸出到pager
          --no-ask-password     不詢問系統密碼
          --global          激活或取消全局單元文件
          --runtime         僅臨時激活單元文件直到下個重啟
          -f --force            當激活單元文件,覆蓋已經存在的軟連接,當關閉時,立即執行
          --preset-mode=    應用僅激活,取消,或執行所有預設
          --root=PATH       激活單元文件在指定的root根目錄下
          -n --lines=INTEGER    顯示日報實體號碼
          -o --output=STRING    (short, short-iso, short-precise, short-monotonic, verbose, export, json, json-pretty, json-sse, cat)更改日誌輸出模式
          --plain           顯示單元依賴性作為一個列表來取代樹狀輸出
    Unit Commands:
          list-units [PATTERN...]           列出加載的單元List loaded units
          list-sockets [PATTERN...]         列出加載的sockets,並按照地址排列
          list-timers [PATTERN...]          列車加載的定時器,以消逝時間排列
          start NAME...                     開始或激活一個或多個單元
          stop NAME...                      停止或取消一個或多個單元
          reload NAME...                    重載一個或多個單元
          restart NAME...                   開啟或重啟一個或多個單元
          try-restart NAME...               重啟一個或多個單元,若已經為激活狀態
          reload-or-restart NAME...         若可能的話,重載一個或多個單元,否則開啟或重啟          
          reload-or-try-restart NAME...     若能則重載一個或多個單元,否則若激活狀態則重啟
          isolate NAME                      啟動一個單元和停止所有其他的單元
          kill NAME...                      發送信號給一個單元的進程
          is-active PATTERN...              檢查單元是否已經被激活
          is-failed PATTERN...              檢查單元是否已經失敗
          status [PATTERN...|PID...]        顯示一個或多個單元的運行狀態
          show [PATTERN...|JOB...]          顯示一個或多個單元/任務/管理的性能
          cat PATTERN...                    顯示一個或多個單元的文件和混入信息
          set-property NAME ASSIGNMENT...   設置一個或多個單元的性能
          help PATTERN...|PID...            顯示手冊
          reset-failed [PATTERN...]         為所有,一個或多個重設失敗狀態
          list-dependencies [NAME]          遞歸顯示所需的單元
    Unit File Commands:
          list-unit-files [PATTERN...]      顯示已安裝的單元文件
          enable NAME...                    激活一個或多個單元文件
          disable NAME...                   取消一個或多個單元文件
          reenable NAME...                  重新激活一個或多個單元文件
          preset NAME...                    激活或取消一個或多個基於事先設定配置的單元文件
          preset-all                        激活或取消所有基於事先配置的單元文件
          is-enabled NAME...                檢查單元文件是否被激活
          mask NAME...                      標記一個或多個單元
          unmask NAME...                    取消標記一個或多個單元
          link PATH...                      連接一個或多個單元文件到搜索路徑
          add-wants TARGET NAME...          添加wants依賴性為目標,在指定的一個或多個單元上
          add-requires TARGET NAME...       在指定的一個多個單元上為目標添加requires依賴
          edit NAME...                      編輯一個或多個單元文件
          get-default                       取得默認目標名
          set-default NAME                  設置默認目標
    Machine Commands:
          list-machines [PATTERN...]         列出本地容器和主機
    Job Commands:
          list-jobs [PATTERN...]            列車任務
          cancel [JOB...]                   取消所有,一個或多個任務
    Snapshot Commands:
          snapshot [NAME]                   創建快照
          delete NAME...                    移動一個或多個快照
    Environment Commands:
          show-environment                  顯示環境
          set-environment NAME=VALUE...     設置一個或多個環境變量
          unset-environment NAME...         取消設置一個或多個環境變量
          import-environment [NAME...]      輸入所有或一些環境變量
    Manager Lifecycle Commands:
          daemon-reload                     重載系統管理配置
          daemon-reexec                     重新執行systemd管理
    System Commands:
          is-system-running                 檢查系統是否全速運行
          default                           進入系統默認模式
          rescue                            進入系統安全模式
          emergency                         進入系統緊急模式
          halt                              關閉系統
          poweroff                          關閉系統,關閉電源
          reboot [ARG]                      重啟系統
          kexec                             使用kexec重啟系統
          exit                              要求用戶實例退出
          switch-root ROOT [INIT]           切換到一個不同的root文件系統
          suspend                           抑制系統
          hibernate                         休眠系統
          hybrid-sleep                      抑制休眠系統
    示例:
        管理服務
            啟動:
                service name start ==> systemctl start  name.service
            停止:
                service name stop ==> systemctl stop  name.service
            重啟:
                service name restart ==> systemctl restart  name.service
            狀態:
                service name status ==> systemctl status  name.service
            條件式重啟:
                已啟動才重啟,否則不做操作
                service name condrestart ==> systemctl try-restart name.service
            重載或重啟服務:
                先加載,再啟動
                systemctl reload-or-restart name.service
            重載或條件式重啟服務:
                systemctl reload-or-try-restart name.service
            禁止自動和手動啟動:
                systemctl mask name.service
            取消禁止:
                systemctl unmask name.service
        查看服務
            查看某服務當前激活與否的狀態:
                systemctl is-active name.service
            查看所有已經激活的服務:
                systemctl list-units [--type|-t] service
            查看所有服務:
                systemctl list-units --type service [–all|-a]
            chkconfig 命令的對應關系:
                設定某服務開機自啟:
                    chkconfig name on ==> systemctl enable name.service
                設定某服務開機禁止啟動:
                    chkconfig name off ==> systemctl disable name.service
            查看所有服務的開機自啟狀態:
                chkconfig --list ==> systemctl  list-unit-files --type service
            用來列出該服務在哪些運行級別下啟用和禁用
                chkconfig sshd –list ==>ls /etc/systemd/system/*.wants/sshd.service
            查看服務是否開機自啟:
                systemctl is-enabled name.service
            查看服務的依賴關系:
                systemctl list-dependencies name.service
            殺掉進程:
                systemctl kill 進程名
        服務狀態
            顯示狀態命令
                systemctl list-unit-files --type service --all 
            loaded  Unit配置文件已處理
            active(running):    一次或多次持續處理的運行
            active(exited):     成功完成一次性的配置
            active(waiting):    運行中,等待一個事件
            inactive:   不運行
            enabled:    開機啟動
            disabled:   開機不啟動
            static:     開機不啟動,但可被另一個啟用的服務激活

系統相關命令