Rumah  >  Artikel  >  Operasi dan penyelenggaraan  >  Tiga perkara mengejutkan yang boleh anda lakukan dengan systemd

Tiga perkara mengejutkan yang boleh anda lakukan dengan systemd

WBOY
WBOYke hadapan
2023-06-09 15:38:151139semak imbas

三件可以用 systemd 做的令人惊讶的事情

Ini bukan sahaja tentang membuat komputer anda but lebih cepat.

Apabila systemd mula-mula keluar, terdapat banyak berita tentang cara ia boleh mempercepatkan masa but. Ciri ini menarik minat kebanyakan orang (kurang begitu kepada mereka yang tidak but semula), jadi dalam banyak cara, itulah reputasinya sehingga kini. Walaupun systemd memainkan peranan dalam memulakan perkhidmatan secara selari semasa proses but, ia melakukan lebih daripada itu. Berikut adalah tiga perkara yang anda mungkin tidak sedar systemd boleh lakukan, tetapi anda harus memanfaatkannya.

1. Permudahkan Linux ps

Jika anda pernah menggunakan ​​ps​​, atau pun hanya perintah ​​top​​, maka anda akan tahu bahawa komputer anda sentiasa berjalan data Beratus-ratus proses. Kadangkala, ini hanyalah maklumat yang anda perlukan untuk memahami perkara yang dilakukan oleh komputer anda atau penggunanya. Pada masa lain, perkara yang anda perlukan ialah gambaran keseluruhan umum. Perintah

​systemd-cgtop​​ menyediakan paparan ringkas tentang beban komputer berdasarkan jadual tugas kumpulan kawalan kumpulan. ​​Kumpulan kawalan​​ adalah penting untuk Linux moden dan pada asasnya merupakan struktur sokongan asas untuk bekas dan Kubernetes (sebab itu pengkomputeran awan boleh berskala), tetapi ia juga merupakan struktur yang berguna pada komputer rumah. Sebagai contoh, daripada output ​​systemd-cgtop​​ anda boleh melihat beban pada proses pengguna, bukannya proses sistem:

Control Group Proc+ %CPU MemoryInput/s Output/s
/ 1835.0 1.6G 0B 3.0M
user.slice42.8 1.1G 0B 174.7K
user.slice/user-1000.slice42.8 968.2M 0B 174.7K
system.slice 652.2 1.5G 0B 2.8M

Anda juga boleh melihat proses ruang pengguna anda sahaja, atau melihat kedua-dua proses ruang pengguna dan benang Kernel .

Ini sama sekali bukan pengganti ​​top​​ atau ​​ps​​, melainkan perspektif unik yang berbeza pada sistem anda. Ia boleh menjadi kritikal apabila menjalankan bekas kerana bekas menggunakan kumpulan kawalan.

2. Tugas berjadual Linux

​Cron​​ ialah komponen klasik Linux. Anda menggunakan Cron apabila anda ingin menjadualkan sesuatu berlaku secara tetap. Ia boleh dipercayai dan disepadukan ke dalam sistem anda dengan agak baik.

Masalahnya, Cron tidak faham bahawa sesetengah komputer dimatikan. Jika anda mempunyai tugas cron yang dijadualkan pada tengah malam, tetapi anda menutup komputer anda pada 23:59 setiap hari, tugas cron anda tidak akan berjalan. Cron tidak mempunyai sebarang alat untuk mengesan kerja yang terlepas semalaman.

Sebagai jawapan kepada soalan ini, terdapat soalan yang bagus ​​Anacron​​, tetapi ia tidak sepadu seperti Cron. Untuk menjalankan Anacron, anda perlu melakukan banyak persediaan.

Pilihan kedua ialah pemasa sistem. Seperti Cron, ia terbina dalam dan sedia untuk digunakan. Anda perlu menulis fail unit, yang pastinya lebih banyak kerja daripada entri Crontab satu baris, tetapi ia juga agak mudah. Sebagai contoh, berikut ialah fail unit yang menjalankan skrip sandaran hipotesis 30 minit selepas but, tetapi hanya sekali sehari. Ini memastikan komputer saya disandarkan dan menghalangnya daripada mencuba membuat sandaran lebih daripada sekali sehari.

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

Sudah tentu, anda juga boleh campur tangan dan menggesa tugas untuk dijalankan. Terima kasih kepada arahan ​​OnUnitActiveSec​​, systemd tidak akan cuba menjalankan kerja yang anda aktifkan secara manual.

3、运行 Linux 容器

容器使启动一个复杂的服务变得非常容易。你可以在短短几分钟内运行一个 ​​Mattermost​​ 或 Discourse 服务器。在某些情况下,困难的部分是在你运行容器后管理和监控它们。Podman 使得管理它们变得容易,但是用什么来管理 Podman 呢?嗯,​​你可以使用 systemd​​。

Podman 有一个内置的命令来生成单元文件,这样你的容器就可以被 systemd 管理和监控:

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

然后你所要做的就是启动服务:

$ systemctl --user start pod-example_pod.service

和其他服务一样,systemd 确保你的容器荚在任何情况下都能运行。它记录问题,你可以用 ​​journalctl​​ 和其他重要的日志来查看,你也可以用 ​​systemd-cgtop​​ 在控制组中监控它的活动。

它不是 ​​Kubernetes 平台​​,但对于一两个容器来说,你只需要在可靠和可预测的基础上提供服务,Podman 和 systemd 是一对很棒的组合。

下载 systemd 电子书

systemd 的内容还有很多,你可以从作者 ​​David Both​​ 的新书《​​systemd 实用指南​​》中了解基础知识,以及很多实用的技巧。

Atas ialah kandungan terperinci Tiga perkara mengejutkan yang boleh anda lakukan dengan systemd. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:51cto.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam