Linux程序管理( )

2021-06-26 13:02:34 字數 4052 閱讀 4744

一、程序的型別

可以將執行在linux系統中的程序分為三種不同的型別:

互動程序:由乙個shell啟動的程序。互動程序既可以在前台執行,也可以在後台   執行。

二、程序的啟動方式

手工啟動

前台啟動:是手工啟動乙個程序的最常用的方式。一般地,使用者鍵入乙個命令「ls  -l」,這就已經啟動了乙個程序,而且是乙個前台的程序。

後台啟動:直接從後台手工啟動乙個程序用得比較少一些,除非是該程序甚為耗時, 且使用者也不急著需要結果的時候。

ls –r / >list &

排程啟動

排程啟動方式是事先進行設定,根據使用者要求讓系統自行啟動

三、檢視系統中的程序

1、ps命令

格式:ps [選項]

[root@hostpp]$ ps          顯示本賬號的程序

[root@hostpp]$ ps –aux   檢視系統和每位使用者全部程序

由於ps –aux會列出系統中正在執行的所有程序,因此不易找到特定的程序。若搭 配grep命令,則可事半功倍:[root@host pp]$ ps –aux|grep pp  查詢pp的程序

ps命令使用說明:

常用引數:

a:顯示所有程序

u:顯示較詳細的資訊

x:顯示所有包含其它使用者的程序。

使用範例:

2、top命令監視系統資源使用情況

每5秒鐘重新整理一次,動態顯示

按下u鍵:輸入使用者名稱   檢視使用者程序

按下k鍵:輸入pid    刪除程序

四、控制系統中的程序

1、kill命令和killall命令

kill命令不但能殺死程序,同時也會殺死該程序的所有子程序。

kill命令的格式是:kill –signalpid

為什麼要殺死程序

該程序占用了過多的cpu時間

該程序鎖住了乙個終端,使其他前台程序無法執行

執行時間過長,但沒有預期效果

產生了過多到螢幕或磁碟檔案的輸出

無法正常退出

使用者也可以用killall命令來殺死程序,在killall命令後面指定的是要殺死的程序的     命令名稱,而不是pid

範例:kill –9927    引數-9:強制殺死

2、nice命令

nice

指定程式的執行優先順序

格式:nice –n command

[root@hostroot]# nice - -5 myprogram&

在後台以-5的優先順序執行myprogram

其中n是為程序執行指定的優先順序,n的數值越大,程序的優先順序越低.n可以取負  值讓執行級提高。

3、renice命令

renice

改變乙個正在執行的程序的優先順序

格式:renice –n pid   是被指定的程序

[root@hostroot]# renice - -5  777

將正在執行的pid為777的程序優先順序改為-5

4、在後台執行程式的&、bg命令

[root@host root]# cp –r /usr/* test&        

將/usr目錄下的所有子目錄及檔案複製到/root/test目錄下的工作放到後台執行

[root@host root]# fg    放到前台並顯示執行過程

按下ctrl+z鍵掛起該執行程式

[root@host root]# bg   再將執行過程放到後台

[root@host root]# jobs       檢視被掛起的程序

5、程序的掛起和恢復

程序的中止(掛起)和終止

掛起(ctrl+z)

終止(ctrl+c)

程序的恢復

恢復到前台繼續執行(fg)

恢復到後台繼續執行(bg)

檢視被掛起的程序(jobs)

6、自動安排程序任務

自動啟動程序的幾個命令

at 安排作業在某一時刻執行一次

batch    安排作業在系統負載不重時執行一次

系統負載大於1.5不執行。

cron      安排週期性執行的作業

7、at和batch

at命令用來指定在某一時刻執行命令,at命令的格式是:at  [選項]  時間

at的配置檔案

作用:限制哪些使用者可以使用at命令

/etc/at.allow

/etc/at.deny

batch命令的用法和at類似,只是使用者可以不必指定時間,batch會在系統負載小   於1.5的時候執行命令。

8、應用程式cron

cron程序搜尋crontab檔案並載入記憶體 ( crontab檔案即/etc/crontab檔案和 /var/spool/cron/目錄下以使用者名稱命名的檔案)

cron程序啟動以後,它將首先檢查是否有使用者設定了crontab檔案,如果沒有就轉  入「休眠」狀態,釋放系統資源

cron程序每分鐘醒來一次,檢視crontab檔案決定當前是否有需要執行的命令。命  令執行結束後,任何輸出都將作為郵件傳送給crontab的所有者

crontab命令的作用及格式

作用:用於生成cron程序所需要的crontab檔案

crontab的命令格式

crontab[-u user] file

crontab[-u user]

-l 該選項將使在標準輸出上顯示當前的crontab

-r 刪除當前的crontab

-e 使用編輯器編輯當前的crontab檔案。

當結束編輯離開時,編輯後的檔案將自動安裝

crontab檔案格式:

minute  hour day  month  dayofweek command

字段                 所代表的意義          可用範圍

minute             每小時的第幾分鐘執行該程式         0 ~ 59

hour               每一天的第幾小時執行該程式      0 ~23

day               每個月的第幾天執行該程式        1 ~ 31

month             每一年的第幾個月執行該程式          1 ~  12

dayof week            每一周的第幾天執行該程式            0~ 6

command              指定要執行的程式           輸入要執行的命令及引數

範例:20 4 * * * program

指定每天的4點20分執行program命令

50 3 9 * * program

指定每月的9日3點50分執行program命令

1 0 8 9 * program 或

1 0 8 sep * program

指定每年的9月8日0點1分執行program命令

9、計畫任務建立方法

如果需要在每週2、4、6凌晨3點使系統進入維護狀態,重新啟動系統,設該檔案 名為/root/reboot.cron:

1.建立乙個crontab

# echo 「00 03 * * 2,4,6 shutdown –r +10」>/root/reboot.cron

2.使用crontab命令安裝/root/reboot.cron檔案

#crontab/root/reboot.cron        安裝

[root@hostroot]# corntab –e

建立root使用者的corn檔案

5514 * * * ls /root        corn內容   

[pp@hostpp]$ crontab –e 建立pp使用者的corn檔案 

3018 * * * ll /home/pp                    corn內容

[root@hostroot]# crontab –r    刪除root的cron

LINUX程序管理

1.程序是什麼?乙個程序就是出於執行期的程式,包括 可執行程式 段 開啟的檔案,掛起的訊號,核心內部資料,處理器狀態,位址空間,乙個或多個執行執行緒,當然還包括用來存放全域性變數的資料段,等等.2.什麼是執行緒?它和程序的關係是什麼樣的?執行緒在linux中具體是怎麼樣實現的?是在程序中活動的物件,...

linux程序管理

程序的監控 使用ps aux 檢視當前所有程序。可以使用top檢視當前程序自動更新列表,在top中m 按記憶體大小排列,p 按cpu佔用率排列 終止和管理程序 程序之間通過訊號來進行通訊 top和kill都用於向程序傳送訊號。kill l顯示訊號編號表。kill 9 pid kill pid 向pi...

Linux 程序管理

1.linux程序管理工具,包括ps pgrep top kill killall pkill 等 常用 ps aux 或lax輸出的解釋 user 程序的屬主 pid 程序的id ppid 父程序 cpu 程序占用的cpu百分比 mem 占用記憶體的百分比 ni 程序的nice值,數值大,表示較少...