Linux Yöneticisi - systemctl ile Kaynak Yönetimi
systemctlsystemd'yi kontrol etmek için kullanılan yardımcı programdır. systemctl, CentOS yöneticilerine systemd üzerinde aşağıdakiler de dahil olmak üzere çok sayıda işlemi gerçekleştirme yeteneği sağlar:
- Sistem birimlerini yapılandırın
- Sistemin durumunu alın
- Hizmetleri başlatın ve durdurun
- Çalışma zamanı vb. İçin systemd hizmetlerini etkinleştirin / devre dışı bırakın.
Systemctl için komut sözdizimi oldukça basittir, ancak anahtarlar ve seçeneklerle karıştırılabilir. CentOS Linux'u yönetmek için gerekli olan systemctl'nin en temel işlevlerini sunacağız .
Basic systemctl syntax:
systemctl [OPTIONS] COMMAND [NAME]
Systemctl ile kullanılan yaygın komutlar aşağıdadır -
- start
- stop
- restart
- reload
- status
- is-active
- list-units
- enable
- disable
- cat
- show
Systemctl ile başlatma , durdurma , yeniden yükleme , yeniden başlatma , etkinleştirme ve devre dışı bırakma konusunu zaten tartışmıştık . Öyleyse en sık kullanılan diğer komutların üzerinden geçelim.
statü
En basit haliyle durum komutu, sistem durumunu bir bütün olarak görmek için kullanılabilir -
[root@localhost rdc]# systemctl status
● localhost.localdomain
State: running
Jobs: 0 queued
Failed: 0 units
Since: Thu 2017-01-19 19:14:37 EST; 4h 5min ago
CGroup: /
├─1 /usr/lib/systemd/systemd --switched-root --system --deserialize 21
├─user.slice
│ └─user-1002.slice
│ └─session-1.scope
│ ├─2869 gdm-session-worker [pam/gdm-password]
│ ├─2881 /usr/bin/gnome-keyring-daemon --daemonize --login
│ ├─2888 gnome-session --session gnome-classic
│ ├─2895 dbus-launch --sh-syntax --exit-with-session
Yukarıdaki çıktı yoğunlaştırıldı. Gerçek dünyadaki systemctl durumu , yaklaşık 100 satırlık işlem görmüş işlem durumlarını verir.
Güvenlik duvarı hizmetimizin durumunu kontrol etmek istediğimizi varsayalım -
[root@localhost rdc]# systemctl status firewalld
● firewalld.service - firewalld - dynamic firewall daemon
Loaded: loaded (/usr/lib/systemd/system/firewalld.service; enabled; vendor preset: enabled)
Active: active (running) since Thu 2017-01-19 19:14:55 EST; 4h 12min ago
Docs: man:firewalld(1)
Main PID: 825 (firewalld)
CGroup: /system.slice/firewalld.service
└─825 /usr/bin/python -Es /usr/sbin/firewalld --nofork --nopid
Gördüğünüz gibi, güvenlik duvarı hizmetimiz şu anda aktif ve 4 saatten fazladır.
liste birimleri
List-units komutu, belirli bir tipteki tüm birimleri listelememizi sağlar. Systemd tarafından yönetilen soketleri kontrol edelim -
[root@localhost]# systemctl list-units --type=socket
UNIT LOAD ACTIVE SUB DESCRIPTION
avahi-daemon.socket loaded active running Avahi mDNS/DNS-SD Stack Activation Socket
cups.socket loaded active running CUPS Printing Service Sockets
dbus.socket loaded active running D-Bus System Message Bus Socket
dm-event.socket loaded active listening Device-mapper event daemon FIFOs
iscsid.socket loaded active listening Open-iSCSI iscsid Socket
iscsiuio.socket loaded active listening Open-iSCSI iscsiuio Socket
lvm2-lvmetad.socket loaded active running LVM2 metadata daemon socket
lvm2-lvmpolld.socket loaded active listening LVM2 poll daemon socket
rpcbind.socket loaded active listening RPCbind Server Activation Socket
systemd-initctl.socket loaded active listening /dev/initctl Compatibility Named Pipe
systemd-journald.socket loaded active running Journal Socket
systemd-shutdownd.socket loaded active listening Delayed Shutdown Socket
systemd-udevd-control.socket loaded active running udev Control Socket
systemd-udevd-kernel.socket loaded active running udev Kernel Socket
virtlockd.socket loaded active listening Virtual machine lock manager socket
virtlogd.socket loaded active listening Virtual machine log manager socket
Şimdi mevcut çalışan hizmetleri kontrol edelim -
[root@localhost rdc]# systemctl list-units --type=service
UNIT LOAD ACTIVE SUB DESCRIPTION
abrt-ccpp.service loaded active exited Install ABRT coredump hook
abrt-oops.service loaded active running ABRT kernel log watcher
abrt-xorg.service loaded active running ABRT Xorg log watcher
abrtd.service loaded active running ABRT Automated Bug Reporting Tool
accounts-daemon.service loaded active running Accounts Service
alsa-state.service loaded active running Manage Sound Card State (restore and store)
atd.service loaded active running Job spooling tools
auditd.service loaded active running Security Auditing Service
aktif
Bir aktif komutu, bir birimin durum bilgisini dönmek için tasarlanmıştır systemctl komutları bir örneğidir.
[root@localhost rdc]# systemctl is-active ksm.service
active
kedi
cat nadiren kullanılan komutlardan biridir. Kabukta cat kullanmak ve bir birim dosyasının yolunu yazmak yerine systemctl cat kullanın .
[root@localhost]# systemctl cat firewalld
# /usr/lib/systemd/system/firewalld.service
[Unit]
Description=firewalld - dynamic firewall daemon
Before=network.target
Before=libvirtd.service
Before = NetworkManager.service
After=dbus.service
After=polkit.service
Conflicts=iptables.service ip6tables.service ebtables.service ipset.service
Documentation=man:firewalld(1)
[Service]
EnvironmentFile = -/etc/sysconfig/firewalld
ExecStart = /usr/sbin/firewalld --nofork --nopid $FIREWALLD_ARGS
ExecReload = /bin/kill -HUP $MAINPID
# supress to log debug and error output also to /var/log/messages
StandardOutput = null
StandardError = null
Type = dbus
BusName = org.fedoraproject.FirewallD1
[Install]
WantedBy = basic.target
Alias = dbus-org.fedoraproject.FirewallD1.service
[root@localhost]#
Şimdi ikimiz de keşfettiğimize systemd ve systemctl daha ayrıntılı olarak, en kaynakları yönetmek için bunları kullanmasına izin cgroups veya kontrol gruplarına .