版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
項目6進(jìn)程管理《Linux網(wǎng)絡(luò)操作系統(tǒng)項目化教程(openEuler)》學(xué)習(xí)目標(biāo)/Target了解進(jìn)程的概念,能夠說出什么是進(jìn)程及進(jìn)程的特點。熟悉進(jìn)程的狀態(tài),能夠說出進(jìn)程有哪些狀態(tài)以及各種狀態(tài)之間的轉(zhuǎn)換過程。了解進(jìn)程標(biāo)識符,能夠說出常用的進(jìn)程標(biāo)識符及其含義。知識目標(biāo)學(xué)習(xí)目標(biāo)/Target掌握進(jìn)程查看命令,能夠熟練使用命令查看進(jìn)程。掌握進(jìn)程終止命令,能夠熟練使用命令終止進(jìn)程。了解任務(wù)的前臺與后臺調(diào)度,能夠使用命令實現(xiàn)進(jìn)程的前臺與后臺調(diào)度。掌握服務(wù)管理,能夠熟練使用systemctl命令管理任。掌握at命令的使用,能夠使用at命令制訂一次性計劃任務(wù)。掌握crontab命令的使用,能夠使用crontab命令制訂周期性計劃任務(wù)。技能目標(biāo)學(xué)習(xí)目標(biāo)/Target通過學(xué)習(xí)進(jìn)程生命周期,提高對事物變化規(guī)律的認(rèn)知,培養(yǎng)應(yīng)對變化的能力,以更好地應(yīng)對事物發(fā)展過程中的不確定性和挑戰(zhàn)。通過計劃任務(wù)的學(xué)習(xí),培養(yǎng)學(xué)習(xí)的規(guī)劃意識,學(xué)會合理安排時間和任務(wù),提高效率,減少拖延。素養(yǎng)目標(biāo)目錄/Contents6.16.2進(jìn)程概述進(jìn)程管理常用命令6.3任務(wù)的前臺與后臺調(diào)度6.4服務(wù)管理6.5計劃任務(wù)項目導(dǎo)入01項目導(dǎo)入隨著業(yè)務(wù)的不斷發(fā)展,服務(wù)器上的數(shù)據(jù)和軟件不斷更新,為了確保openEuler服務(wù)器的穩(wěn)定運行,需要定期進(jìn)行系統(tǒng)維護(hù)。系統(tǒng)維護(hù)包括更新軟件包、清理緩存、檢查磁盤空間等關(guān)鍵任務(wù),以確保系統(tǒng)性能和安全。上級領(lǐng)導(dǎo)讓小智制訂幾項計劃任務(wù),以自動進(jìn)行系統(tǒng)維護(hù)工作。本次要進(jìn)行的系統(tǒng)維護(hù)目標(biāo)如下。自動化更新軟件包,確保系統(tǒng)安全。清理系統(tǒng)緩存,釋放磁盤空間。檢查磁盤空間使用情況,預(yù)防磁盤空間不足導(dǎo)致的問題。維護(hù)工作結(jié)束后,讓系統(tǒng)自動重啟,確保所有更新生效。實現(xiàn)每周五凌晨自動進(jìn)行系統(tǒng)維護(hù)。知識準(zhǔn)備02了解進(jìn)程的概念,能夠說出什么是進(jìn)程及進(jìn)程的特點。學(xué)習(xí)目標(biāo)6.1.1進(jìn)程概念當(dāng)我們運行程序時,Linux操作系統(tǒng)會為程序創(chuàng)建一個特殊的環(huán)境,用于分配管理程序執(zhí)行時所需要的資源(如CPU、內(nèi)存),以保證程序能夠獨立運行,不受其他程序干擾,這個特殊的環(huán)境就稱為進(jìn)程。6.1.1進(jìn)程概念早期的CPU都是單核CPU,對于單核CPU,一次只能執(zhí)行一個程序,即運行一個進(jìn)程。但是,當(dāng)我們使用計算機(jī)時,可以同時運行多個程序。。如果一個進(jìn)程的時間片用完了,CPU將暫停該進(jìn)程的執(zhí)行,將該進(jìn)程移到隊列的末尾,轉(zhuǎn)而執(zhí)行下一個進(jìn)程。時間片分時調(diào)度策略如圖。6.1.1進(jìn)程概念熟悉進(jìn)程的狀態(tài),能夠說出進(jìn)程有哪些狀態(tài)以及各種狀態(tài)之間的轉(zhuǎn)換過程。學(xué)習(xí)目標(biāo)6.1.2進(jìn)程生命周期進(jìn)程的生命周期是指進(jìn)程從創(chuàng)建到終止的完整過程。進(jìn)程在生命周期中主要分為5種狀態(tài),分別是創(chuàng)建狀態(tài)、就緒狀態(tài)、運行狀態(tài)、阻塞狀態(tài)和終止?fàn)顟B(tài),下面分別介紹進(jìn)程的這5種狀態(tài)。6.1.2進(jìn)程生命周期進(jìn)程的創(chuàng)建狀態(tài)是指進(jìn)程正在被創(chuàng)建的過程。在創(chuàng)建狀態(tài),進(jìn)程需要申請內(nèi)存空間,向其中寫入控制和管理進(jìn)程的信息。之后,系統(tǒng)將為該進(jìn)程分配運行時所需要的資源,如內(nèi)存空間和必要的程序段。創(chuàng)建完畢之后,進(jìn)程就會被調(diào)度進(jìn)入就緒隊列等待執(zhí)行。如果在創(chuàng)建的過程中,進(jìn)程所需要的資源不足,如系統(tǒng)內(nèi)存不足,則進(jìn)程創(chuàng)建將無法完成,進(jìn)程將一直處于創(chuàng)建狀態(tài),直到資源需求得到滿足。1.創(chuàng)建狀態(tài)6.1.2進(jìn)程生命周期2.就緒狀態(tài)處于就緒狀態(tài)的進(jìn)程所需的資源都已經(jīng)分配到位,只等待系統(tǒng)分配CPU。當(dāng)把CPU分配給就緒狀態(tài)的進(jìn)程時,進(jìn)程會立刻從就緒狀態(tài)轉(zhuǎn)變?yōu)檫\行狀。處于運行狀態(tài)的進(jìn)程是指已經(jīng)分配到CPU,正在運行的進(jìn)程。如果時間片用完,處于運行狀態(tài)的進(jìn)程就會從運行狀態(tài)進(jìn)入就緒狀態(tài)。如果因為其他原因而失去CPU,進(jìn)程就會從運行狀態(tài)進(jìn)入阻塞狀態(tài)。3.運行狀態(tài)6.1.2進(jìn)程生命周期當(dāng)一個進(jìn)程因為等待某事件的發(fā)生而不能繼續(xù)執(zhí)行時,它就會進(jìn)入阻塞狀態(tài),這些事件包括I/O操作完成、等待信號等。按照等待事件類型、能否被信號中斷等因素,阻塞狀態(tài)可細(xì)分為可中斷睡眠狀態(tài)、不可中斷睡眠狀態(tài)、暫停狀態(tài)。4.休眠狀態(tài)6.1.2進(jìn)程生命周期123可中斷睡眠狀態(tài)是指進(jìn)程因等待某類非關(guān)鍵性事件而進(jìn)入的阻塞狀態(tài)。不可中斷睡眠狀態(tài)是指進(jìn)程因等待關(guān)鍵性核心操作而進(jìn)入的阻塞狀態(tài)。
暫停狀態(tài)是指進(jìn)程收到了特定信號而進(jìn)入的阻塞狀態(tài),當(dāng)進(jìn)程收到將其喚醒的信號后會繼續(xù)執(zhí)行。當(dāng)一個進(jìn)程終止后,它并不會被立即清理,而是在操作系統(tǒng)中保留一段時間,直到其他進(jìn)程對該進(jìn)程完成“善后工作”,如獲取終止原因、統(tǒng)計數(shù)據(jù)等,操作系統(tǒng)會刪除該進(jìn)程。進(jìn)程終止之后,由于沒有其他進(jìn)程對其執(zhí)行“善后工作”,進(jìn)程在操作系統(tǒng)中保留的這段時間稱為僵死狀態(tài),進(jìn)入僵死狀態(tài)的進(jìn)程不會再被執(zhí)行。進(jìn)程終止的原因通常有以下4點。5.終止?fàn)顟B(tài)6.1.2進(jìn)程生命周期123進(jìn)程正常執(zhí)行結(jié)束。進(jìn)程出現(xiàn)錯誤而終止。例如,進(jìn)程要打開的文件不存在,則進(jìn)程自動終止。進(jìn)程外部出現(xiàn)嚴(yán)重錯誤。例如,內(nèi)存不足、除數(shù)為零等,進(jìn)程被迫終止。4被其他有終止權(quán)的進(jìn)程終止。進(jìn)程在執(zhí)行過程中,5種狀態(tài)之間的轉(zhuǎn)換如圖。5.終止?fàn)顟B(tài)6.1.2進(jìn)程生命周期了解進(jìn)程標(biāo)識符,能夠說出常用的進(jìn)程標(biāo)識符及其含義。學(xué)習(xí)目標(biāo)6.1.3進(jìn)程標(biāo)識符在Linux操作系統(tǒng)中,進(jìn)程的標(biāo)識符有3個,分別為進(jìn)程標(biāo)識符、用戶標(biāo)識符和組標(biāo)識符。下面分別介紹進(jìn)程的這3個標(biāo)識符。進(jìn)程標(biāo)識符A用戶標(biāo)識符B6.1.3進(jìn)程標(biāo)識符組標(biāo)識符C1.進(jìn)程標(biāo)識符6.1.3進(jìn)程標(biāo)識符每一個進(jìn)程都有唯一的標(biāo)識符,即進(jìn)程標(biāo)識符(ProcessID,PID),系統(tǒng)通過進(jìn)程標(biāo)識符調(diào)度進(jìn)程。用戶也可以根據(jù)PID調(diào)度進(jìn)程。進(jìn)程終止后,PID會被回收,可能會被分配給其他進(jìn)程使用。在Linux操作系統(tǒng)中,除了初始化進(jìn)程,其他進(jìn)程都會有一個父進(jìn)程,父進(jìn)程即創(chuàng)建進(jìn)程的進(jìn)程。父進(jìn)程也有對應(yīng)的標(biāo)識符,稱為父進(jìn)程標(biāo)識符(ParentProcessID,PPID)。2.用戶標(biāo)識符6.1.3進(jìn)程標(biāo)識符用戶標(biāo)識符(UserID,UID)標(biāo)識創(chuàng)建這個進(jìn)程的用戶。除此之外,Linux操作系統(tǒng)還有EUID的概念,稱為有效用戶標(biāo)識符,表示以有效權(quán)限發(fā)起進(jìn)程的用戶。例如,發(fā)起一個進(jìn)程的用戶是itheima,但實際有權(quán)限的是root用戶,也就是itheima用戶以root權(quán)限發(fā)起了進(jìn)程,那么這個進(jìn)程的UID對應(yīng)的用戶為itheima,EUID對應(yīng)的用戶為root。3.組標(biāo)識符組標(biāo)識符(GroupID,GID)標(biāo)識創(chuàng)建進(jìn)程用戶的所屬組。EUID對應(yīng)的組標(biāo)識符為EGID。在Linux操作系統(tǒng)中,進(jìn)程管理也是通過命令實現(xiàn)的,Linux操作系統(tǒng)提供了豐富的進(jìn)程查看和終止命令。本節(jié)將針對常用的進(jìn)程管理命令進(jìn)行詳細(xì)講解。6.2進(jìn)程管理常用命令掌握進(jìn)程查看命令,能夠熟練使用命令查看進(jìn)程。學(xué)習(xí)目標(biāo)6.2.1進(jìn)程查看命令在Linux進(jìn)程管理中,最重要的操作之一就是查看進(jìn)程,包括查看正在運行的進(jìn)程、查看進(jìn)程運行狀態(tài)等,下面介紹幾個常用的進(jìn)程查看命令。6.2.1進(jìn)程查看命令1.ps命令ps命令用于查看當(dāng)前系統(tǒng)中正在運行的進(jìn)程信息,包括進(jìn)程狀態(tài)、占用的資源等,它是最基本也最強大的進(jìn)程查看命令。6.2.1進(jìn)程查看命令ps選項 參數(shù)基本格式1.ps命令ps命令常用選項如表。6.2.1進(jìn)程查看命令選項說明-a顯示除會話組長進(jìn)程之外的所有進(jìn)程,包括其他用戶的進(jìn)程-e顯示所有進(jìn)程-f相比-a、-e選項,它可以顯示進(jìn)程更多詳細(xì)信息,多與其他選項組合使用-u顯示與指定用戶相關(guān)的進(jìn)程信息,如-uitheima,如果省略參數(shù),則顯示與當(dāng)前用戶相關(guān)的進(jìn)程信息-x顯示沒有控制終端的進(jìn)程,如后臺進(jìn)程-l以長格式顯示進(jìn)程信息,相比于-f選項,它可以顯示更多信息,如F(進(jìn)程標(biāo)志位)、S(進(jìn)程狀態(tài))、PRI(進(jìn)程調(diào)度優(yōu)先級)等-p顯示指定PID的進(jìn)程信息,如-p100001.ps命令6.2.1進(jìn)程查看命令案例6-1:使用ps-aux命令顯示所有終端上所有用戶有關(guān)進(jìn)程的詳細(xì)信息。點擊查看ps命令查看的進(jìn)程結(jié)果不是動態(tài)的、連續(xù)的,它相當(dāng)于快照功能,只顯示當(dāng)前時刻進(jìn)程的狀態(tài)信息。如果想要動態(tài)地顯示進(jìn)程狀態(tài)信息,則可以使用top命令。top命令的基本格式如下所示。6.2.1進(jìn)程查看命令ps選項 參數(shù)基本格式2.top命令2.top命令top命令常用選項如表。6.2.1進(jìn)程查看命令選項說明-b以批處理模式執(zhí)行top命令,即將
top
命令的輸出發(fā)送到標(biāo)準(zhǔn)輸出流(stdout),而不是以交互方式在終端中顯示-d自定義刷新時間間隔-i忽略所有空閑進(jìn)程或僵死進(jìn)程-p監(jiān)視指定PID的進(jìn)程-c顯示進(jìn)程命令行,包括路徑2.top命令使用top命令查看進(jìn)程狀態(tài)信息,顯示結(jié)果如圖。6.2.1進(jìn)程查看命令顯示系統(tǒng)相關(guān)信息顯示進(jìn)程總數(shù)及狀態(tài)分布顯示CPU資源的使用情況顯示內(nèi)存資源的使用情況顯示Swap交換分區(qū)的使用情況2.top命令在top命令的運行界面,使用快捷鍵i忽略閑置和僵死的進(jìn)程,交互結(jié)果如圖。6.2.1進(jìn)程查看命令在Linux操作系統(tǒng)中,除了初始化進(jìn)程systemd,其他進(jìn)程都有父進(jìn)程。一個父進(jìn)程可以創(chuàng)建多個子進(jìn)程,這些子進(jìn)程互為兄弟進(jìn)程。因此,Linux操作系統(tǒng)中的進(jìn)程之間都相互關(guān)聯(lián)。Linux操作系統(tǒng)提供了一個命令pstree,可以樹狀形式顯示系統(tǒng)中的進(jìn)程,即顯示一棵進(jìn)程樹,從進(jìn)程樹中可以直接觀察到進(jìn)程之間的派生關(guān)系。6.2.1進(jìn)程查看命令3.pstree命令pstree命令的基本格式如下所示。6.2.1進(jìn)程查看命令pstree選項基本格式3.pstree命令pstree命令常用選項如表。6.2.1進(jìn)程查看命令3.pstree命令選項說明-a顯示每個進(jìn)程的完整命令(包括路徑、參數(shù)等)-c不使用精簡標(biāo)識法-h列出樹狀圖,特別標(biāo)明當(dāng)前正在執(zhí)行的進(jìn)程-u顯示UID轉(zhuǎn)換。每當(dāng)進(jìn)程的UID與其父進(jìn)程的UID不同時,新的用戶名稱會顯示在進(jìn)程名稱后面的小括號中-n使用程序識別碼排序(默認(rèn)以程序名稱排序)6.2.1進(jìn)程查看命令案例6-2:以樹狀形式顯示系統(tǒng)當(dāng)前進(jìn)程,并著重顯示當(dāng)前正在執(zhí)行的進(jìn)程。點擊查看3.pstree命令pgrep命令可以根據(jù)服務(wù)名稱,從進(jìn)程隊列中查找與該服務(wù)有關(guān)的進(jìn)程,查找成功后顯示進(jìn)程的PID。6.2.1進(jìn)程查看命令pgrep選項參數(shù)基本格式4.pgrep命令pgrep命令常用選項如表。6.2.1進(jìn)程查看命令4.pgrep命令選項說明-o僅顯示同名進(jìn)程中PID最小的進(jìn)程-n僅顯示同名進(jìn)程中PID最大的進(jìn)程-p指定父進(jìn)程的PID6.2.1進(jìn)程查看命令案例6-3:查找與sshd服務(wù)相關(guān)的進(jìn)程。4.pgrep命令[itheima@localhostchapter06]$pgrepsshd13907275772761在案例6-3中,使用pgrep命令查找與sshd服務(wù)相關(guān)的進(jìn)程,由輸出結(jié)果可知,與sshd服務(wù)相關(guān)的進(jìn)程有3個,這3個進(jìn)程的PID分別為1390、72757和72761。掌握進(jìn)程終止命令,能夠熟練使用命令終止進(jìn)程。學(xué)習(xí)目標(biāo)6.2.2進(jìn)程終止命令除了查看進(jìn)程,有時還會終止一些無用的進(jìn)程,針對進(jìn)程的終止,Linux操作系統(tǒng)提供了kill和killall兩個命令。下面分別對這兩個命令進(jìn)行介紹。6.2.2進(jìn)程終止命令1.kill命令kill命令可以終止指定的進(jìn)程。kill命令的工作原理是發(fā)送某個信號給指定進(jìn)程,以改變進(jìn)程的狀態(tài)。kill選項參數(shù)基本格式6.2.2進(jìn)程終止命令1.kill命令kill命令的選項一般是信號,參數(shù)為PID。Linux操作系統(tǒng)提供了很多預(yù)定義的信號,讀者可以使用kill-l命令查看這些預(yù)定義的信號。6.2.2進(jìn)程終止命令點擊查看案例6-4:終止PID為3794的進(jìn)程。終止PID為3794的進(jìn)程6.2.2進(jìn)程終止命令1.kill命令2.killall命令killall命令用于終止某個服務(wù)所對應(yīng)的全部進(jìn)程。通常,復(fù)雜程序會有多個進(jìn)程協(xié)同為用戶提供服務(wù),當(dāng)要終止服務(wù)時,如果使用kill命令逐個終止進(jìn)程會比較麻煩,此時可以使用killall命令批量終止該服務(wù)的所有進(jìn)程。killall命令的基本格式如下所示。killall選項參數(shù)基本格式6.2.2進(jìn)程終止命令killall命令的選項通常也是信號,參數(shù)一般為服務(wù)名稱案例6-5:在openEuler中,進(jìn)入/usr/local/nginx/sbin目錄,啟動nginx服務(wù),查看nginx服務(wù)相關(guān)進(jìn)程,然后終止nginx服務(wù)的所有進(jìn)程。6.2.2進(jìn)程終止命令點擊查看2.killall命令了解任務(wù)的前臺與后臺調(diào)度,能夠使用命令實現(xiàn)進(jìn)程的前臺與后臺調(diào)度。學(xué)習(xí)目標(biāo)6.3任務(wù)的前臺與后臺調(diào)度Linux操作系統(tǒng)中的進(jìn)程可以分為前臺進(jìn)程與后臺進(jìn)程,所謂前臺進(jìn)程就是用戶在屏幕上進(jìn)行操作的進(jìn)程;而后臺進(jìn)程是在不需要用戶干預(yù)的情況下運行的進(jìn)程,通常用于執(zhí)行如日志記錄、系統(tǒng)監(jiān)測、作業(yè)調(diào)度、用戶提醒等任務(wù)。前臺進(jìn)程需要和用戶交互,一般優(yōu)先級稍微高一些;后臺進(jìn)程基本上不和用戶交互,優(yōu)先級稍微低一些。6.3任務(wù)的前臺與后臺調(diào)度在Linux操作系統(tǒng)中,有時需要將前臺任務(wù)暫停調(diào)度至后臺,或者將后臺任務(wù)調(diào)度至前臺重新啟動,為此,Linux操作系統(tǒng)提供了jobs命令、bg命令、fg命令以及一些快捷鍵來完成這一系列操作。需要注意的是,雖然這些命令調(diào)度的是任務(wù),但每個任務(wù)會對應(yīng)一個或多個進(jìn)程,調(diào)度任務(wù)其實就是調(diào)度進(jìn)程。在實際應(yīng)用中,通常說前臺進(jìn)程與后臺進(jìn)程,雖然叫法不同,但讀者要理解其中的關(guān)系。6.3任務(wù)的前臺與后臺調(diào)度下面分別對jobs、bg和fg這幾個命令進(jìn)行介紹。jobsAbgBfgC6.3任務(wù)的前臺與后臺調(diào)度1.jobs命令jobs命令用于顯示系統(tǒng)中暫停的任務(wù)列表及任務(wù)狀態(tài),包括后臺任務(wù)。jobs命令的基本格式如下所示。jobs選項參數(shù)基本格式6.3任務(wù)的前臺與后臺調(diào)度1.jobs命令jobs命令常用選項如表。6.3任務(wù)的前臺與后臺調(diào)度選項說明-l顯示進(jìn)程號-p只顯示任務(wù)PID-s只顯示處于停止?fàn)顟B(tài)的任務(wù)1.jobs命令在Linux操作系統(tǒng)中,命令也是一個可執(zhí)行的二進(jìn)制程序,因此,一次命令的執(zhí)行也是一次任務(wù)執(zhí)行,系統(tǒng)會運行對應(yīng)的進(jìn)程。如果一個命令執(zhí)行時間很長,可以使用Ctrl+z快捷鍵暫停任務(wù),暫停任務(wù)之后,可以使用jobs命令查看暫停的任務(wù)及狀態(tài)。例如,執(zhí)行top命令查看系統(tǒng)進(jìn)程狀態(tài),按Ctrl+z快捷鍵暫停任務(wù),在輸出結(jié)果最后會顯示一條任務(wù)信息。[1]+已停止top基本格式6.3任務(wù)的前臺與后臺調(diào)度表示任務(wù)號,“已停止”表示進(jìn)程的狀態(tài)表示執(zhí)行的命令1.jobs命令執(zhí)行jobs命令可以看到暫停的任務(wù)列表。[itheima@localhostchapter06]$jobs [1]+已停止top[itheima@localhostchapter06]$jobs–l [1]+1457227停止(信號)top[itheima@localhostchapter06]$kill-91457227 基本格式6.3任務(wù)的前臺與后臺調(diào)度顯示暫停的任務(wù)列表顯示任務(wù)進(jìn)程的PID終止進(jìn)程2.bg命令bg命令用于將前臺任務(wù)調(diào)度至后臺執(zhí)行。bg參數(shù)基本格式6.3任務(wù)的前臺與后臺調(diào)度bg的參數(shù)是任務(wù)標(biāo)識號。案例6-6:將top命令執(zhí)行的任務(wù)調(diào)度至后臺執(zhí)行。[itheima@localhostchapter06]$top [itheima@localhostchapter06]$jobs[1]+已停止top[itheima@localhostchapter06]$bg1[1]+top&2.bg命令6.3任務(wù)的前臺與后臺調(diào)度按Ctrl+z快捷鍵暫停任務(wù)2.bg命令除了使用bg命令將任務(wù)調(diào)度至后臺執(zhí)行,還可以在執(zhí)行命令時,在命令后面添加&符號,這樣命令在開始執(zhí)行時就自動在后臺運行。例如,使用top命令查看進(jìn)程狀態(tài)時,在命令后面添加&符號,命令會自動在后臺執(zhí)行。[itheima@localhostchapter06]$top&[1]1526918具體代碼6.3任務(wù)的前臺與后臺調(diào)度在后臺執(zhí)行top命令3.fg命令fg命令用于將后臺任務(wù)調(diào)度到前臺執(zhí)行。fg參數(shù)基本格式6.3任務(wù)的前臺與后臺調(diào)度fg命令的參數(shù)也是任務(wù)標(biāo)識號。案例6-7:使用Vim編輯hello文件,假設(shè)在執(zhí)行過程中有其他任務(wù)要執(zhí)行,將Vim調(diào)度至后臺執(zhí)行,執(zhí)行完其他任務(wù)后,再將Vim調(diào)度至前臺執(zhí)行。點擊查看6.3任務(wù)的前臺與后臺調(diào)度3.fg命令掌握服務(wù)管理,能夠熟練使用systemctl命令管理任務(wù)。學(xué)習(xí)目標(biāo)6.4服務(wù)管理在操作系統(tǒng)中,服務(wù)是一類常駐在內(nèi)存中,且可以提供一些功能來滿足用戶需求的進(jìn)程。這些服務(wù)進(jìn)程一旦啟動就會在后臺一直持續(xù)不斷地運行,它們不需要和用戶進(jìn)行交互,因此服務(wù)進(jìn)程又稱為守護(hù)進(jìn)程(Daemon)。Linux操作系統(tǒng)中有各種各樣的服務(wù),如crond、atd、syslog、Apache等,為了提升服務(wù)質(zhì)量,Linux操作系統(tǒng)提供了特定的命令來管理這些服務(wù)進(jìn)程。6.4服務(wù)管理openEuler使用systemctl命令進(jìn)行服務(wù)管理,systemctl命令基本格式如下所示。systemctl功能命令服務(wù)進(jìn)程基本格式6.4服務(wù)管理systemctl命令常用功能命令如表。6.4服務(wù)管理功能說明start啟動服務(wù)進(jìn)程stop終止服務(wù)進(jìn)程status查詢服務(wù)進(jìn)程運行情況,列出該服務(wù)的詳細(xì)信息restart重啟服務(wù)進(jìn)程enable設(shè)置服務(wù)開機(jī)自啟動disable取消服務(wù)開機(jī)自啟動reload重新加載指定服務(wù)的配置文件(并非所有服務(wù)都支持該參數(shù),使用restart可實現(xiàn)相同功能)案例6-8:以http服務(wù)為例,演示systemctl的用法。安裝http服務(wù)openEuler默認(rèn)沒有安裝http服務(wù),因此,讀者首先需要安裝http服務(wù)。http服務(wù)的守護(hù)進(jìn)程為httpd,安裝命令如下所示。點擊查看6.4服務(wù)管理案例6-8:以http服務(wù)為例,演示systemctl的用法。2.查詢http服務(wù)運行狀態(tài)[root@localhostchapter06]#systemctlstatushttpd○httpd.service-TheApacheHTTPServerLoaded:loaded(/usr/lib/systemd/system/httpd.service;disabled;preset:disabled)Active:inactive(dead)Docs:man:httpd.service(8)Active值為inactive(dead),表示服務(wù)尚未啟動6.4服務(wù)管理案例6-8:以http服務(wù)為例,演示systemctl的用法。3.啟動http服務(wù)[root@localhostchapter06]#systemctlstarthttpd [root@localhostchapter06]#systemctlstatushttpd ●httpd.service-TheApacheHTTPServerLoaded:loaded(/usr/lib/systemd/system/httpd.service;disabled;preset:disabled)Active:active(running)Docs:man:httpd.service(8)…啟動http服務(wù)再次查詢http服務(wù)運行狀態(tài)Active值為active
(running),表明http服務(wù)已經(jīng)成功啟動6.4服務(wù)管理案例6-8:以http服務(wù)為例,演示systemctl的用法。4.終止http服務(wù)[root@localhostchapter06]#systemctlstophttpd [root@localhostchapter06]#systemctlstatushttpd ○httpd.service-TheApacheHTTPServerLoaded:loaded(/usr/lib/systemd/system/httpd.service;disabled;preset:disabled)Active:inactive(dead)Docs:man:httpd.service(8)…終止http服務(wù)再次查詢http服務(wù)運行狀態(tài)Active值為inactive(dead),http服務(wù)已經(jīng)停止運行6.4服務(wù)管理案例6-8:以http服務(wù)為例,演示systemctl的用法。5.設(shè)置http服務(wù)開機(jī)自啟動[root@localhostchapter06]#systemctlenablehttpd Createdsymlink/etc/systemd/system/multi-user.target.wants/httpd.service→/usr/lib/systemd/system/httpd.service.設(shè)置開機(jī)自啟動6.4服務(wù)管理在使用Linux操作系統(tǒng)時,有時需要執(zhí)行一些周期性、規(guī)律性的任務(wù),例如,定時維護(hù)系統(tǒng)資源、定期備份數(shù)據(jù)庫等,對這些任務(wù)可以提前制訂好計劃,到特定時間系統(tǒng)會自動執(zhí)行,這樣可以提高系統(tǒng)的管理效率。為此,Linux操作系統(tǒng)提供了執(zhí)行計劃任務(wù)的命令,本節(jié)將針對計劃任務(wù)命令進(jìn)行詳細(xì)講解。6.5計劃任務(wù)掌握at命令的使用,能夠使用at命令制訂一次性計劃任務(wù)。學(xué)習(xí)目標(biāo)6.5.1at命令at命令用于執(zhí)行一次性計劃任務(wù),一般用于滿足臨時性工作需求。at命令的基本格式如下所示。at選項參數(shù)基本格式6.5.1at命令at命令常用選項如表。6.5.1at命令選項說明-l查看計劃任務(wù)。at-l功能與atq命令相同-f從文件中讀取任務(wù)-d刪除計劃任務(wù),參數(shù)為任務(wù)編號。at–d功能與atrm命令相同at命令的參數(shù)通常為時間和日期,at命令允許使用各種格式的時間和日期,下面介紹幾種比較常用的時間和日期格式。123允許使用hh:mm:ss的格式指定當(dāng)天時間。如果該時間已經(jīng)過去,則在第二天的這個時間執(zhí)行。允許使用12小時計時制,但要在時間后面加AM、PM指定是上午還是下午。允許使用midnight、noon、teatime(一般為下午4點)等比較模糊的詞語指定時間。6.5.1at命令45允許使用相對計時法指定時間,指定格式為time+counttime_units,time表示時間,time_units為時間單元,count為時間單元的數(shù)量。6允許使用today、tomorrow指定日期,如5:00PMtoday,表示今天下午5點,如果該時間已經(jīng)過去,則在第二天的這個時間執(zhí)行。允許使用time
monthday、timemm/dd/yy、timedd.mm.yy的格式指定日期。需要注意的是,日期在時間后面。案例6-9:制訂計劃任務(wù),在18點重啟http服務(wù)。[root@localhostchapter06]#at18:00 warning:commandswillbeexecutedusing/bin/shatThuDec1218:00:002024at>systemctlrestarthttpd at><EOT> job1atThuDec1218:00:002024 制定計劃任務(wù)6.5.1at命令重啟http服務(wù)按Ctrl+d快捷鍵退出交互模式顯示任務(wù)信息案例6-10:在用戶itheima的工作目錄下編輯job文件,寫入echo"helloworld">at.txt,制訂計劃任務(wù),執(zhí)行job文件中的任務(wù)。[root@localhostchapter06]#vimjobecho"helloworld">at.txt[root@localhostchapter06]#ls job[root@localhostchapter06]#at-fjob15:00 warning:commandswillbeexecutedusing/bin/shjob4atThuDec1215:00:002024[root@localhostchapter06]#at–l 1ThuDec1218:00:002024aroot4ThuDec1215:00:002024aroot 編輯job文件6.5.1at命令查看是否生成job文件制訂計劃任務(wù)查看所有計劃任務(wù)案例6-11:制訂計劃任務(wù),明天凌晨備份data文件中的數(shù)據(jù)到/usr/local/bank文件中。[root@localhostchapter06]#at00:00tomorrow warning:commandswillbeexecutedusing/bin/shatFriDec1300:00:002024at>cpdata/usr/local/bank at><EOT>job6atFriDec1300:00:002024 計劃任務(wù)時間6.5.1at命令備份數(shù)據(jù)掌握crontab命令的使用,能夠使用crontab命令制訂周期性計劃任務(wù)。學(xué)習(xí)目標(biāo)6.5.2crontab命令at命令只能執(zhí)行一次性的計劃任務(wù),如果想周期性地重復(fù)執(zhí)行某個任務(wù),可以使用crontab命令。使用crontab命令制訂計劃任務(wù)時,通常將任務(wù)命令寫在一個文件中,這個任務(wù)文件叫作crontab文件。使用crontab命令加載這個文件,到指定時間系統(tǒng)會自動執(zhí)行文件中的命令。6.5.2crontab命令crontab命令的基本格式如下所示。crontab選項參數(shù)基本格式6.5.2crontab命令crontab命令常用選項如表。6.5.2crontab命令選項說明-e編輯crontab文件-l查看當(dāng)前的計劃任務(wù)-r刪除計劃任務(wù)-u編輯其他用戶的計劃任務(wù),通常需要root權(quán)限crontab命令的計劃任務(wù)也需要指定時間日期與任務(wù)命令,但相比at命令,crontab命令的任務(wù)格式更為復(fù)雜,其格式如下所示。分時日月星期任務(wù)命令基本格式6.5.2crontab命令crontab命令任務(wù)格式各參數(shù)字段的含義如表。6.5.2crontab命令字段含義分0~59的整數(shù)時0~23的整數(shù)日1~31的整數(shù)月1~12的整數(shù)星期0~7的整數(shù),0與7均表示星期日任務(wù)命令任務(wù)要執(zhí)行的命令或程序腳本crontab命令的用法與at類似,因此理解起來也比較容易,但是在制訂crontab計劃任務(wù)時,有以下幾點需要注意。123如果有些時間和日期字段沒有設(shè)置,需要使用“*”符號占位。如果一個字段設(shè)置多個值,多個值之間使用“,”分隔。如果crontab文件中有多個計劃任務(wù),則一行只能寫一個計劃任務(wù)。在編寫crontab文件時,可以使用“#”符號編寫注釋,方便后期閱讀。45計劃任務(wù)中的“日”字段不能與“星期”字段同時使用,以免發(fā)生沖突。6計劃任務(wù)中的命令必須是絕對路徑。計劃任務(wù)中的“分”字段必須有數(shù)值,不能為空
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 養(yǎng)老院老人家庭關(guān)懷制度
- 2025-2030農(nóng)業(yè)競爭態(tài)勢行業(yè)市場深度調(diào)研及發(fā)展趨勢與投資前景預(yù)測研究報告
- 2025-2030農(nóng)業(yè)現(xiàn)代產(chǎn)業(yè)發(fā)展模式構(gòu)建及投資動態(tài)監(jiān)測分析
- 2025-2030農(nóng)業(yè)機(jī)械產(chǎn)業(yè)化技術(shù)研究發(fā)展現(xiàn)狀規(guī)劃分析報告
- 2025-2030農(nóng)業(yè)無人機(jī)服務(wù)行業(yè)市場現(xiàn)狀供需分析及投資評估規(guī)劃分析研究報告
- 2025-2030全球智能家居能源管理系統(tǒng)行業(yè)市場現(xiàn)狀競爭分析及投資機(jī)會規(guī)劃研究報告
- 農(nóng)業(yè)公司財務(wù)制度
- 辦公室員工培訓(xùn)課程設(shè)計制度
- 《種子的傳播》教案
- 解決問題的教學(xué)教學(xué)教案
- 2026年1月浙江省高考(首考)英語聽力試題(含答案)
- 委內(nèi)瑞拉變局的背后
- 2025至2030供水產(chǎn)業(yè)行業(yè)項目調(diào)研及市場前景預(yù)測評估報告
- GB/T 11418-1989搪瓷耐熱性測試方法
- FZ/T 50047-2019聚酰亞胺纖維耐熱、耐紫外光輻射及耐酸性能試驗方法
- 市政道路施工總進(jìn)度計劃表
- (更新版)國家開放大學(xué)電大《機(jī)械制造基礎(chǔ)》機(jī)考網(wǎng)考題庫和答案
- 新部編版小學(xué)三年級上冊道德與法治期末復(fù)習(xí)課件
- 2023年新疆文化旅游投資集團(tuán)有限公司招聘筆試模擬試題及答案解析
- 《城市規(guī)劃原理》復(fù)習(xí)考試題庫(含答案)
- aw4.4工作站中文操作指南
評論
0/150
提交評論