項目8 進程與服務管理_第1頁
項目8 進程與服務管理_第2頁
項目8 進程與服務管理_第3頁
項目8 進程與服務管理_第4頁
項目8 進程與服務管理_第5頁
已閱讀5頁,還剩40頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

項目8進程與服務管理任務1進程管理和任務調度進程基本概念12進程監(jiān)控和管理3進程與文件權限4任務調度管理1進程基本概念1進程基本概念進程存儲在內部存儲設備(內存),而程序存儲在外部存儲設備(如硬盤等)進程在內存中對應一個進程控制塊(ProcessControlBlock,PCB)每個進程都有一個進程號(ProcessID,PID)進程是動態(tài)的,程序是靜態(tài)的程序是代碼和數(shù)據(jù)的集合,是經過編譯后形成的可執(zhí)行二進制文件程序在內存中運行產生進程。一個程序可以產生多個進程進程具有多個狀態(tài),如就緒、運行、等待、掛起等進程是臨時的,程序是持久的程序文件一旦生成就一直存儲在磁盤中,除非手動刪除進程只有在程序運行時才會產生。進程可能正常結束或異常退出進程與程序1進程基本概念每個進程都有一個進程號(ProcessID,PID)除了PID為1的systemd進程以,其他進程都是由父進程創(chuàng)建的一個父進程可以創(chuàng)建多個子進程一般來說,當父進程終止時,子進程也隨之終止,反之則不然父進程可以向子進程發(fā)送特定的信號對子進程進行管理如果父進程不能成功終止子進程,或者子進程因為某些異常情況無法自行終止,就會產生“僵尸”進程父進程與子進程1進程基本概念創(chuàng)建狀態(tài)。操作系統(tǒng)為進程申請一個空白PCB并寫入相關信息創(chuàng)建->就緒。進程資源需求可以滿足進入就緒隊列就緒->運行。選擇一個進程并分配CPU時間片運行->終止。進程正?;虍惓=K止運行->阻塞。等待某些事件才能繼續(xù)運行阻塞->就緒。等待事件發(fā)生時會重新進入就緒狀態(tài)運行->就緒。CPU時間片用完或被其他進程搶占退出狀態(tài)。釋放資源進程狀態(tài)2進程監(jiān)控與管理2進程監(jiān)控與管理功能:查看系統(tǒng)中當前有哪些進程,選項非常多只能顯示系統(tǒng)進程的靜態(tài)信息ps命令[zys@centos8~]$psaux //注意,選項前可以不使用“-”USER PID %CPU %MEM VSZRSSTTYSTATSTART TIME COMMANDroot 2 0.0 0.0 00 ? S10:300:00 [kthreadd]root 3 0.0 0.0 00 ? I<10:300:00 [rcu_gp]root 4 0.0 0.0 00 ? I<10:300:00 [rcu_par_gp]2進程監(jiān)控與管理功能:查看進程間的相關性和依賴關系pstree命令[zys@centos8~]$pstree-pu|moresystemd(1)-+-ModemManager(887)-+-{ModemManager}(915)| `-{ModemManager}(958)|-NetworkManager(1094)-+-{NetworkManager}(1105)| `-{NetworkManager}(1106)|-VGAuthService(888)|-accounts-daemon(971)-+-{accounts-daemon}(975)| `-{accounts-daemon}(977)2進程監(jiān)控與管理功能:查看進程信息的動態(tài)變化,默認每3秒刷新一次進程信息顯示系統(tǒng)硬件資源的占用情況等有助于系統(tǒng)管理員監(jiān)控系統(tǒng)運行狀態(tài)或分析系統(tǒng)故障top命令[zys@centos8~]$top-d10top-11:23:45up53min,2users,loadaverage:0.00,0.03,0.09Tasks:240total,3running,237sleeping,0stopped,0zombiePIDUSER PRNIVIRTRESSHR S%CPU%MEM TIME+COMMAND5842zys 200274830411800039396 S0.76.40:13.35 gnome-shell11root 200000 R0.10.00:00.31 rcu_sched2進程監(jiān)控與管理功能:將命令放入Bash后臺運行而不影響終端窗口在命令結尾輸入“&”符號即可通過“&”放入后臺的進程仍然處于運行狀態(tài)前后臺進程切換-&[zys@centos8~]$find.-namefile1& //將find命令放入后臺運行[1]7546 <==這一行顯示任務號和進程號[zys@centos8~]$./file1 <==注意:這一行是find命令的輸出[1]+已完成find.-namefile1 <==這一行表示find命令在后臺運行結束2進程監(jiān)控與管理進程在前臺運行時按【Ctrl+Z】組合鍵,進程會被放入后臺并被處于暫停狀態(tài)前后臺進程切換-【Ctrl+Z】組合鍵[zys@centos8~]$find/-namefile1&>/dev/null //按Enter鍵后再按【Ctrl+Z】組合鍵^Z[1]+已停止find/-namefile1&>/dev/null[zys@centos8~]$bc //按Enter鍵后再按【Ctrl+Z】組合鍵^Z[2]+已停止bc2進程監(jiān)控與管理功能:查看從終端窗口放入后臺的進程“+”號表示最近放入后臺的命令“-”表示倒數(shù)第2個放入后臺的命令前后臺進程切換-jobs命令[zys@centos8~]$jobs-l[1]-7556停止 find/-namefile1&>/dev/null <==倒數(shù)第2個放入后臺的進程[2]+7562停止 bc <==最后一個放入后臺的進程2進程監(jiān)控與管理功能:使后臺暫停的進程重新開始運行命令后跟任務號前后臺進程切換-bg命令[zys@centos8~]$bg1 //bg命令后跟任務號[zys@centos8~]$jobs-l[1]-7556運行中 find/-namefile1&>/dev/null&[2]+7562停止 bc2進程監(jiān)控與管理功能:把后臺的進程恢復到前臺繼續(xù)運行前后臺進程切換-fg命令[zys@centos8~]$jobs-l[2]+7562停止bc[zys@centos8~]$fg2 //fg命令后跟任務號bc11+16 <==這一行是在bc交互環(huán)境中的輸入27 <==這一行是計算結果6*13 <==這一行是在bc交互環(huán)境中的輸入78 <==這一行是計算結果quit <==退出bc交互環(huán)境2進程監(jiān)控與管理功能:設置進程的優(yōu)先級每個進程都有優(yōu)先級,優(yōu)先級越高表示進程越有可能獲得CPU使用權優(yōu)先級用nice值表示,取值范圍是-20~19,默認值為0,數(shù)字越大表示優(yōu)先級越低進程管理-nice命令[zys@centos8~]$nice-11vimfile1&[1]7616[zys@centos8~]$ps-l-Cvim //查看進程優(yōu)先級FSUIDPIDPPIDCPRINIADDRSZWCHANTTYTIMECMD0T10007616698409111-8504-pts/100:00:00vim[1]+已停止nice-11vimfile12進程監(jiān)控與管理調整運行中的進程的優(yōu)先級普通用戶只能調整自己創(chuàng)建的進程,而且只能把nice調整為更大的值root用戶可以調整所有人的進程優(yōu)先級,而且可以調整為更小的值進程管理-renice命令[zys@centos8~]$renice16-p7616 //普通用戶調整自己創(chuàng)建的進程的優(yōu)先級7616(processID)舊優(yōu)先級為11,新優(yōu)先級為16[zys@centos8~]$ps-l-CvimFSUIDPIDPPIDCPRINIADDRSZWCHANTTYTIMECMD0T10007616698409616-8504-pts/100:00:00vim[zys@centos8~]$renice9-p7616renice:設置7616的優(yōu)先級失敗(processID):權限不夠 <==普通用戶只能修改為更大的值2進程監(jiān)控與管理功能:通過內核向進程發(fā)送信號以執(zhí)行某些特殊的操作,如掛起進程、正常退出進程或強制終止進程等終止進程-kill命令[zys@centos8~]$ps-f-Cvim,bash,psUIDPIDPPIDC STIME TTY TIME CMDzys10341103340 08:31 pts/0 00:00:00 bashzy11:26 pts/1 00:00:00 vimfile1zy11:40 pts/0 00:00:00 ps-f-Cvim,bash,ps[zys@centos8~]$kill-913457 //結束PID為13457的進程3進程與文件權限3進程與文件權限和普通文件類似,進程也有所有者和屬組兩個屬性進程的所有者就是創(chuàng)建進程的用戶,也稱為執(zhí)行者進程的屬組是執(zhí)行者所屬的用戶組。進程對文件的操作權限按照以下規(guī)則確定如果進程的所有者與文件的所有者相同,就為進程賦予文件所有者的權限如果進程的所有者屬于文件的屬組,就為進程賦予文件屬組的權限為進程賦予其他人的權限進程的權限3進程與文件權限普通用戶使用cat命令查看文件/etc/shadow進程的權限[zys@centos8~]$whichcat/usr/bin/cat[zys@centos8~]$ls-l/usr/bin/cat/etc/shadow----------. 1rootroot18042月2511:00 /etc/shadow-rwxr-xr-x. 1rootroot385044月272020 /usr/bin/cat[zys@centos8~]$idzysuid=1000(zys)gid=1003(devteam)組=1003(devteam)[zys@centos8~]$cat/etc/shadowcat:/etc/shadow:權限不夠權限不夠!3進程與文件權限普通用戶使用passwd命令修改密碼進程的權限[zys@centos8~]$whichpasswd/usr/bin/passwd[zys@centos8~]$ls-l/usr/bin/passwd/etc/passwd-rw-r--r--.1rootroot28252月2813:15/etc/passwd-rwsr-xr-x.1rootroot336004月72020/usr/bin/passwd操作成功!3進程與文件權限SetUID(簡稱為SUID):在所有者的執(zhí)行權限位置上出現(xiàn)了之前從未講過的s標志只能對二進制程序文件設置SUID權限,對Shell腳本文件和目錄不起作用執(zhí)行設置了SUID權限的程序文件時,進程的所有者變?yōu)樵绦蛭募乃姓?,而不是?zhí)行程序的用戶,也可以理解為執(zhí)行者繼承了文件所有者的權限前提是用戶對該程序文件具有執(zhí)行權限文件特殊權限-SUID3進程與文件權限文件特殊權限-設置SUID[zys@centos8~]$su-root[root@centos8~]#ls-l/usr/bin/cat-rwxr-xr-x.1rootroot385044月272020/usr/bin/cat[root@centos8~]#chmod4755/usr/bin/cat //為cat命令設置SUID權限[root@centos8~]#ls-l/usr/bin/cat-rwsr-xr-x.1rootroot385044月272020/usr/bin/cat[root@centos8~]#exit[zys@centos8~]$cat-n/etc/shadow //現(xiàn)在可以訪問文件/etc/shadow1 root:$6$h3J7E45ujX.3wfi8z.:19775:0:99999:7:::2 bin:*:18397:0:99999:7:::[zys@centos8~]$su-root[root@centos8~]#chmod0755/usr/bin/cat //刪除cat命令的SUID權限[root@centos8~]#ls-l/usr/bin/cat-rwxr-xr-x.1rootroot385044月272020/usr/bin/cat3進程與文件權限SetGID(簡稱為SGID):出現(xiàn)在文件屬組的執(zhí)行權限位置上的s標志可以對二進制程序文件和目錄設置SGID權限對二進制程序文件設置SGID權限時,進程將擁有文件屬組的權限,即繼承了文件屬組的權限SGID權限對二進制程序文件生效的前提是執(zhí)行者對該文件具有執(zhí)行權限對目錄設置SGID權限時,用戶進入該目錄后有效用戶組變?yōu)樵撃夸浀膶俳MSGID權限對目錄生效的前提是用戶對該目錄具有執(zhí)行和寫權限用戶在具有SGID權限的目錄中新建的目錄會自動繼承SGID權限文件特殊權限-SGID3進程與文件權限文件特殊權限-設置SGID[zys@centos8~]$cd/tmp[zys@centos8tmp]$mkdirsgid_testdir[zys@centos8tmp]$chmod2777sgid_testdir //為目錄設置SGID權限[zys@centos8tmp]$ls-ldsgid_testdirdrwxrwsrwx.2zyszys62月2813:39sgid_testdir[zys@centos8tmp]$su-shaw[shaw@centos8~]$idshawuid=1238(shaw)gid=1001(shaw)組=1001(shaw)[shaw@centos8~]$cd/tmp/sgid_testdir[shaw@centos8sgid_testdir]$touchfile1[shaw@centos8sgid_testdir]$mkdirdir1[shaw@centos8sgid_testdir]$ls-ldrwxrwsr-x.2shawzys62月2813:42dir1 //繼承SGID權限-rw-rw-r--.1shawzys02月2813:42file1 //繼承屬組3進程與文件權限StickyBit(簡稱為SBIT或粘滯位):出現(xiàn)在目錄的其他人的執(zhí)行權限位置上的t標志只能對目錄設置SBIT權限用戶在目錄中新建的文件和目錄,只有該用戶本身和root用戶能夠刪除SBIT權限生效的前提是用戶對目錄具有執(zhí)行和寫權限文件特殊權限-SBIT3進程與文件權限文件特殊權限-設置SBIT[zys@centos8tmp]$ls-ld/tmpdrwxrwxrwt.36rootroot40962月2813:46/tmp[zys@centos8tmp]$touchsbit_testfile[zys@centos8tmp]$mkdirsbit_testdir[zys@centos8tmp]$ls-ldsbit*drwxrwxr-x.2zyszys62月2813:46sbit_testdir //沒有繼承SBIT權限-rw-rw-r--.1zyszys02月2813:46sbit_testfile[zys@centos8tmp]$su-shaw[shaw@centos8~]$rm/tmp/sbit_testfile

rm:是否刪除有寫保護的普通空文件'/tmp/sbit_testfile'?yrm:無法刪除'/tmp/sbit_testfile':不允許的操作 <==無法刪除文件4任務調度管理4任務調度管理功能:設置需要周期執(zhí)行的任務crontab-命令格式crontab[-uuname]|-e|-l|-r4任務調度管理crontab-示例[zys@centos8~]$crontab-e*/3****echo“timeis`date`”>>/tmp/cron_test<==輸入該行內容后保存設置并退出[zys@centos8~]$crontab-l //查看當前crontab周期任務*/3****echo“timeis`date`”>>/tmp/cron_test[zys@centos8~]$tail-f/tmp/cron_test //觀察文件/tmp/cron_test的實時變化

“timeis2024年2月04日星期日06:15:01CST”“timeis2024年2月04日星期日06:18:01CST”“timeis2024年2月04日星期日06:21:01CST”4任務調度管理功能:設置在指定的時間執(zhí)行某個一次性任務time參數(shù)是計劃任務的執(zhí)行時間,可以采用下列時間格式的任何一種HH:MM[am|pm][Month][Date][Year],如11:10amJan182024HH:MMYYYY-MM-DD,如11:102024-01-18MMDDYY、MM/DD/YY,指定日期,如011824、01/18/24特定時間:如now表示當前時刻,noon代表12:00pmtime+n[minutes|hours|days|weeks],表示在某個時間點之后某一時刻執(zhí)行,如now+3hours表示當前時刻的3小時后at-命令格式at[-l][-ffname][-djobnumber]time4任務調度管理at-示例[zys@centos8~]$atnow+3minutesat>echo"timeis`date`">>/tmp/at_test //這是要執(zhí)行的命令

at><EOT> //按【Ctrl+D】組合鍵退出job1atMonMar406:20:002024[zys@centos8~]$at-l

//查看at計劃任務,相當于atq命令1 MoMar406:20:002024azys[zys@centos8~]$tail-f/tmp/at_test //觀察文件/tmp/at_test的實時變化timeis2024年3月04日星期一06:20:00CST //只在指定時間執(zhí)行一次任務2進程管理和任務調度系統(tǒng)啟動和初始化過程12systemctl管理工具1系統(tǒng)啟動和初始化過程1系統(tǒng)啟動和初始化過程系統(tǒng)啟動過程BIOS自檢。BIOS是開機后計算機主動執(zhí)行的第1個程序。BIOS從CMOS讀取計算機硬件設備的配置信息,檢查外圍硬件設備是否能夠正常工作啟動引導程序。BIOS根據(jù)啟動設備的順序查找用于啟動操作系統(tǒng)的驅動設備,并從中讀取啟動引導程序。完成啟動引導程序的讀取之后,啟動引導程序開始接管系統(tǒng)啟動的控制權加載操作系統(tǒng)內核。啟動引導程序最主要的功能是加載操作系統(tǒng)內核,并將系統(tǒng)啟動的控制權轉交給內核操作系統(tǒng)初始化。系統(tǒng)初始化工具負責操作系統(tǒng)的初始化工作,準備操作系統(tǒng)的運行環(huán)境系統(tǒng)啟動工具-systemdsystemd是常駐內存的守護進程,PID為1,其他進程都是systemd的直接或間接子進程并行啟動系統(tǒng)服務,即同時啟動多個互不依賴的系統(tǒng)服務支持按需響應(on-demand)的服務啟動方式,當有用戶使用這個服務時就啟動,使用完即可關閉,直到下次使用時再啟動把系統(tǒng)服務定義為一個服務單元(unit),每個單元都有對應的單元配置文件,相當于SysVinit里的服務腳本兼容SysVinit啟動腳本,仍然可以使用這些這些腳本啟動系統(tǒng)服務已經成為各Linux發(fā)行版的系統(tǒng)初始化工具1系統(tǒng)啟動和初始化過程systemd基本概念-單元把系統(tǒng)運行的各種服務和對象定義為一個單元單元有不同的類型,如服務、掛載點、定時器和快照等利用單元配置文件識別和配置單元,擴展名代表單元的類型1系統(tǒng)啟動和初始化過程systemd基本概念-單元配置文件每個單元都有一個應對的單元配置文件,主要保存在三個目錄中/usr/lib/systemd/system:保存每個服務的啟動腳本配置文件,類似于SysVinit里目錄/etc/init.d中的服務啟動腳本文件/run/systemd/system:保存系統(tǒng)執(zhí)行過程中產生的服務腳本,優(yōu)先級比目錄/usr/lib/systemd/system中的配置文件優(yōu)先級

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論