⑴ linux如何查看命為start.sh啟動的進程
Linux系統中的進程分為:獨立守護進程和被動守護進程。
獨立守護進程由相應的獨立啟動,而被動守護進程由Xinetd服務監聽啟動。
例如:郵件伺服器配置守護進程sendmail就是獨立守護進程,可以用service命令啟動,而pop3協議就以被動守護進程方式啟動,需要修改/etc/xinetd.d目錄下的相應守護進程文件ipop3,再重新啟動xinetd的方式啟動。
查看進程可以用:ps
列出當前所有的後台進程
刪除進程則用kill命令。kill命令的語法格式很簡單,大致有以下兩種方式:
kill
[-s
信號
|
-p
]
[
-a
]
進程號
...
kill
-l
[信號]
-s
指定需要送出的信號。既可以是信號名也可以對應數字。
-p
指定kill命令只是顯示進程的pid,並不真正送出結束信號。
-l
顯示信號名稱列表,這也可以在/usr/include/linux/signal.h文件中找到。
一般用法:
ps列出當前所有的後台進程
kill
PID。某個進程已經掛死或閑置,使用kill命令卻殺不掉,則必須必須發送信號9,強行關閉此進程。
⑵ linux 怎麼查看指定的進程
1、首先需要打開linux客戶端進入軟體主界面。
⑶ Linux下查看某程序aaa服務的啟動狀態時,可以使用的命令
方法如下:
linux下查看某個進程的啟動命令的方法:
在Linux下,如果需要查看進程的啟動時間,常用ps aux命令,但是ps aux命令的缺陷在於只能顯示時間到年、日期、或者時間,無法具體到年月日時分秒。如果需要查看某個進程的具體啟動時間,使用ps -p PID -o Istart,其中,PID為某個進程的進程ID號。
如下所示,顯示系統中所有httpd進程的具體啟動時間。for pid in $(pgrep httpd); do echo -n "${pid} " ; ps -p ${pid} -olstart I grep -v "START" ; done。
301 Mon Aug 2711:21:59 2012。344 Mon Aug 2711:33:13 2012。25065 Sun Aug 26 03:27:03 2012。25066 Sun Aug 26 03:27:03 2012。25067 Sun Aug 26 03:27:03 2012。25068 Sun Aug 26 03:27:03 2012。25069 Sun Aug 2603:27:03 2012。25070 Sun Aug 26 03:27:03 2012。25071 Sun Aug 26 03:27:03 2012。25072 Sun Aug 26 03:27:03 2012。27903 Wed Jun 20 22:50:47 2012。32767 Mon Aug 27 11:21:48 2012。
⑷ 如何在Linux中查看所有正在運行的進程
查看Linux中所有正在運行的進程 ,可以參考如下方法:
1、通過ps命令的-A或者-e參數來獲取系統中所有的進程,這兩個參數的作用一樣的。
⑸ Linux查看進程運行的完整路徑及參數的方法
Linux在啟動一個進程時,系統會在/proc下創建一個以PID命名的文件夾,在該文件夾下會有我們的進程的信息.
這些信息,有的是軟鏈接,有的是文本,有的是目錄.
查看這些信息需要對應的許可權.
其中部分常用信息如下.
cwd 符號鏈接, 是進程運行目錄. sudo ls -al /proc/PID/cwd
exe 符號連接, 是執行程序的絕對路徑. sudo ls -al /proc/PID/exe
cmdline 文本, 是程序運行時輸入的命令行命令. sudo cat /proc/PID/cmdline
environ 文本, 記錄了進程運行時的環境變數. sudo cat /proc/PID/environ
fd 目錄, 裡面是進程打開或使用的文件的符號連接. sudo ls -al /proc/PID/fd
⑹ 如何在Linux中查看所有正在運行的進程
可以使用top命令。
top命令提供了運行中系統的動態實時視圖。在終端中輸入top:
第一行:
10:01:23
當前系統時間
126
days,
14:29
系統已經運行了126天14小時29分鍾(在這期間沒有重啟過)
2
users
當前有2個用戶登錄系統
load
average:
1.15,
1.42,
1.44
load
average後面的三個數分別是1分鍾、5分鍾、15分鍾的負載情況。
load
average數據是每隔5秒鍾檢查一次活躍的進程數,然後按特定演算法計算出的數值。如果這個數除以邏輯CPU的數量,結果高於5的時候就表明系統在超負荷運轉了。
第二行:
Tasks
任務(進程),系統現在共有183個進程,其中處於運行中的有1個,182個在休眠(sleep),stoped狀態的有0個,zombie狀態(僵屍)的有0個。
第三行:cpu狀態
6.7%
us
用戶空間佔用CPU的百分比。
0.4%
sy
內核空間佔用CPU的百分比。
0.0%
ni
改變過優先順序的進程佔用CPU的百分比
92.9%
id
空閑CPU百分比
0.0%
wa
IO等待佔用CPU的百分比
0.0%
hi
硬中斷(Hardware
IRQ)佔用CPU的百分比
0.0%
si
軟中斷(Software
Interrupts)佔用CPU的百分比
在這里CPU的使用比率和windows概念不同,如果你不理解用戶空間和內核空間,需要充充電了。
第四行:內存狀態
8306544k
total
物理內存總量(8GB)
7775876k
used
使用中的內存總量(7.7GB)
530668k
free
空閑內存總量(530M)
79236k
buffers
緩存的內存量
(79M)
第五行:swap交換分區
2031608k
total
交換區總量(2GB)
2556k
used
使用的交換區總量(2.5M)
2029052k
free
空閑交換區總量(2GB)
4231276k
cached
緩沖的交換區總量(4GB)
⑺ linux查看進程的方法有幾種
linux查看進程方法:
1. top 命令
top命令查看系統的資源狀況
load average表示在過去的一段時間內有多少個進程企圖獨佔CPU
zombie 進程
:不是異常情況。一個進程從創建到結束在最後那一段時間遍是僵屍。留在內存中等待父進程取的東西便是僵屍。任何程序都有僵屍狀態,它佔用一點內存資源,僅
僅是表象而已不必害怕。如果程序有問題有機會遇見,解決大批量僵屍簡單有效的辦法是重起。kill是無任何效果的stop模式:與sleep進程應區
別,sleep會主動放棄cpu,而stop是被動放棄cpu ,例單步跟蹤,stop(暫停)的進程是無法自己回到運行狀態的。
cpu states:
nice:讓出百分比irq:中斷處理佔用
idle:空間佔用百分比 iowait:輸入輸出等待(如果它很大說明外存有瓶頸,需要升級硬碟(SCSI))
Mem:內存情況
設計思想:把資源省下來不用便是浪費,如添加內存後free值會不變,buff值會增大。 判斷物理內存夠不夠,看交換分區的使用狀態。
交互命令:
[Space]立即刷新顯示
[h]顯示幫助屏幕
[k] 殺死某進程。你會被提示輸入進程 ID 以及要發送給它的信號。 一般的終止進程可以使用15信號;如果不能正常結束那就使用信號9強制結束該進程。默認值是信號15。在安全模式中此命令被屏蔽。
[n] 改變顯示的進程數量。你會被提示輸入數量。
[u] 按用戶排序。
[M] 按內存用量排序。
[o][O] 改變顯示項目的順序。
[P] 根據CPU使用百分比大小進行排序。
[T] 根據時間/累計時間進行排序。
[Ctrl+L] 擦除並且重寫屏幕。
[q] 退出程序。
[r] 重新安排一個進程的優先順序別。系統提示用戶輸入需要改變的進程PID以及需要設置的進程優先順序值。輸入一個正值將使優先順序降低,反之則可以使該進程擁有更高的優先權。默認值是10。
[S] 切換到累計模式。
[s] 改變兩次刷新之間的延遲時間。系統將提示用戶輸入新的時間,單位為s。如果有小數,就換算成m
s。輸入0值則系統將不斷刷新,默認值是5
s。需要注意的是如果設置太小的時間,很可能會引起不斷刷新,從而根本來不及看清顯示的情況,而且系統負載也會大大增加。
縮寫含義:
PID每個進程的ID
USER進程所有者的用戶名
PRI每個進程的優先順序別
NI每個優先順序的值
SIZE 進程的代碼大小加上數據大小再加上堆棧空間大小的總數,單位是KB RSS 進程佔用的物理內存的總數量,單位是KB
SHARE進程使用共享內存的數量
STAT 進程的狀態。其中S代表休眠狀態;D代表不可中斷的休眠狀態;R代表運行狀態;Z代表僵死狀態;T代錶停止或跟蹤狀態
%CPU進程自最近一次刷新以來所佔用的CPU時間和總時間的百分比
%MEM進程佔用的物理內存占總內存的百分比
TIME進程自啟動以來所佔用的總CPU時間
CPU CPU標識
COMMAND進程的命令名稱
2. ps命令
ps查看當前用戶的活動進程,如果加上參數可以顯示更多的信息,如-a,顯示所有用戶的進程
ps ax :tty值為「?」是守護進程,叫deamon 無終端,大多系統服務是此進程,內核態進程是看不到的
ps axf :看進程樹,以樹形方式現實進程列表敲 ,init是1號進程,系統所有進程都是它派生的,殺不掉
ps axm :會把線程列出來。在linux下進程和線程是統一的,是輕量級進程的兩種方式。
ps axu :顯示進程的詳細狀態。
vsz:說此進程一共佔用了多大物理內存。
rss:請求常駐內存多少
⑻ linux 怎麼查看某個進程的啟動命令
1、查看進程「打開」的文件 (方法1):1)pidof programe-name(獲得想了解的進程(programe-name)的PID)或ps -aux|grep programe-name(獲得想了解的進程(programe-name)的PID)找出進程的PID2)cd /proc/$PID/fd(會看見文件描述符)3)ls -l 得到文件描述符指向的實際文件,即當前進程打開的文件2、查看進程「打開」的文件 (方法2):1)獲得想了解的進程的PID方法同上2)lsof -c programe-name或lsof -p $PID
⑼ 如何查看linux進程啟動方式
1、查看進程「打開」的文件 (方法1):
1)pidof programe-name(獲得想了解的進程(programe-name)的PID)
或ps -aux|grep programe-name(獲得想了解的進程(programe-name)的PID)
找出進程的PID
2)cd /proc/$PID/fd(會看見文件描述符)
3)ls -l 得到文件描述符指向的實際文件,即當前進程打開的文件
2、查看進程「打開」的文件 (方法2):
1)獲得想了解的進程的PID方法同上
2)lsof -c programe-name
或lsof -p $PID
⑽ linux 查看進程由哪個進程啟動
1)使用lsof命令 lsof是一個非常強大的linux工具,她被用來查找哪些程序使用了那些文件。在linux系統下,基本上所有的東西都可以被當作文件來用。socket當然也是一種文件了。所以lsof可以用來查找誰用了某一個埠。具體方法: lsof -i :port_number grep "(LISTEN)" -i是用來查找和網路相關的文件,":"號是必須的,它是標志你查找的是一個埠。port_number就是你要查找的埠號,譬如你要查找是否 有程序佔用了oracle的監聽埠1521,就可以使用lsof -i :1521 |grep "(LISTEN)"。如果有程序已經佔用了,那麼下面列印的第二個欄位就是該程序的進程id,第一個欄位是進程的名字。 如果只有losf -i :port_number可能會查到很多應用程序,但這些程序實際並沒有佔用你指定的埠,這些埠只是連接到本機器或者別的機器的該埠。所以要grep "(LISTEN)「,因為一個埠只可能被一個程序佔用的,所以這種方法是可靠的。 2)使用netstat 命令 大家一定對這個命令比較熟悉了,可能你從沒有想到用到來查找哪一個程序的佔用了指定的埠。但是netstat -an 的確提供了這種功能。所以有問題了一定要想到先去查找man手冊,不過說實話,某些man手冊寫得讓中國人看不懂,那沒有辦法了,就googe或者 一下吧。 執行man netstat命令,你會發現netstat 提供了'-p'的選項,這個選項的功能是告訴你哪個程序佔用了該埠,但是她提供的形式比較古怪是以pid/process_name提供的。pid當然 是進程id了,process_name是進程的命令,中間以'/'號分隔。 和上面的原因一樣,我們只查找listen的埠,netstat 給我們提供了-l的選項,這個選項不是默認的選項。 下面以1521埠來看怎麼查找到該程序,我們使用下面的命令: netstat -lnpawk 'BEGIN{prt=":1521$"}{if ($4 ~ prt) print $0}' 在這里使用awk來匹配第4個欄位的模式是為了避免誤判。