Pereiti prie pagrindinio turinio

Kaip naudoti systemctl ir journalctl VPS serveryje?

Atnaujinta šiandien

Šioje pamokoje aptarsime, kaip naudoti vienus iš pagrindinių įrankių "Linux" sistemos galimų problemų nustatymui ir šalinimui (angl. troubleshooting). Tai systemctl bei journalctl įrankiai.

  • systemctl - skirtas servisų valdymui (start, stop, restart, status);

  • journalctl - skirtas sistemos išrašų (logų) peržiūrėjai ir analizei.

Dažniausiai naudojamos komandos:

systemctl status <serviso_pavadinimas>

systemctl restart <serviso_pavadinimas>

systemctl enable <serviso_pavadinimas>

journalctl -u <serviso_pavadinimas>

journalctl -fjournalctl -xeu <serviso_pavadinimas>

Detaliau apie minėtus įrankius, valdymą bei komandas:

1. Kas yra systemctl?

systemctl yra systemd dalis, skirta servisams:

  • paleisti;

  • sustabdyti;

  • perkrauti;

  • tikrinti būseną.

1.1 Serviso būsenos tikrinimas

Komanda:

systemctl status <serviso_pavadinimas>

Pavyzdžiui:

systemctl status httpd 
systemctl status apache2
systemctl status mariadb
systemctl status sshd

Matysite:

  • active (running) - servisas veikia

  • inactive - sustabdytas

  • failed - klaida

1.2 Serviso paleidimas

Start komanda:

systemctl start <serviso_pavadinimas>

Pavyzdžiui:

systemctl start apache2
systemctl start mariadb
systemctl start sshd

1.3 Serviso sustabdymas

Stop komanda:

systemctl stop <serviso_pavadinimas>

Pavyzdžiui:

systemctl stop apache2
systemctl stop mariadb
systemctl stop httpd

1.4 Serviso perkrovimas

Restart komanda:

systemctl restart <serviso_pavadinimas>

Pavyzdžiui:

systemctl restart apache2
systemctl restart mariadb
systemctl restart sshd

Komanda (restart) dažniausiai naudojama po vienokių ar kitokių konfigūracijos pakeitimų.

1.5 Tik konfigūracijos perkrovimas

Komanda:

systemctl reload <serviso_pavadinimas>

Pavyzdžiui:

systemctl reload apache2
systemctl reload mariadb

1.6 Automatinis paleidimas su serveriu

Komanda įjungimui (enable):

systemctl enable <serviso_pavadinimas>

Išjungimo komanda (disable):

systemctl disable apache2

1.7 Servisų sąrašo peržiūra

systemctl list-units --type=service

Pavyzdžiui:

UNIT		LOAD	 ACTIVE	 SUB	DESCRIPTION
httpd.service loaded active running The Apache HTTP Server
mariadb.service loaded active running MariaDB 10.6.17 database server
memcached.service loaded active running Memcached
pure-ftpd.service loaded active running Pure-FTPd FTP server
sshd.service loaded active running OpenSSH server daemon

2. Kas yra journalctl?

journalctl naudojamas peržiūrėti:

  • sisteminius išrašus (logus);

  • servisų klaidas;

  • boot informaciją.

2.1 Visi išrašų peržiūra

Komanda:

journalctl

(komanda gali parodyti ypač didelį kiekį įvairiausių servisų išrašų)

2.2 Išrašų peržiūra realiu laiku

Komanda:

journalctl -f

(analogiška kaip naudojant komandą: tail -f)

2.3 Konkretaus serviso išrašai

Komanda:

journalctl -u httpd

Pavyzdžiui:

journalctl -u httpd
journalctl -u apache2
journalctl -u mariadb

2.4 Naujausi išrašai

Komanda:

journalctl -u nginx -n 50

(pvz.: naudojant reikšmę 50 - matysite paskutinius 50 išrašų).

2.5 Tik klaidų išrašas

Komanda:

journalctl -p err -b

2.6 Išrašai nuo paskutinio serverio paleidimo

journalctl -b

2.7 Išrašai pagal laiką

Komanda:

journalctl --since "2026-01-01"

(matysite visus išrašus nuo 2026-01-01)

arba komanda peržiūrėti prieš valandą fiksuotus išrašus:

journalctl --since "1 hour ago"

Komandų pavyzdžiai

Jei servisas neveikia

Patikriname statusą, pvz.:

systemctl status mariadb

Jei matote failed, peržiūrėkite klaidas su komanda:

journalctl -u mariadb -n 50

Apache nepasileidžia

Patikriname statusą:

systemctl status httpd

Peržiūrime išsamius išrašus:

journalctl -xeu httpd

Po konfigūracijos pakeitimų

systemctl restart nginx

Jei klaida, peržiūrime išsamius išrašus:

journalctl -xeu nginx

Ar gavote atsakymą į savo klausimą?