要講到進程真假死我們就必須要說一下------------jps;
我們安裝好hadoop之后查看兆沙,安裝情況就使用的jps查看欧芽,那jps到底是什么呢:
jps 查看Java接口的進程號,但并不是所有的java接口葛圃,只能查看遵循一定規(guī)范的進程號千扔,但是大數(shù)據(jù)中大部分的進程jps是可以查看的。
hadoop用戶jps查看的進程號
進入/tmp/hsperfdata-hadoop目錄下
有沒有發(fā)現(xiàn)一件很有趣的事库正,圖一跟圖二紅線框中的數(shù)字一樣曲楚。
jps查詢的是當前用戶的 /tmp/hsperfdata_當前用戶/文件,當前用戶創(chuàng)建一個進程,它對應的的“hsperfdata_當前用戶”文件夾下就會創(chuàng)建一個新的文件夾褥符;
首先我們模擬一種情況:
啟動hdfs:
第一種情況:
真死假存在
使用root用戶殺進程:
kill -9 $(pgrep -f hadoop)
process information unavailable龙誊;
我們使用ps -ef|grep pid看一下進程是否存在:
說明進程已經(jīng)不存在了。
我們直接去"tmp/hsperfdata_當前用戶",將進程號對應的文件夾刪掉就可以
第二種情況:
假死真存在:
顯示如圖3喷楣,但是ps -ef|grep pid趟大,是存在的;這種情況就不要隨便隨便刪抡蛙,因為此時這個進程可能只是在你當前登錄的用戶中不可用护昧,但是在其他用戶中是可用的。
總結(jié):
生產(chǎn): process information unavailable
1.找到進程號jps
2.ps -ef|grep pid 是否存在?
3.假如不存在粗截,我們可以去該/tmp/hsperfdata_xxx 去刪除惋耙?
4.假如存在,當前用戶查看就是process information unavailable ,
那么怎樣查看是有用的绽榛?(切換用戶查看)?