linux程序服務
① linux鏌ョ湅紼嬪簭榪愯岀姸鎬乴inux鏌ョ湅紼嬪簭榪愯
鍦╨inux涓嬫庝箞鏌ユ壘涓涓姝e湪榪愯岀殑榪涚▼鈥橈紵
ps-ef|grep榪涚▼鍚峱s-ef錛氭煡鐪嬫e湪榪愯岀殑榪涚▼|錛氱¢亾鍛戒護錛屽皢鍓嶈呯殑杈撳嚭浣滀負鍚庤呯殑杈撳叆grep榪涚▼鍚嶏細鍦ㄨ緭鍏ユ暟鎹涓鏌ユ壘榪涚▼淇℃伅
linux鎬庝箞鏌ョ湅鏈嶅姟鏄鍚﹁繍琛岋紵
鍙浠ュ湪Linux涓嬭緭鍏ュ懡浠わ細
1銆$servicesshdstatus2銆#serviceservicenamestatus鏄褰撳墠鐘舵3銆#chkconfig--listservicename鏄鏌ョ湅鍚鍔ㄧ姸鎬侊紝涔熷氨鏄鏄鍚﹀紑鏈鴻嚜鍔ㄥ惎鍔ㄦ敞錛
1銆佸傛灉service鍜宑hkconfig鎵句笉鍒幫紝鍙浠ヨ瘯璇/sbin/service鍜/sbin/chkconfig2銆佸傛灉鐢╱buntu濂藉儚鏄瑕佺敤/etc/init.d/servicenamestatus鏌ョ湅褰撳墠鐘舵侊紙servicename灝辨槸浣犺佹煡鐨勬湇鍔″悕錛夋墿灞曡祫鏂欙細鏌ョ湅鏌愰」鏈嶅姟褰撳墠鍚鍔ㄧ姸鎬佺殑鍏朵粬鏂瑰紡涓銆佸埄鐢ㄨ繘紼嬫潵鏌ョ湅鍛戒護閲宲s-aux鍀済repxxx鏄鏌ョ湅鏌愪釜榪涚▼鎴栬呮湇鍔℃槸鍚﹀瓨鍦ㄣ
浜屻佸埄鐢╯ervices鍛戒護1銆佹煡鐪嬪崟涓鏈嶅姟鐨勮繍琛岀姸鎬侊細service鏈嶅姟鍚峴tatus濡傦細#servicesshdstatusopenssh-daemon(pid3701)姝e湪榪愯
2銆佹煡鐪嬫墍鏈夋湇鍔$殑榪愯岀姸鎬侊細service_status-all
linux鎬庝箞鏌ョ湅涓涓榪涚▼鐨勬墽琛岀姸鎬侊紵
1錛屽啓涓涓鏈嶅姟錛岀敤exec鎴杙open鎵ц宲s鐨勫懡浠よ岋紝鏍規嵁璇ヨ繘紼嬬殑鍚嶅瓧鑾峰彇璇ヨ繘紼嬬殑pid銆
sprintf(cmd,"ps-ef|grep%s",name);
pstr=popen(cmd,"r");
鐒跺悗php瀹氭椂鐨勮鋒眰榪欎釜鏈哄櫒涓婄殑榪涚▼鐘舵侊紝濡傛灉榪涚▼鎸傛帀浜嗭紝鍙浠ュ仛涓棰勮︺
2錛屽傛灉鎯沖仛鐨勬洿澶氾紝鐩戣嗗綋鍓嶆瘡涓榪涚▼鐨勮祫婧愭秷鑰楋紝姣斿侰PU錛屽唴瀛橈紝鏍規嵁榪涚▼鐨剗d錛屽彲浠ュ幓鎷垮埌/proc/pid/status涓鐨勪竴浜涙暟鎹錛屾瘮濡傦細
//鑾峰彇榪涚▼鍗犵敤鍐呭瓨
unsignedintget_proc_mem(unsignedintpid){
charfile_name={0};
FILE*fd;
charline_buff={0};
sprintf(file_name,"/proc/%d/status",pid);
fd=fopen(file_name,"r");
if(nullptr==fd){
return0;
}
charname;
intvmrss;
for(inti=0;iVMRSS_LINE-1;i++){
fgets(line_buff,sizeof(line_buff),fd);
}
fgets(line_buff,sizeof(line_buff),fd);
sscanf(line_buff,"%s%d",name,vmrss);
fclose(fd);
returnvmrss;
}
鐒跺悗浣犲氨鍙浠ラ氳繃涓浜涘浘褰㈠仛涓浜涘姩鎬佸睍紺轟簡銆
linux涓濡備綍鏌ョ湅杞浠跺紑鍚鐘舵侊紵
鍙浠ュ湪Linux涓嬭緭鍏ュ懡浠わ細
1銆$servicesshdstatus
2銆#serviceservicenamestatus鏄褰撳墠鐘舵
3銆#chkconfig--listservicename鏄鏌ョ湅鍚鍔ㄧ姸鎬侊紝涔熷氨鏄鏄鍚﹀紑鏈鴻嚜鍔ㄥ惎鍔
linux濡備綍鏌ョ湅紼嬪簭鐨勮繍琛屽弬鏁幫紵
濡傛灉鏄鐜板湪榪愯岀殑紼嬪簭浣犲彲浠ヤ嬌鐢錛歱saux|grep紼嬪簭鍚嶅傛灉緋葷粺鑷甯︾殑鍛戒護錛岀洿鎺ョ湅man鎵嬪唽灝卞緢鏂逛究manls
② 怎麼在linux伺服器上運行程序
在Linux伺服器上運行程序的方法有很多,這里介紹兩種主要方式。如果希望使程序pso在Linux伺服器後台執行,當客戶端關機後重新登錄伺服器時,仍能查看到程序的運行結果,可以使用如下命令:
# ./pso > pso.file &
解釋:將pso程序直接放在後台運行,並將終端輸出保存到當前目錄下的pso.file文件中。當客戶端關機後重新登錄伺服器後,可以直接通過命令:
#cat pso.file 查看程序的執行結果。
需要注意的是,有些程序即使使用 & 結尾,如果終端關閉,程序也會被關閉。為了使程序始終在後台運行,可以使用nohup命令。方法2:在終端輸入:
# nohup ./pso > pso.file &
nohup的意思是不掛起,將pso程序直接放在後台運行,並將終端輸出保存到當前目錄下的pso.file文件中。當客戶端關機後重新登錄伺服器後,可以直接通過命令:
#cat pso.file 查看程序的執行結果。
此外,還有一些常用的任務管理命令,如:
# jobs 查看任務,返回任務編號n和進程號
# bg %n 將編號為n的任務轉到後台運行
# fg %n 將編號為n的任務轉到前台運行
# ctrl+z 掛起當前任務
# ctrl+c 結束當前任務
# tail -f logs.txt 實時查看日誌文件
注意:如果要在前台執行的任務放到後台運行,則先要用ctrl+z掛起該任務,然後用bg命令使它在後台執行。
③ 查看linux開啟了哪些服務
1. 查看Linux啟動的服務
chkconfig --list 查詢出所有當前運行的服務
chkconfig --list atd 查詢atd服務的當前狀態
2.停止所有服務並且在下次系統啟動時不再啟動,如下所示:
chkconfig --levels 12345 NetworkManager off
如果想查看當前處於運行狀態的服務,用如下語句過濾即可
chkconfig --list |grep on
3.如果只是想當前的設置狀態有效,在系統重啟動後即不生效的話,可以用如下命令停止服務
service sshd stop
(3)linux程序服務擴展閱讀:
Linux是一套免費使用和自由傳播的類Unix操作系統,是一個基於POSIX和UNIX的多用戶、多任務、支持多線程和多CPU的操作系統。它能運行主要的UNIX工具軟體、應用程序和網路協議。它支持32位和64位硬體。Linux繼承了Unix以網路為核心的設計思想,是一個性能穩定的多用戶網路操作系統。
④ linux查看程序運行狀態linux查看程序運行
如何在Linux下查看服務的運行情況?
可以在Linux下輸入命令:
1、$servicesshdstatus
2、#serviceservicenamestatus是當前狀態
3、#chkconfig--listservicename是查看啟動狀態,也就是是否開機自動啟動註:1、如果service和chkconfig找不到,可以試試/sbin/service和/sbin/chkconfig2、如果用ubuntu好像是要用/etc/init.d/servicenamestatus查看當前狀態(servicename就是你要查的服務名)
在linux下怎麼查找一個正在運行的進程『?
ps-ef|grep進程名ps-ef:查看正在運行的進程|:管道命令,將前者的輸出作為後者的輸入grep進程名:在輸入數據中查找進程信息
linux怎麼查看一個進程的執行狀態?
1,寫一個服務,用exec或popen執行ps的命令行,根據該進程的名字獲取該進程的pid。
sprintf(cmd,"ps-ef|grep%s",name);
pstr=popen(cmd,"r");
然後php定時的請求這個機器上的進程狀態,如果進程掛掉了,可以做個預警。
2,如果想做的更多,監視當前每個進程的資源消耗,比如CPU,內存,根據進程的id,可以去拿到/proc/pid/status中的一些數據,比如:
//獲取進程佔用內存
unsignedintget_proc_mem(unsignedintpid){
charfile_name={0};
FILE*fd;
charline_buff={0};
sprintf(file_name,"/proc/%d/status",pid);
fd=fopen(file_name,"r");
if(nullptr==fd){
return0;
}
charname;
intvmrss;
for(inti=0;iVMRSS_LINE-1;i++){
fgets(line_buff,sizeof(line_buff),fd);
}
fgets(line_buff,sizeof(line_buff),fd);
sscanf(line_buff,"%s%d",name,vmrss);
fclose(fd);
returnvmrss;
}
然後你就可以通過一些圖形做一些動態展示了。
如何查看linux進程?
linux下查看進程可以使用的命令:
1、ps命令查找與進程相關的PID號:
2、psa顯示現行終端機下的所有程序,包括其他用戶的程序。
3、ps-A顯示所有程序。
4、psc列出程序時,顯示每個程序真正的指令名稱,而不包含路徑,參數或常駐服務的標示。
5、ps-e此參數的效果和指定"A"參數相同。
6、pse列出程序時,顯示每個程序所使用的環境變數。
7、psf用ASCII字元顯示樹狀結構,表達程序間的相互關系。
8、ps-H顯示樹狀結構,表示程序間的相互關系。
9、ps-N顯示所有的程序,除了執行ps指令終端機下的程序之外。
10、pss採用程序信號的格式顯示程序狀況。
11、psS列出程序時,包括已中斷的子程序資料。
12、ps-t終端機編號>指定終端機編號,並列出屬於該終端機的程序的狀況。
linux系統中如何查看進程號?
linux系統中查看進程號的方法如下
1、ps命令查找與進程相關的PID號:
2、psa顯示現行終端機下的所有程序,包括其他用戶的程序。
3、ps-A顯示所有程序。
4、psc列出程序時,顯示每個程序真正的指令名稱,而不包含路徑,參數或常駐服務的標示。
5、ps-e此參數的效果和指定A參數相同。
6、pse列出程序時,顯示每個程序所使用的環境變數。
7、psf用ASCII字元顯示樹狀結構,表達程序間的相互關系。
8、ps-H顯示樹狀結構,表示程序間的相互關系。
9、ps-N顯示所有的程序,除了執行ps指令終端機下的程序之外。
10、pss採用程序信號的格式顯示程序狀況。
11、psS列出程序時,包括已中斷的子程序資料。
12、ps-t終端機編號>指定終端機編號,並列出屬於該終端機的進程狀況。