天天看點

程式管理與SELinux初探

1.jobs [-lrs]:觀察目前的背景中的工作狀态,參數,

    -l:除了列出job number與指令串之外,同時列出PID的号碼

    -r:進列出正在背景run的工作

    -s:僅列出正在背景中暫停的工作

    指令執行後的+号表示最近最後被放到背景的工作号碼,-代表最後第二個放置到背景中的工作号碼。而超過第三個以後的工作就不再有+/-号了。

2.fg %jobnumber:将背景中的工作拿到前景來處理,參數:

    1)%jobnumber為工作号碼(數字),這個%是可有可無的,如果不加任何參數,則表示将+(最近最後)的那個背景工作拿到前景中來執行,fg -代表将-那個工作号碼拿出來到前景中取運作。

3.bg:讓工作在背景中的指令由暫停狀态運作狀态(ctr+z可使程式在背景中暫停),參數同fg。

4.kill -signal %jobnumber;kill -l:管理背景中的工作,參數,

    1)-l:列出目前kill能夠使用的訊号

    2)signal:代表給予後面接的那個工作什麼樣的訓示,用man 7 signal可知:

        -1:重新讀取一次參數的配置檔案

        -2:代表由鍵盤輸入ctr+c同樣的動作

        -9:立刻強制删除一個工作

        -15:以正常的程式方式終止一項工作

5.背景是指終端機模式下,可以避免ctr+c中斷的一個情景,并不是放到系統的背景去,是以工作管理的背景依舊與終端機有關,在這樣的情況下,如果是以遠端聯機的方式連接配接的linux主機,并且将工作以&方式放到背景中處理,工作尚未結束的情況下脫機,該工作不會繼續進行了,就會到此終止掉。

6.nohup [指令與參數]:在終端機前景中工作;nohup [指令與參數] &在終端機背景中去工作。需要注意的是nohup并不支援bash的内建指令,是以你的指令必須是外部指令才行。

7.ps :将某個時間點的程式運作情況撷取下來,幾個常用的組合,

    1)ps aux:觀察所有的程式資料

    2)ps -IA:觀察所有的系統資料

    3)ps axjf:連同分程式樹狀态

    4)ps -l:隻查閱自己bash的程式

    各個分參數:

        1)-A:所有的process均顯示出來,與-e具有同樣的效用

        2)-a:不與terminal有關的所有process

        3)-u:有效使用者相關的process

        4)x:通常與a一起用,可以列出較完整的資訊

    輸出格式規劃:

        5)l:較長,較詳細的将該PID的資訊列出

        6)j:工作格式

        7)-f:做一個更為完整的輸出

     ps -l:中各項參數的意義:

        F:代表這個程式的辨別(flag),常見的有:

            4:表示這個程式的權限為root

            1:表示此子程式僅進行fork而沒有實際執行exec

        S:代表這個程式的狀态,主要的狀态有:

            R:該程式正在運作中

            S:改程式目前處于睡眠狀态,但可以被喚醒

            D:不可被喚醒的睡眠狀态,通常這隻程式在等待IO的情況

            T:停止狀态,可能是在工作控制(背景暫停)或除錯狀态

            Z:僵屍狀态,程式已經終止但無法被移除至記憶體外

            W: 沒有足夠的記憶體分頁可配置設定

            <: 高優先級的行程

            N: 低優先級的行程

            L: 有記憶體配置設定并鎖在記憶體内

        UID/PID/PPID:代表此程式被該UID所擁有的/程式的PID号碼/此程式的PID号碼

        C:代表CPU使用率,機關為百分比

        PRI/NI:priority/nice的縮寫,代表此程式被CPU所執行的優先級,數值越小代表該程式越快被CPU執行

        ADDR/SZ/WCHAN:都與記憶體由關,ADDR是kernel function,指出該程式在記憶體的哪個部分,如果是running的程式,一般會顯示-,/SZ代表此程式的用掉了多少記憶體/WCCHAN表示目前程式是否在運作中

        ,同樣若為-表示運作中

        TTY:登入者的終端機位置,若為遠端登入則使用動态終端接口(pts/n)

        TIME:使用掉的CPU時間,是此程式實際花掉的cpu時間,而不是系統時間

        CMD:指令

    ps aux中各項參數的含義,

        USER:該process屬于哪個使用者賬号

        PID:程序ID

        %CPU:CPU使用率

        %MEM:占用記憶體的百分比

        VSZ:該process使用掉的虛拟記憶體(Kbytes)

        RSS:該process占用的固定記憶體(Kbytes)

        TTY:該程式跑的終端裝置,tty1-6是本機的,ps/0等,表示由網絡連接配接進主機的程式

        STAT:該程式目前的狀态

        START:該process被觸發啟動的時間

        TIME:該process實際使用的CPU時間