Linux系統基礎(六)

2021-08-09 04:23:40 字數 4221 閱讀 9874

####1.程序定義####

程序就是cpu未完成的工作

####2.ps命令####

psa    ##關於當前環境的所有程序

x    ##所有程序

f    ##顯示程序從屬關係

e    ##顯示程序呼叫環境工具的詳細資訊

l    ##長列表顯示程序的詳細資訊

u    ##顯示程序的使用者資訊

-a    ##顯示shell前台執行命令的程序,但不保函shell本身

ps ax -o %cpu,%mem,user,group,comm,nice,pid,stat    ##指定顯示程序的某些資訊

%cpu    ##顯示程序cpu負載

%mem    ##顯示程序記憶體負載

user    ##程序使用者

group    ##程序組

comm    ##程序名稱

nice    ##程序優先順序

pid    ##程序的id

stat    ##程序狀態

####stat中顯示的資訊

s    ##程序狀態

l    ##記憶體中有鎖定空間

n    ##優先順序低

+    ##前台執行

s    ##頂級程序

ps ax -o %cpu,comm --sort     ##按照程序資訊排序

+    ##正序

-    ##倒序

####3.程序優先順序####

1.程序的優先順序範圍

-20~19

數字越小,程序的優先順序越高。

2.優先順序檢視

ps ax -o pid,nice,comm

3.指定某個優先順序開啟程序

nice -n 優先順序數字    程序名稱

nice -n -5 vim &    ##開啟vim並且指定程式優先順序為-5

4.改變程序優先順序

reince -n 優先順序數字    程序pid

renice -n -5 1806    ##改變1806程序的優先順序為-5

####4.環境中程序的前後臺呼叫####

jobs            ##檢視被打入環境後台的程序

ctrl+z            ##把占用終端的程序打入後台

fg jobsnum        ##把後台程序調回前台

bg jobsnum        ##把後台暫停的程序執行

comm &            ##讓命令直接在後台執行

#########1-30訊號詳解######

1) sighup

本訊號在使用者終端連線(正常或非正常)結束時發出, 通常是在終端的控

制程序結束時, 通知同一session內的各個作業, 這時它們與控制終端

不再關聯.

2) sigint

程式終止(interrupt)訊號, 在使用者鍵入intr字元(通常是ctrl-c)時發出

3) sigquit 和sigint類似, 但由quit字元(通常是ctrl-)來控制. 程序在因收到

sigquit退出時會產生core檔案, 在這個意義上類似於乙個程式錯誤信

號. 4)

sigill 執行了非法指令. 通常是因為可執行檔案本身出現錯誤, 或者試圖執行

資料段. 堆疊溢位時也有可能產生這個訊號.

5) sigtrap 由斷點指令或其它trap指令產生. 由debugger使用.

6) sigabrt 程式自己發現錯誤並呼叫abort時產生.

6) sigiot 在pdp-11上由iot指令產生, 在其它機器上和sigabrt一樣.

7) sigbus 非法位址, 包括記憶體位址對齊(alignment)出錯. eg: 訪問乙個四個字長

的整數, 但其位址不是4的倍數.

8) sigfpe 在發生致命的算術運算錯誤時發出. 不僅包括浮點運算錯誤, 還包括溢

出及除數為0等其它所有的算術的錯誤.

9) sigkill 用來立即結束程式的執行. 本訊號不能被阻塞, 處理和忽略.

10)

sigusr1 留給使用者使用

11)

sigsegv 試圖訪問未分配給自己的記憶體, 或試圖往沒有寫許可權的記憶體位址寫資料.

12)

sigusr2 留給使用者使用

13)sigpipe broken pipe

14)

sigalrm 時鐘定時訊號, 計算的是實際的時間或時鐘時間. alarm函式使用該

訊號.

15)

sigterm 程式結束(terminate)訊號, 與sigkill不同的是該訊號可以被阻塞和

處理. 通常用來要求程式自己正常退出. shell命令kill預設產生這

個訊號.

17)

sigchld 子程序結束時, 父程序會收到這個訊號.

18)

sigcont 讓乙個停止(stopped)的程序繼續執行. 本訊號不能被阻塞. 可以用

乙個handler來讓程式在由stopped狀態變為繼續執行時完成特定的

工作. 例如, 重新顯示提示符

19)

sigstop 停止(stopped)程序的執行. 注意它和terminate以及interrupt的區別:

該程序還未結束, 只是暫停執行. 本訊號不能被阻塞, 處理或忽略.

20)

sigtstp 停止程序的執行, 但該訊號可以被處理和忽略. 使用者鍵入susp字元時

(通常是ctrl-z)發出這個訊號

21)

sigttin 當後台作業要從使用者終端讀資料時, 該作業中的所有程序會收到sigttin

訊號. 預設時這些程序會停止執行.

22)

sigttou 類似於sigttin, 但在寫終端(或修改終端模式)時收到.

23)

sigurg 有"緊急"資料或out-of-band資料到達socket時產生.

24)

sigxcpu 超過cpu時間資源限制. 這個限制可以由getrlimit/setrlimit來讀取/

改變 25)

sigxfsz 超過檔案大小資源限制.

26)

sigvtalrm 虛擬時鐘訊號. 類似於sigalrm, 但是計算的是該程序占用的cpu時間.

27)

sigprof 類似於sigalrm/sigvtalrm, 但包括該程序用的cpu時間以及系統呼叫的

時間.

28)

sigwinch 視窗大小改變時發出.

29)

sigio 檔案描述符準備就緒, 可以開始進行輸入/輸出操作.

30)

sigpwr power failure

有 兩個訊號可以停止程序:sigterm和sigkill。 sigterm比較友好,程序能捕捉這個訊號,根據您的需要來關閉程式。在關閉程式之前,您可以結束開啟的記錄檔案和完成正在做的任務。在某些情況下,假 如程序正在進行作業而且不能中斷,那麼程序可以忽略這個sigterm訊號。

對於sigkill訊號,程序是不能忽略的。這是乙個 「我不管您在做什麼,立刻停止」的訊號。假如您傳送sigkill訊號給程序,linux就將程序停止在那裡

####6.使用者登陸審記####

1w        ##檢視使用系統的當前使用者有那些

w -f        ##-f檢視使用地點

2last        ##檢視使用者登陸成功歷史

3.lastb        ##檢視使用者登陸未成功歷史

####7.top命令####

top        ##監控系統負載工具

s    : 修改程序重新整理間隔時間

m    : 根據記憶體占有率進行排序

c    : 根據 cpu 占有率進行排序

u    : 後面輸入使用者名稱 , 用來檢視該使用者發起的所有程序

k    : 後面跟要作用的程序 pid, 和發起的訊號 (eg:9,15,20) 用來

給某個程序發起一訊號

q    : 退出程序檢視介面

h    : 顯示 top 命令的幫助

linux初學(六)之linux系統基礎

vi是乙個命令列介面下的文字編輯器工具,vi改進vim linux知名的文字編輯器還有emacs,她的功能比vim還要強大 命令vim可以啟動vim編輯器 vim擁有三種模式 命令模式 預設 命令模式可以貼上複製撤銷 插入模式 在命令模式下按i ex模式 在命令模式中按 可以進入ex模式,游標會移動...

六 linux系統 遠端連線SSH基礎

ssh經常被用來管理伺服器,有ssh客戶端和ssh伺服器,它傳輸的資料是加密的,並且是壓縮的,高效率並且安全。以下是ssh相關的指令 1 埠號 ssh的預設埠號是22 web伺服器端口號是80 https是443 ftp伺服器是21 2 ssh客戶端鏈結伺服器 ssh p 22 user remot...

Linux系統基礎

本文採用的系統為ubuntu 16.04 64位 linux命令格式 命令名 選項 引數 選項和引數都可以省略。linux檔案系統 常用命令 cd 改變當前目錄位置 mkdir 建立目錄 man 命令名 同上。可以採用j,k翻頁。q退出。tab鍵 歷史命令 在命令執行過程中,如果目錄或者檔名稱過長,...