認識程序以及相關命令
程序相關概念
程序:二進制文件
進程:運行的程序
程序的權限簡單理解:誰觸發的程序運行,那么程序就擁有誰的權限
父進程:一個進程可以開啟另外的進程,以此類推,以父進程進行追蹤上層進程
服務:一些常駐內存的進程以提供功能以服務用戶的各項任務,這些進程稱為服務
Linux是多用戶,多任務環境,所以不存在死機情況
& 后臺執行關鍵字(常用)
舉例 cp file1 file2 &
nohup 脫機管理(常用)
nohup配合&關鍵字進行脫機后臺執行.這在服務器啟動web服務是常用的命令
舉例 nohup java -jar xxxx.jar >info.out 2>error.out &
ps 靜態進程查詢(根據命令查pid,常用)
只需要記住ps aux即可(沒有-) 或者ps -ef查詢服務的
top 動態查看進程變化
-P參數cpu占有率排序
kill 進程管理(常用)
-1 重啟,-9 關閉,-15正常結束(有問題的進程是無法正常結束的)
舉例:kill -9 pid
killall 服務管理
如果有pid那么kill命令可以直接用,如果只知道服務那么使用killall可以直接管理服務
其他常用的查看狀態命令
free 查看內存使用情況(常用)
舉例: free -h(內存友好格式)
uname 查看系統與內核相關信息
netstat 跟蹤網絡(根據端口查pid,常用)
舉例: netstat -anp | grep 8080 常見根據端口找pid命令
lsof 列出被進程所打開的文件名(lsof -i:8080)
pidof 找出某個正在執行的進程pid (pidof java)
軟件安裝
一般的源碼文件安裝順序
1 ./configure
建立Makefile文件
2 makeclean;make
先清理下,然后編譯
3 make install
安裝
這幾個步驟都是一個一個來的,也就是其中一步沒通過,那么后續的步驟是沒法進行的.
檢驗軟件正確性
由于軟件源碼都是開放的,這就導致了被篡改的風險,為了保證被發布的軟件沒有被篡改過,會隨著發行版本號一起帶著指紋用于驗證(md5或者sha1的指紋).這在很多軟件的官網下載時可以看到.