Linux程序和服務(1)

2021-09-08 07:49:53 字數 1374 閱讀 2064

1、使用ps檢視程序狀態

程序就類似windows中的程序。

1、pid:程序的id,每乙個新程序都有唯一的pid。

2、ppid:父程序的id。

3、任何乙個程序都可以建立乙個子程序。

4、在redhat 7以上版本中,所有程序的父程序叫systemd。

在redhat 7以下的版本中,所有程序的父程序叫init。

-ps指令用於顯示當前程序的狀態,其引數有:

-aux:列出所有程序。

-ef:列出所有程序。

-l:列出和當前使用者有關的程序。

-u 使用者:檢視某一使用者的程序狀態。

top:檢視實時的程序狀態。

2、程序狀態

r (task_running),可執行狀態&執行狀態(在run_queue佇列裡的狀態)

s (task_interruptible),可中斷的睡眠狀態, 可處理signal

d (task_uninterruptible),不可中斷的睡眠狀態, 可處理signal, 有延遲

t (task_stopped or task_traced),暫停狀態或跟蹤狀態, 不可處理signal, 因為根本沒有時間片執行**

z (task_dead - exit_zombie),退出狀態,程序成為殭屍程序。不可被kill, 即不響應任務訊號, 無法用sigkill殺死

3、作業和會話

作業:乙個正在執行的程序,作業包含乙個或多個程序。

作業控制:控制正在執行的程序的行為。

& 命令後使用該符號,可以讓命令在後台執行。

ctrl z 掛起

ctrl c 中斷

jobs 檢視當前後台的作業情況

-l 列出作業號和pid號

-r 僅列出執行的作業

-s 僅列出暫停的作業

程序和作業的區別:

區別:程序是乙個程式在乙個資料集上的一次執行,而作業是使用者提交給系統的乙個任務。

關係:乙個作業通常包括幾個程序,幾個程序共同完成乙個任務,即作業。

使用者提交作業以後,當作業被排程,系統會為作業建立程序,乙個程序無法完成時,系統會為這個程序建立子程序。

fg:將後台中的命令調至前台繼續執行

bg:將乙個在後台暫停的命令,變成繼續執行

ps -j:顯示當前作業資訊

tgid:程序組id號

sid:會話id號

4、中斷程序

kill -l 顯示可以傳遞給程序的資訊號

常用:kill -9 pid:強制殺死乙個程序

kill -15 pid:正常殺死乙個程序

kill -2:同ctrl+c

session程序和服務

session如果是存在程序內的話,當程序重啟,session資料就會丟失。所以就找到了個辦法,不吧session放在程序內,而是放在伺服器上。這樣子只要伺服器不重啟,session資料就不會丟失.1.開始服務 開始本機上的asp.net state service 服務 2.更改配置檔案 在sys...

Linux學習 程序和服務管理

ps命令是最基本的程序檢視命令,使用該命令可以確定哪些程序正在執行及程序的狀態 程序是否結束 程序是否僵死及占用資源等。ps 選項 a 顯示排除會話領導者和程序不與終端關聯的所有進行 u 列印使用者格式,顯示使用者名稱和程序的起始時間 x 顯示不帶控制終端的程序 e 顯示所有的程序 f 顯示uid ...

Linux 引導過程和服務控制

開機自檢 mbr引導 grub選單 載入linux核心 init程序初始化 由linux核心載入執行 sbin init程式 是系統中第乙個程序 pid 程序標記 號永遠為1 0 關機狀態,使用該級別時將會關閉主機,對應systemd中的target 1 單使用者模式,不需要密碼驗證即可登入系統,多...