




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、Ubuntu Linux 操作系統(tǒng)(第 2 版)(微課版)工業(yè)和信息化“十三五”人才培養(yǎng)規(guī)劃教材第6章 系統(tǒng)高級(jí)管理能力CAPACITY要求了解什么是Linux進(jìn)程,學(xué)會(huì)查看和管理Linux進(jìn)程。理解systemd的概念和體系,掌握使用systemd管控系統(tǒng)和服務(wù)的用法。了解進(jìn)程的調(diào)度啟動(dòng)方法,學(xué)會(huì)使用Ubuntu自動(dòng)化任務(wù)工具。熟悉Linux系統(tǒng)日志和systemd日志的配置和使用。使用systemd管控系統(tǒng)和服務(wù)Linux進(jìn)程管理進(jìn)程的調(diào)度啟動(dòng)自動(dòng)化任務(wù)配置系統(tǒng)日志管理6.1 Linux進(jìn)程管理Linux進(jìn)程概述進(jìn)程概念進(jìn)程由程序產(chǎn)生,是動(dòng)態(tài)的,是一個(gè)運(yùn)行著的、要占用系統(tǒng)運(yùn)行資源的程序。系
2、統(tǒng)給每一個(gè)進(jìn)程都分配了一個(gè)唯一的進(jìn)程標(biāo)識(shí)符(進(jìn)程號(hào),簡(jiǎn)稱(chēng)PID)。進(jìn)程分類(lèi)交互進(jìn)程:在Shell下通過(guò)執(zhí)行程序所產(chǎn)生的進(jìn)程,可在前臺(tái)或后臺(tái)運(yùn)行。批處理進(jìn)程:一個(gè)進(jìn)程序列。守護(hù)進(jìn)程:又稱(chēng)監(jiān)控進(jìn)程,是指那些在后臺(tái)運(yùn)行,并且沒(méi)有控制終端的進(jìn)程,通??梢噪S著操作系統(tǒng)的啟動(dòng)而運(yùn)行,也可將其稱(chēng)為服務(wù)。6.1 Linux進(jìn)程管理查看進(jìn)程進(jìn)程概念PID:進(jìn)程號(hào)(Process ID),用于唯一標(biāo)識(shí)進(jìn)程。PPID:父進(jìn)程號(hào)(Parent PID),創(chuàng)建某進(jìn)程的上一個(gè)進(jìn)程的進(jìn)程號(hào)。USER:?jiǎn)?dòng)某個(gè)進(jìn)程的用戶ID和該用戶所屬組的ID。STAT:進(jìn)程狀態(tài),頤和進(jìn)程可能處于多種狀態(tài),如運(yùn)行、等待、停止、睡眠、僵死等。
3、PRIORITY:進(jìn)程的優(yōu)先級(jí)。源占用:包括CPU、內(nèi)存等資源的占用信息。6.1 Linux進(jìn)程管理查看進(jìn)程ps命令ps命令是最基本的進(jìn)程查看命令,可確定有哪些進(jìn)程正在運(yùn)行、進(jìn)程的狀態(tài)、進(jìn)程是否結(jié)束、進(jìn)程是否僵死、哪些進(jìn)程占用了過(guò)多的資源等等。ps命令最常用的還是監(jiān)控后臺(tái)進(jìn)程的工作情況。最常用的是使用aux選項(xiàng)組合。top命令top命令用于動(dòng)態(tài)顯示系統(tǒng)進(jìn)程信息,可以每隔一短時(shí)間刷新當(dāng)前狀態(tài),還提供一組交互式命令用于進(jìn)程的監(jiān)控。6.1 Linux進(jìn)程管理Linux進(jìn)程管理啟動(dòng)進(jìn)程手動(dòng)啟動(dòng):在Shell命令行下輸入要執(zhí)行的程序來(lái)啟動(dòng)一個(gè)進(jìn)程。其啟動(dòng)方式又分為前臺(tái)啟動(dòng)和后臺(tái)啟動(dòng),默認(rèn)為前臺(tái)啟動(dòng)。若在
4、要執(zhí)行的命令后面跟隨一個(gè)符號(hào)“&”,則為后臺(tái)啟動(dòng)。調(diào)度啟動(dòng):事先設(shè)置好程序要運(yùn)行的時(shí)間,當(dāng)?shù)搅祟A(yù)設(shè)的時(shí)間后,系統(tǒng)自動(dòng)啟動(dòng)程序。進(jìn)程的掛起及恢復(fù)在運(yùn)行進(jìn)程過(guò)程中使用+組合鍵可掛起當(dāng)前的前臺(tái)作業(yè),將進(jìn)程轉(zhuǎn)到后臺(tái)?;謴?fù)進(jìn)程執(zhí)行有兩種選擇,一種是用fg命令將掛起的作業(yè)放回到前臺(tái)執(zhí)行;另一種是用bg命令將掛起的作業(yè)放到后臺(tái)執(zhí)行6.1 Linux進(jìn)程管理Linux進(jìn)程管理結(jié)束進(jìn)程的運(yùn)行使用組合鍵+中斷前臺(tái)進(jìn)程。使用kill命令結(jié)束后臺(tái)進(jìn)程: kill -s,-信號(hào)|-p -a 進(jìn)程號(hào).管理進(jìn)程的優(yōu)先級(jí)進(jìn)程優(yōu)先級(jí)可以用nice值表示,范圍一般為-2019,-20為最高優(yōu)先級(jí),19為最低優(yōu)先級(jí),系統(tǒng)進(jìn)程默認(rèn)的
5、優(yōu)先級(jí)值為0。命令nice用于設(shè)置進(jìn)程的優(yōu)先級(jí): nice -n 命令 參數(shù) . 命令renice用于調(diào)整進(jìn)程的優(yōu)先級(jí): renice 優(yōu)先級(jí) PID 進(jìn)程組 用戶名稱(chēng)或ID使用systemd管控系統(tǒng)和服務(wù)Linux進(jìn)程管理進(jìn)程的調(diào)度啟動(dòng)自動(dòng)化任務(wù)配置系統(tǒng)日志管理6.2 使用systemd管控系統(tǒng)和服務(wù)systemd與系統(tǒng)初始化SysVinit初始化方式基于運(yùn)行級(jí)別(Runlevel)。使用/etc/inittab文件配置文件。優(yōu)點(diǎn)sysVinit初始化方式原理簡(jiǎn)單,易于理解??梢砸揽縎hell腳本控制服務(wù)啟動(dòng),服務(wù)腳本編寫(xiě)比較容易。不足sysVinit啟動(dòng)是線性、順序的,啟動(dòng)過(guò)程比較慢。6.
6、2 使用systemd管控系統(tǒng)和服務(wù)systemd與系統(tǒng)初始化Upstart初始化方式并行啟動(dòng)服務(wù)的機(jī)制。systemd系統(tǒng)初始化使用systemd取代init,作為系統(tǒng)第一個(gè)進(jìn)程。systemd不通過(guò)init腳本來(lái)啟動(dòng)服務(wù),而是采用一種并行啟動(dòng)服務(wù)的機(jī)制。特點(diǎn)所有服務(wù)和任務(wù)都是由事件驅(qū)動(dòng)的,Upstart是并行的。可充分利用計(jì)算機(jī)多核的特點(diǎn),大大減少啟動(dòng)所需的時(shí)間,提高系統(tǒng)啟動(dòng)速度。Ubuntu從6.10版開(kāi)始支持Upstart方式,同時(shí)也使用SysVinit。UpStart主要實(shí)現(xiàn)了服務(wù)的即插即用。6.2 使用systemd管控系統(tǒng)和服務(wù)systemd與系統(tǒng)初始化systemd初始化方式并
7、行啟動(dòng)服務(wù)的機(jī)制systemd系統(tǒng)初始化使用systemd取代init,作為系統(tǒng)第一個(gè)進(jìn)程。systemd不通過(guò)init腳本來(lái)啟動(dòng)服務(wù),而是采用一種并行啟動(dòng)服務(wù)的機(jī)制。特點(diǎn)systemd使用單元文件替換之前的初始化腳本。systemd使用啟動(dòng)目標(biāo)(Target)替代運(yùn)行級(jí)別。systemd使用類(lèi)似緩沖池的辦法解決服務(wù)之間的依賴(lài)性。提高了并行啟動(dòng)能力,極大地縮短了系統(tǒng)啟動(dòng)時(shí)間。systemd與sysVinit兼容,支持并行化任務(wù),按需啟動(dòng)守護(hù)進(jìn)程。Ubuntu從15.04版開(kāi)始支持systemd。6.2 使用systemd管控系統(tǒng)和服務(wù)systemd的主要概念和術(shù)語(yǔ)核心概念:?jiǎn)卧╱nit)單元
8、類(lèi)型配置文件擴(kuò)展名說(shuō)明service(服務(wù)).service定義系統(tǒng)服務(wù)。這是最常用的一類(lèi),與早期Linux版本/etc/init.d/目錄下的服務(wù)腳本的作用相同device(設(shè)備).device定義內(nèi)核識(shí)別的設(shè)備。每一個(gè)使用udev規(guī)則標(biāo)記的設(shè)備都會(huì)在systemd中作為一個(gè)設(shè)備單元出現(xiàn)mount(掛載).mount定義文件系統(tǒng)掛載點(diǎn)automount(自動(dòng)掛載).automount用于文件系統(tǒng)自動(dòng)掛載設(shè)備6.2 使用systemd管控系統(tǒng)和服務(wù)systemd的主要概念和術(shù)語(yǔ)核心概念:?jiǎn)卧╱nit)單元類(lèi)型配置文件擴(kuò)展名說(shuō)明socket(套接字).socket定義系統(tǒng)和互聯(lián)網(wǎng)中的一個(gè)套接字
9、,標(biāo)識(shí)進(jìn)程間通信用到的socket文件swap(交換空間).swap標(biāo)識(shí)管理用于交換空間的設(shè)備path(路徑).path定義文件系統(tǒng)中的文件或目錄swap(交換空間).swap標(biāo)識(shí)管理用于交換空間的設(shè)備timer(定時(shí)器).timer用來(lái)定時(shí)觸發(fā)用戶定義的操作,以取代atd、crond等傳統(tǒng)的定時(shí)服務(wù)target(目標(biāo)).target用于對(duì)其他單元進(jìn)行邏輯分組,主要用于模擬實(shí)現(xiàn)運(yùn)行級(jí)別的概念snapshot(快照).snapshot快照是一組配置單元,保存了系統(tǒng)當(dāng)前的運(yùn)行狀態(tài)6.2 使用systemd管控系統(tǒng)和服務(wù)systemd的主要概念和術(shù)語(yǔ)依賴(lài)關(guān)系在單元文件中使用關(guān)鍵字來(lái)描述單元之間的依賴(lài)
10、關(guān)系。systemd事務(wù)systemd能保證事務(wù)完整性,旨在保證多個(gè)依賴(lài)的單元之間沒(méi)有循環(huán)引用。systemd將單元之間的依賴(lài)關(guān)系分為兩種:required(強(qiáng)依賴(lài))和wants(弱依賴(lài))。6.2 使用systemd管控系統(tǒng)和服務(wù)systemd的主要概念和術(shù)語(yǔ)啟動(dòng)目標(biāo)(Target)和運(yùn)行級(jí)別(Runlevel)傳統(tǒng)運(yùn)行級(jí)別systemd目標(biāo)說(shuō)明0runlevel0.target, poweroff.target關(guān)閉系統(tǒng)。不要將默認(rèn)目標(biāo)設(shè)置為此目標(biāo)1, s, singlerunlevel1.target, rescue.target單用戶(Single)模式。以root身份開(kāi)啟一個(gè)虛擬控制臺(tái),
11、主要用于管理員維護(hù)系統(tǒng)2, 3, 4runlevel2.target,runlevel3.target, runlevel4.target,multi-user.target多用戶模式,非圖形化。用戶可以通過(guò)多個(gè)控制臺(tái)或網(wǎng)絡(luò)登錄5runlevel5.target, graphical.target多用戶模式,圖形化界面6runlevel6.target, reboot.target重啟系統(tǒng)。不要將默認(rèn)目標(biāo)設(shè)置為此目標(biāo)Emergencyemergency.target緊急Shell6.2 使用systemd管控系統(tǒng)和服務(wù)systemd單元文件單元文件格式UnitDescription=CUPS
12、SchedulerDocumentation=man:cupsd(8)ServiceExecStart=/usr/sbin/cupsd -lType=simpleRestart=alwaysInstallAlso=cups.socket cups.pathWantedBy=printer.target6.2 使用systemd管控系統(tǒng)和服務(wù)systemd單元文件編輯單元文件(1)在/etc/systemd/system/目錄創(chuàng)建單元文件。(2)修改該文件權(quán)限,確保只能被root用戶編輯。(3)在該文件中添加以下配置信息。UnitDescription=The Apache HTTP Serve
13、rAfter=network.target remote-fs.target nss-lookup.targetServiceType=forkingEnvironment=APACHE_STARTED_BY_SYSTEMD=trueExecStart=/usr/local/apache2/bin/apachectl startExecStop=/usr/local/apache2/bin/apachectl stopExecReload=/usr/local/apache2/bin/apachectl gracefulPrivateTmp=trueRestart=on-abortInstal
14、lWantedBy=multi-user.target(4)通知systemd該單元已添加,并開(kāi)啟該服務(wù)。6.2 使用systemd管控系統(tǒng)和服務(wù)systemd單元文件單元文件與啟動(dòng)目標(biāo)傳統(tǒng)的方案:服務(wù)啟動(dòng)腳本對(duì)應(yīng)運(yùn)行級(jí)別。systemd的方案:?jiǎn)卧募?duì)應(yīng)啟動(dòng)目標(biāo)。將基本的單元文件存放在/usr/lib/systemd/system/目錄下,不同的啟動(dòng)目標(biāo)要裝載的服務(wù)等單元的配置文件則以軟鏈接方式映射到/etc/systemd/system/目錄下對(duì)應(yīng)的啟動(dòng)目標(biāo)子目錄下,如multi-user.target裝載的單元的配置文件鏈接到/etc/systemd/system/multi-user
15、.target.wants/目錄下。在/etc/systemd/system目錄下有多個(gè)*.wants子目錄,放在該子目錄下的單元文件等同于在Unit節(jié)中的Wants字段,即該單元啟動(dòng)時(shí)還需啟動(dòng)這些單元。6.2 使用systemd管控系統(tǒng)和服務(wù)systemd單元文件理解target單元文件啟動(dòng)目標(biāo)使用target單元文件描述,target單位文件擴(kuò)展名是.target,target單元文件的唯一目的是將其他systemd單元文件通過(guò)一連串的依賴(lài)關(guān)系組織在一起。以graphical.target單元文件為例進(jìn)行分析。graphical.target單元用于啟動(dòng)一個(gè)圖形會(huì)話,systemd會(huì)啟動(dòng)像
16、GNOME顯示管理(gdm.service)、賬戶服務(wù)(accounts-daemon)這樣的服務(wù),并且會(huì)激活multi-user.target單元。而multi-user.target又會(huì)激活basic.target,basic.target又會(huì)激活sysinit.target,從而嵌套組合了多個(gè)目標(biāo),完成復(fù)雜的啟動(dòng)管理。6.2 使用systemd管控系統(tǒng)和服務(wù)systemctl命令systemd最重要的命令行工具是systemctl 。systemctl主要負(fù)責(zé)控制systemd系統(tǒng)和服務(wù)管理器,基本語(yǔ)法:不帶任何選項(xiàng)和參數(shù)運(yùn)行systemctl命令將列出系統(tǒng)已啟動(dòng)(裝載)的所有單元。執(zhí)行
17、不帶參數(shù)的systemctl status命令將顯示系統(tǒng)當(dāng)前狀態(tài)。systemctl命令的部分選項(xiàng)提供有長(zhǎng)格式和短格式,如-all和-a。systemd還可以控制遠(yuǎn)程系統(tǒng),管理遠(yuǎn)程系統(tǒng)主要是通過(guò)SSH協(xié)議。systemctl 選項(xiàng) 命令 單元文件名6.2 使用systemd管控系統(tǒng)和服務(wù)systemd單元管理單元的活動(dòng)狀態(tài)高級(jí)表示形式 active(活動(dòng)的):表示正在運(yùn)行 inactive(不活動(dòng)的):表示沒(méi)有運(yùn)行 failed(失敗的):表示運(yùn)行不成功6.2 使用systemd管控系統(tǒng)和服務(wù)systemd單元管理單元的活動(dòng)狀態(tài)低級(jí)表示形式 running:表示一次或多次持續(xù)地運(yùn)行。 exit
18、ed:表示成功完成一次性配置,僅運(yùn)行一次就正常結(jié)束,目前已沒(méi)有該進(jìn)程運(yùn)行。 waiting:表示正在運(yùn)行中,不過(guò)還需再等待其他事件才能繼續(xù)處理。 dead:表示沒(méi)有運(yùn)行。 failed:表示運(yùn)行失敗。 mounted:表示成功掛載(文件系統(tǒng))。 plugged:表示已接入(設(shè)備)。6.2 使用systemd管控系統(tǒng)和服務(wù)systemd單元管理查看單元使用systemctl list-units命令列出所有已裝載(Loaded)的單元。加上選項(xiàng)-all列出所有單元,包括沒(méi)有找到配置文件的或者運(yùn)行失敗的。加上選項(xiàng)-failed列出所有運(yùn)行失敗的單元。加上選項(xiàng)-state列出特定狀態(tài)的單元加上選項(xiàng)-
19、type列出特定類(lèi)型的單元。顯示某單元的所有底層參數(shù)。6.2 使用systemd管控系統(tǒng)和服務(wù)systemd單元管理查看單元使用systemctl list-units命令列出所有已裝載(Loaded)的單元。加上選項(xiàng)-all列出所有單元,包括沒(méi)有找到配置文件的或者運(yùn)行失敗的。加上選項(xiàng)-failed列出所有運(yùn)行失敗的單元。加上選項(xiàng)-state列出特定狀態(tài)的單元加上選項(xiàng)-type列出特定類(lèi)型的單元。顯示某單元的所有底層參數(shù)。查看單元的狀態(tài)systemctl提供status命令用于查看特定單元的狀態(tài)。6.2 使用systemd管控系統(tǒng)和服務(wù)systemd單元管理單元狀態(tài)轉(zhuǎn)換操作start:?jiǎn)?dòng)單元
20、使之運(yùn)行。stop:停止單元運(yùn)行。restart:重新啟動(dòng)單元使之運(yùn)行。reload:重載單元的配置文件而不重啟單元。try-restart:如果單元正在運(yùn)行就重啟單元。reload-or-restart:如有可能重載單元的配置文件,不然,重啟單元。reload-or-try-restart:如有可能重載單元的配置文件,不然,若正在運(yùn)行則重啟單元。kill:殺死單元,以結(jié)束單元的運(yùn)行進(jìn)程。6.2 使用systemd管控系統(tǒng)和服務(wù)systemd單元管理列出單元文件(可用單元)systemctl list-unit-files列出系統(tǒng)中所有已安裝的單元文件,即所有可用的單元。加上選項(xiàng)-type或-
21、t列出特定類(lèi)型的可用單元。查看單元文件狀態(tài)systemctl status命令在顯示特定單元的狀態(tài)時(shí)會(huì)顯示對(duì)應(yīng)的單元文件的狀態(tài)。systemctl is-enabled命令專(zhuān)門(mén)用于檢查指定的單元文件是否允許開(kāi)機(jī)自動(dòng)啟動(dòng)。單元文件狀態(tài)轉(zhuǎn)換操作enable為單元文件建立啟動(dòng)連接,設(shè)置單元開(kāi)機(jī)自動(dòng)啟動(dòng)。disable刪除單元文件的啟動(dòng)連接,設(shè)置單元開(kāi)機(jī)不自動(dòng)啟動(dòng)。mask將單元文件連接到/dev/null,禁止設(shè)置單元開(kāi)機(jī)自動(dòng)啟動(dòng)。unmask允許設(shè)置單元開(kāi)機(jī)自動(dòng)啟動(dòng)。6.2 使用systemd管控系統(tǒng)和服務(wù)systemd單元管理管理單元依賴(lài)關(guān)系使用systemctl list-dependenci
22、es命令列出指定單元的所有依賴(lài)。單元文件的狀態(tài)enabled:已建立啟動(dòng)連接,將隨系統(tǒng)啟動(dòng)而啟動(dòng),即開(kāi)機(jī)時(shí)自動(dòng)啟動(dòng)。disabled:沒(méi)建立啟動(dòng)連接,即開(kāi)機(jī)時(shí)不會(huì)自動(dòng)啟動(dòng)。static:該單元文件沒(méi)有Install部分(無(wú)法執(zhí)行),只能作為其他單元文件的依賴(lài)。masked:該單元文件被禁止建立啟動(dòng)連接,無(wú)論如何都不能啟動(dòng)。generated:該單元文件是由單元生成器動(dòng)態(tài)生成的。6.2 使用systemd管控系統(tǒng)和服務(wù)systemd單元管理管理單元依賴(lài)關(guān)系使用systemctl list-dependencies命令列出指定單元的所有依賴(lài)。單元文件的狀態(tài)enabled:已建立啟動(dòng)連接,將隨系統(tǒng)啟
23、動(dòng)而啟動(dòng),即開(kāi)機(jī)時(shí)自動(dòng)啟動(dòng)。disabled:沒(méi)建立啟動(dòng)連接,即開(kāi)機(jī)時(shí)不會(huì)自動(dòng)啟動(dòng)。static:該單元文件沒(méi)有Install部分(無(wú)法執(zhí)行),只能作為其他單元文件的依賴(lài)。masked:該單元文件被禁止建立啟動(dòng)連接,無(wú)論如何都不能啟動(dòng)。generated:該單元文件是由單元生成器動(dòng)態(tài)生成的。6.2 使用systemd管控系統(tǒng)和服務(wù)systemd單元管理編輯單元文件systemctl提供專(zhuān)門(mén)的命令edit來(lái)打開(kāi)文本編輯器編輯指定的單元文件。修改配置文件要讓systemd重新裝載配置文件。 systemctl daemon-reload重新啟動(dòng),使修改生效。 systemctl restart 單
24、元文件6.2 使用systemd管控系統(tǒng)和服務(wù)使用systemd管理Linux服務(wù)Linux服務(wù)狀態(tài)管理功能傳統(tǒng)service命令systemd命令啟動(dòng)服務(wù)service 服務(wù)名 startsystemctl start 服務(wù)名.service停止服務(wù)service 服務(wù)名 stopsystemctl stop 服務(wù)名.service重啟服務(wù)service 服務(wù)名 restartsystemctl restart 服務(wù)名.service查看服務(wù)運(yùn)行狀態(tài)service 服務(wù)名 statussystemctl status 服務(wù)名.service重載服務(wù)的配置文件而不重啟服務(wù)service 服務(wù)名
25、 reloadsystemctl reload 服務(wù)名.service條件式重啟服務(wù)service 服務(wù)名 condrestartsystemctl tryrestart 服務(wù)名.service重載或重啟服務(wù)systemctl reload-or-restart 服務(wù)名.service重載或條件式重啟systemctl reload-or-try-restart 服務(wù)名.service查看服務(wù)是否激活(正在 運(yùn)行)systemctl is-active 服務(wù)名.service查看服務(wù)啟動(dòng)是否失敗systemctl is- failed 服務(wù)名.service殺死服務(wù)systemctl kill
26、 服務(wù)名.service6.2 使用systemd管控系統(tǒng)和服務(wù)使用systemd管理Linux服務(wù)配置服務(wù)啟動(dòng)狀態(tài)(服務(wù)開(kāi)機(jī)自動(dòng)啟動(dòng))功能systemd命令查看所有可用的服務(wù)systemctl list-unit-files -type=service 查看某服務(wù)是否能夠開(kāi)機(jī)自啟動(dòng)systemctl is-enabled 服務(wù)名.service設(shè)置服務(wù)開(kāi)機(jī)自動(dòng)啟動(dòng)systemctl enable 服務(wù)名.service禁止服務(wù)開(kāi)機(jī)自動(dòng)啟動(dòng)systemctl disable 服務(wù)名.service禁止某服務(wù)設(shè)定為開(kāi)機(jī)自啟systemctl mask 服務(wù)名.service取消禁止某服務(wù)設(shè)定為開(kāi)
27、機(jī)自啟systemctl unmask 服務(wù)名.service加入自定義服務(wù)(1)創(chuàng)建相應(yīng)的單元文件(2)systemctl daemon-reload刪除服務(wù)(1)systemctl stop 服務(wù)名.service(2)刪除相應(yīng)的單元文件6.2 使用systemd管控系統(tǒng)和服務(wù)使用systemd管理Linux服務(wù)創(chuàng)建自定義服務(wù)服務(wù)單元文件的重點(diǎn)是Service節(jié),常用的字段(指令)Type:配置單元進(jìn)程啟動(dòng)時(shí)的類(lèi)型,影響執(zhí)行和關(guān)聯(lián)選項(xiàng)的功能。ExecStart:指定啟動(dòng)單元的命令或者腳本,ExecStartPre和ExecStartPost節(jié)指定在ExecStart之前或者之后用戶自定義執(zhí)
28、行的腳本。ExecStop:指定單元停止時(shí)執(zhí)行的命令或者腳本。ExecReload:指定單元重新裝載是執(zhí)行的命令或者腳本。Restart:如果設(shè)置為always,服務(wù)重啟時(shí)進(jìn)程會(huì)退出,會(huì)通過(guò)systemctl命令執(zhí)行清除并重啟的操作。RemainAfterExit:如果設(shè)置為true,服務(wù)會(huì)被認(rèn)為是在活動(dòng)狀態(tài)。6.2 使用systemd管控系統(tǒng)和服務(wù)管理系統(tǒng)啟動(dòng)過(guò)程Linux啟動(dòng)過(guò)程(1)BIOS啟動(dòng)。(2)啟動(dòng)引導(dǎo)加載程序。(3)裝載內(nèi)核。(4)系統(tǒng)初始化。6.2 使用systemd管控系統(tǒng)和服務(wù)管理系統(tǒng)啟動(dòng)過(guò)程檢測(cè)和分析systemd啟動(dòng)過(guò)程執(zhí)行systemd-analyze time命令
29、查看啟動(dòng)耗時(shí),即內(nèi)核空間和用戶空間啟動(dòng)時(shí)所花的時(shí)間。執(zhí)行systemd-analyze blame命令查看正在運(yùn)行的每個(gè)單元的啟動(dòng)耗時(shí),并按照時(shí)長(zhǎng)排序。執(zhí)行systemd-analyze verify命令檢查所有系統(tǒng)單元是否有語(yǔ)法錯(cuò)誤。執(zhí)行systemd-analyze critical-chain命令分析啟動(dòng)時(shí)的關(guān)鍵鏈,查看嚴(yán)重消耗時(shí)間的單元列表。6.2 使用systemd管控系統(tǒng)和服務(wù)管理系統(tǒng)啟動(dòng)過(guò)程管理啟動(dòng)目標(biāo)查看當(dāng)前的啟動(dòng)目標(biāo)。切換到不同的目標(biāo)。 systemctl isolate 目標(biāo)名.target管理默認(rèn)啟動(dòng)目標(biāo)。進(jìn)入系統(tǒng)救援模式和緊急模式。 sudo systemctl res
30、cue sudo systemctl emergency使用systemd管控系統(tǒng)和服務(wù)Linux進(jìn)程管理進(jìn)程的調(diào)度啟動(dòng)自動(dòng)化任務(wù)配置系統(tǒng)日志管理6.3 進(jìn)程的調(diào)度啟動(dòng)自動(dòng)化任務(wù)配置使用Cron服務(wù)安排周期性任務(wù)使用配置文件/etc/crontab 定義系統(tǒng)級(jí)周期性任務(wù) Cron主要使用配置文件/etc/crontab來(lái)管理系統(tǒng)級(jí)任務(wù)調(diào)度。該配置文件共有4行任務(wù)定義,每行格式 分鐘(m) 小時(shí)(h) 日期(dom) 月份(mon) 星期(dow) 用戶身份(user) 要執(zhí)行的命令(command)/etc/crontab文件中并沒(méi)有定義要執(zhí)行的具體作業(yè),而是在最后一個(gè)字段中設(shè)置了可執(zhí)行文件目
31、錄,/etc/cron.hourly、/etc/cron.daily、/etc/cron.weekly和/etc/cron.monthly分別表示每小時(shí)、每日、每周和每月執(zhí)行要執(zhí)行任務(wù)的目錄。Cron 調(diào)用 run-parts 命令,定時(shí)運(yùn)行相應(yīng)目錄下的所有腳本。 6.3 進(jìn)程的調(diào)度啟動(dòng)自動(dòng)化任務(wù)配置使用Cron服務(wù)安排周期性任務(wù)在etc/cron.d目錄中定義個(gè)別的周期性任務(wù) 要為計(jì)劃任務(wù)指定其他時(shí)間點(diǎn),則可以考慮在/etc/cron.d/目錄中添加自己的配置文件,格式同/etc/crontab,文件名可以自定義。使用 crontab 命令為普通用戶定制任務(wù)調(diào)度 普通用戶只能使用cronta
32、b命令創(chuàng)建和維護(hù)自己的cron配置文件 crontab -u 用戶名 -e | -l | -r 6.3 進(jìn)程的調(diào)度啟動(dòng)自動(dòng)化任務(wù)配置使用anacron喚醒停機(jī)期間的調(diào)度任務(wù)配置 anacron 使用 systemd 定時(shí)器安排 anacron 運(yùn)行。使用 Cron 服務(wù)安排 anacron 運(yùn)行。anacron 根據(jù)/etc/anacrontab 配置文件執(zhí)行每天、每周和每月的調(diào)度任務(wù)。每天、每周和每月定時(shí)更新時(shí)間戳。6.3 進(jìn)程的調(diào)度啟動(dòng)自動(dòng)化任務(wù)配置使用anacron喚醒停機(jī)期間的調(diào)度任務(wù)anacron 與 Cron 結(jié)合 Ubuntu 通過(guò) anacron 來(lái)解決每天、每周和每月要定期啟
33、動(dòng)的調(diào)度任務(wù),執(zhí)行的是某個(gè)周期的任務(wù)調(diào)度。默認(rèn)情況下 systemd 定時(shí)器安排 anacron 每小時(shí)運(yùn)行一次。anacron 根據(jù)/etc/anacrontab 的配置執(zhí)行/etc/cron.daily、/etc/cron.weekly 和/etc/cron.monthly 目錄中的調(diào)度任務(wù)腳本。管理員可以根據(jù)需要將每天、每周和每月要執(zhí)行任務(wù)的腳本放在上述目錄中。 Cron 服務(wù)每分鐘會(huì)讀取/etc/crontab 文件、etc/cron.d/目錄和/var/spool/cron 目錄中的配置信息,執(zhí)行的是精確定時(shí)任務(wù)調(diào)度。管理員可以根據(jù)需要將每小時(shí)要執(zhí)行任務(wù)的腳本放入/etc/cron.
34、hourly 目錄中。 6.3 進(jìn)程的調(diào)度啟動(dòng)自動(dòng)化任務(wù)配置使用at和batch工具安排一次性任務(wù)概述 使用at在指定時(shí)間內(nèi)調(diào)度一次性任務(wù)。batch用于在系統(tǒng)平均載量降到0.8以下時(shí)執(zhí)行一次性的任務(wù)兩個(gè)工具都由at軟件包提供,由at服務(wù)支持。配置at作業(yè)的步驟 (1)在命令行中執(zhí)行at命令進(jìn)入作業(yè)設(shè)置狀態(tài)。(2)出現(xiàn)at提示符,進(jìn)入命令編輯狀態(tài),設(shè)置要執(zhí)行的命令或腳本??芍付ǘ鄺l命令,每輸入一條命令,按鍵。(3)需要結(jié)束時(shí)按+組合鍵退出。(4)可根據(jù)需要執(zhí)行命令atq查看等待運(yùn)行(未執(zhí)行)的作業(yè)。(5)如果at作業(yè)需要取消,可以在atrm命令后跟atq命令輸出的作業(yè)號(hào)來(lái)刪除該at作業(yè)。使用systemd管控系統(tǒng)和服務(wù)Linux進(jìn)程管理進(jìn)程的調(diào)度啟動(dòng)自動(dòng)化任務(wù)配置系統(tǒng)日志管理6.4 系統(tǒng)日志管理配置和使用系統(tǒng)日志配置系統(tǒng)日志 系統(tǒng)日志相關(guān)文件Ubuntu的日志配置文件為/etc/rsyslog.conf。采用rsyslog的Ubuntu將所有的配置文件放置在/etc/rsyslog.d目錄中,默認(rèn)的etc/rsyslog.d/50-default.conf,可以定制該文件來(lái)實(shí)現(xiàn)系統(tǒng)日志的配置
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 湖南省株洲市第十三中學(xué)2024-2025學(xué)年高三下學(xué)期3月模擬考試數(shù)學(xué)試題(解析版)
- 圍手術(shù)期護(hù)理質(zhì)控總結(jié)
- 中國(guó)地理介紹
- 物理-北京市朝陽(yáng)區(qū)2025年高三年級(jí)第二學(xué)期質(zhì)量檢測(cè)一(朝陽(yáng)一模)試題和答案
- 幼兒園午睡健康知識(shí)講座
- 數(shù)學(xué)知識(shí)海洋生物的啟示
- 湖南省郴州市2025屆高三第三次教學(xué)質(zhì)量監(jiān)測(cè)物理試題(含解析)
- 發(fā)票開(kāi)具內(nèi)容培訓(xùn)
- 兒童心理健康教育講座
- 應(yīng)收賬款管理
- 質(zhì)量手冊(cè)(質(zhì)量保證手冊(cè),壓力容器)
- 20210年中考英語(yǔ)復(fù)習(xí):閱讀理解信息歸納摘錄考題匯編(含答案)
- 拒絕早戀主題班會(huì) 課件(34張)2023-2024學(xué)年主題班會(huì)
- 美容美體藝術(shù)專(zhuān)業(yè)人才培養(yǎng)方案(中職)
- 第二單元《認(rèn)識(shí)多位數(shù)》(單元測(cè)試)-2023-2024學(xué)年蘇教版數(shù)學(xué)四年級(jí)下冊(cè)
- 護(hù)工生活護(hù)理及排泄護(hù)理
- 化學(xué)纖維行業(yè)操作人員安全培訓(xùn)要點(diǎn)
- 2016-2023年山西工程職業(yè)學(xué)院高職單招(英語(yǔ)/數(shù)學(xué)/語(yǔ)文)筆試歷年參考題庫(kù)含答案解析
- 離婚協(xié)議書(shū)完整版Word模板下載
- 產(chǎn)房健康宣教幻燈片
- 中醫(yī)男科知識(shí)講座
評(píng)論
0/150
提交評(píng)論