自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

三件可以用 systemd 做的令人驚訝的事情

運(yùn)維
雖然 systemd 確實(shí)是在啟動(dòng)過程中并行啟動(dòng)服務(wù)起到了作用,但它的作用遠(yuǎn)不止于此。以下是你可能沒有意識(shí)到 systemd 可以做的三件事,但你應(yīng)該好好利用。

它不僅僅是為了讓你的電腦啟動(dòng)得更快。

當(dāng) systemd 剛問世時(shí),有很多關(guān)于它能加快啟動(dòng)時(shí)間的消息。這項(xiàng)功能對(duì)大多數(shù)人都有吸引力(對(duì)那些不重啟的人來(lái)說(shuō)就不那么重要了),所以在很多方面,這也是它今天仍然擁有的聲譽(yù)。雖然 systemd 確實(shí)是在啟動(dòng)過程中并行啟動(dòng)服務(wù)起到了作用,但它的作用遠(yuǎn)不止于此。以下是你可能沒有意識(shí)到 systemd 可以做的三件事,但你應(yīng)該好好利用。

1、簡(jiǎn)化 Linux ps

如果你曾經(jīng)使用過 ??ps??,甚至只是 ??top?? 命令,那么你就會(huì)知道你的電腦一直都在運(yùn)行數(shù)百個(gè)進(jìn)程。有時(shí),這正是你需要的信息,以便了解你的計(jì)算機(jī)或其用戶在做什么。其他時(shí)候,你真正需要的是一個(gè)總體的概覽。

??systemd-cgtop?? 命令提供了一個(gè)基于控制組cgroup任務(wù)安排的計(jì)算機(jī)負(fù)載的簡(jiǎn)單視圖。??控制組?? 對(duì)現(xiàn)代 Linux 很重要,基本上是容器和 Kubernetes 的底層支持結(jié)構(gòu)(這也是云計(jì)算可以擴(kuò)展的原因),但它們也是家庭電腦上的有用結(jié)構(gòu)。例如,從 ??systemd-cgtop?? 的輸出中,你可以看到用戶進(jìn)程的負(fù)載,而不是系統(tǒng)進(jìn)程:

Control Group               Proc+   %CPU   Memory  Input/s Output/s
/ 183 5.0 1.6G 0B 3.0M
user.slice 4 2.8 1.1G 0B 174.7K
user.slice/user-1000.slice 4 2.8 968.2M 0B 174.7K
system.slice 65 2.2 1.5G 0B 2.8M

你也可以只查看你的用戶空間進(jìn)程,或者查看用戶空間進(jìn)程和內(nèi)核線程。

這絕不是對(duì) ??top?? 或 ??ps?? 的替代,而是從一個(gè)不同的、獨(dú)特的角度來(lái)觀察你的系統(tǒng)。在運(yùn)行容器時(shí),它可能是至關(guān)重要的,因?yàn)槿萜魇褂每刂平M。

2、Linux 定時(shí)任務(wù)

??Cron?? 是 Linux 的一個(gè)經(jīng)典組件。當(dāng)你想安排一些事情定期發(fā)生時(shí),你會(huì)使用 Cron。它很可靠,而且相當(dāng)好地集成到你的系統(tǒng)中。

問題是,Cron 并不了解有些計(jì)算機(jī)會(huì)被關(guān)閉。如果你有一個(gè)安排在午夜的 Cron 任務(wù),但你每天在 23:59 關(guān)閉你的電腦,那么你的 Cron 任務(wù)就永遠(yuǎn)不會(huì)運(yùn)行。Cron 沒有任何工具可以檢測(cè)到一夜之間錯(cuò)過了工作。

作為對(duì)這個(gè)問題的回答,有一個(gè)很好的 ??Anacron??,但它不像 Cron 那樣集成的好。要讓 Anacron 運(yùn)行,你需要做很多設(shè)置。

第二個(gè)選擇是 systemd 計(jì)時(shí)器。和 Cron 一樣,它也是內(nèi)置的,可以隨時(shí)使用。你需要寫一個(gè)單元文件,這肯定比單行的 Crontab 條目多,但也很簡(jiǎn)單。例如,這里有一個(gè)單元文件,在開機(jī) 30 分鐘后運(yùn)行一個(gè)假想的備份腳本,但每天只運(yùn)行一次。這可以確保我的電腦得到備份,并防止它每天嘗試備份超過一次。

[Unit]
Description=Backup
Requires=myBackup.service
[Timer]
OnBootSec=30min
OnUnitActiveSec=1d
[Install]
WantedBy=timers.target

當(dāng)然,你也可以干預(yù)并提示運(yùn)行一個(gè)任務(wù)。多虧了 ??OnUnitActiveSec?? 指令,systemd 不會(huì)試圖運(yùn)行你手動(dòng)激活的作業(yè)。

3、運(yùn)行 Linux 容器

容器使啟動(dòng)一個(gè)復(fù)雜的服務(wù)變得非常容易。你可以在短短幾分鐘內(nèi)運(yùn)行一個(gè) ??Mattermost?? 或 Discourse 服務(wù)器。在某些情況下,困難的部分是在你運(yùn)行容器后管理和監(jiān)控它們。Podman 使得管理它們變得容易,但是用什么來(lái)管理 Podman 呢?嗯,??你可以使用 systemd??。

Podman 有一個(gè)內(nèi)置的命令來(lái)生成單元文件,這樣你的容器就可以被 systemd 管理和監(jiān)控:

$ podman generate systemd --new --files --name example_pod

然后你所要做的就是啟動(dòng)服務(wù):

$ systemctl --user start pod-example_pod.service

和其他服務(wù)一樣,systemd 確保你的容器莢在任何情況下都能運(yùn)行。它記錄問題,你可以用 ??journalctl?? 和其他重要的日志來(lái)查看,你也可以用 ??systemd-cgtop?? 在控制組中監(jiān)控它的活動(dòng)。

它不是 ??Kubernetes 平臺(tái)??,但對(duì)于一兩個(gè)容器來(lái)說(shuō),你只需要在可靠和可預(yù)測(cè)的基礎(chǔ)上提供服務(wù),Podman 和 systemd 是一對(duì)很棒的組合。

下載 systemd 電子書

systemd 的內(nèi)容還有很多,你可以從作者 ??David Both?? 的新書《??systemd 實(shí)用指南??》中了解基礎(chǔ)知識(shí),以及很多實(shí)用的技巧。

責(zé)任編輯:龐桂玉 來(lái)源: Linux中國(guó)
相關(guān)推薦

2018-06-04 08:52:13

LinuxIP工具

2012-04-10 10:01:10

Ubuntu安裝事項(xiàng)

2012-07-25 14:06:26

MacOS X Mounta

2020-06-04 11:49:46

JavaScript開發(fā)代碼

2024-05-31 08:00:59

2011-05-20 08:53:07

HTML 5

2012-04-17 16:15:52

Apple

2023-06-22 19:49:23

2020-11-13 06:18:07

JupyterPython數(shù)據(jù)分析

2023-02-15 14:07:03

2020-02-27 21:37:33

物聯(lián)網(wǎng)IOT物聯(lián)網(wǎng)應(yīng)用

2025-02-17 11:10:49

2010-08-30 09:21:20

2015-05-13 09:21:27

開源項(xiàng)目管理項(xiàng)目管理

2020-08-06 18:11:15

SaaS

2024-03-12 08:44:56

WebWorkerTypeScript語(yǔ)法

2011-06-08 14:12:58

2013-12-05 17:07:29

openSUSEopenSUSE 13安裝

2020-07-16 08:32:16

JavaScript語(yǔ)言語(yǔ)句

2020-03-05 17:50:00

智慧社區(qū)智能
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)