基本进程与服务管理
目錄
進程管理
日志管理
服務管理
管理運行級別
進程管理?
程序:靜態沒有執行的代碼????? 消耗:硬盤空間
進程:動態執行的代碼?? 消耗:CPU與內存資源
父進程與子進程?? 樹型結構?
????????????????????? 進程編號:PID systemd(PID永遠為1):所有進程的父進程(上帝進程
pstree查看進程????
????????? 常用命令選項
?????????????????????? -a:顯示完整的命令行
??????????????????????? -p:列出對應進程的PID編號
ps? 查看進程
??????? 格式:ps? [選項]...
???????? 常用命令選項
????????????????????????? aux:顯示當前終端所有進程(a)、當前用戶在所有終端下的進程(x)、以用戶格式輸出(u)
?????????????????????????? -elf:顯示系統內所有進程(-e)、以長格式輸出(-l)信息、包括最完整的進程信息(-f)
?????????? ps? aux 操作
?????????????????????????? 列出正在運行的所有進程,顯示進程信息非常詳細
??? 用戶? 進程ID? %CPU? %內存? 虛擬內存? 固定內存? 終端? 狀態? 起始時間? CPU時間? 程序指令??
??????????? ps? -elf 操作
?????????????????????????? 列出正在運行的所有進程,顯示進程父進程信息 :PPID為父進程的PID
top 交互式工具
???????????? 格式:top? [-d? 刷新秒數]? [-U? 用戶名]
???????????? 按大寫P進行CPU排序
???????????? 按大寫M進行內存排序
pgrep — Process Grep(指定查找)
用途:pgrep? [選項]...? 查詢條件
????????????????????? 常用命令選項
???????????????????????????????? -l:輸出進程名,而不僅僅是 PID
???????????????????????????????? -U:檢索指定用戶的進程
???????????????????????????????? -t:檢索指定終端的進程
??????????????????????????????? -x:精確匹配完整的進程名 控制進程(進程前后臺的調度)
?
進程的前后臺調度
????????????????????????&符號:正在運行的狀態放入后臺
??????????????????????? Ctrl + z 組合鍵 :掛起當前進程(暫停并轉入后臺)
??????????????????????? jobs 命令 :查看后臺任務列表
?????????????????????????????????????????jobs -l? #-l顯示進程的pid
?????????????????????? fg 命令 :將后臺任務恢復到前臺運行
????????????????????? bg 命令 :激活后臺被掛起的任務
干掉進程方法:
????????????????????????Ctrl+c 組合鍵,中斷當前命令程序
????????????????????????kill? [-9]? PID... 、kill? [-9]? %后臺任務編號,
??????????????????????????????????? -9強制殺死 killall? [-9]? [選項]進程名...???????
????????????????????????pkill? [-9]? 查找條件? 殺死一個用戶的開啟的所有進程(強制踢出一個用戶)
????????????????????????????????????????-u 提出用戶
????????????????????????????????????????例子:pkill -9 -u lisi
日志管理
Linux內核定義的事件緊急程度
????????????????????????-分為 0~7 共8種優先級別
??????????????????????? -其數值越小,表示對應事件越緊急/重要
系統和程序的“日記本”
?????????????????????????記錄系統、程序運行中發生的各種事件
????????????????????????通過查看日志,了解及排除故障
??????????????????????? 信息安全控制的“依據”
由系統服務rsyslog統一記錄/管理
????????????????????????日志消息采用文本格式
????????????????????????主要記錄事件發生的時間、主機、進程、內容
通用分析工具
???????????????????????? tail、tailf、less、grep等文本瀏覽/檢索命令
???????????????????????? awk、sed等格式化過濾工具
tailf:實時跟蹤
???????????????????????? 例子:echo 123456? >? /opt/1.txt
????????????????????????????????????? tailf? /opt/1.txt
users、who、w 命令
查看已登錄的用戶信息,詳細度不同
last、lastb 命令? 查看最近登錄成功/失敗的用戶信息
???????????????????????? 格式: last [數字] :最近登陸成功的幾天
???????????????????????? 格式: lastb [數字] :最近登陸失敗的幾
服務管理
init程序作用
Linux系統和服務管理器
???????????????? –是內核引導之后加載的第一個初始化進程(PID=1)
????????????????–負責掌控整個Linux的運行/服務資源組合
?????????????? 用戶---》systemd---》服務???? 上帝進程:systemd
一個更高效的系統&服務管理器
???????????????? –開機服務并行啟動,各系統服務間的精確依賴
???????????????? –配置目錄:/etc/systemd/system/
???????????????? –服務目錄:/lib/systemd/system/???
??????????????? –主要管理工具:systemctl 對于服務的管理(與手動啟動有沖突)
啟動.關閉.查看,自啟.關閉.自啟.查看自啟
啟動:systemctl restart??? 服務名??? #重起服務
??????????? systemctl start???? 服務名?? #開啟服務?
??????????? systemctl enable?? 服務名??? #設置服務開機自啟動
關閉:systemctl stop??? 服務名???? #停止服務
systemctl? disable?? 服務名? #設置服務禁止開機自啟動?
查看:systemctl -t service --all #列出所有的服務
systemctl status?? 服務名????? #查看服務當前的狀態
systemctl? is-enabled 服務名?? #查看服務是否開機自
管理運行級別
RHEL5與RHEL6:運行級別 300
????????????????0:關機 0個服務
????????????????1:單用戶模式(基本功能的實現,破解Linux密碼) 50個服務
????????????????2:多用戶字符界面(不支持網絡) 80個服務
????????????????3:多用戶字符界面(支持網絡)服務器默認運行級別 100個服務
????????????????4:未定義 0個服務
????????????????5:圖形界面???? 300個服務
????????????????6:重起 0個服務 切換運行級別:init?? 數字 (切換到字符模式與圖形模式)
RHEL7:運行模式(運行級別)?
????????????????字符模式:multi-user.target
????????????????圖形模式:graphical.target?
列出可以運行的級別
????????????????systemctl? -t? target
當前直接切換到字符模式
????????????????systemctl isolate multi-user.target??? #相當于原來的init 3
當前直接切換到圖形模式?
???????????????? systemctl isolate graphical.target??? #相當于原來的init 5?
查看每次開機默認進入模式
????????????????systemctl get-default
設置永久策略,每次開機自動進入multi-user.target???
???????????????? systemctl? set-default?? multi-user.target?
總結
- 上一篇: cron计划任务书写格式
- 下一篇: shell的基础学习