Nešto rijetko pođe po zlu s Linuxom, ali to ne znači da je operativni sustav imun na probleme. S vremena na vrijeme instalirat ću novu uslugu ili aplikaciju, a zatim je započeti s naredbom:
sudo systemctl početno ime
Gdje je ime naziv aplikacije ili usluge.
Također: prvih 5 naredbi Linuxa koji bi svaki novi korisnik trebao naučiti
Bilo je slučajeva kada usluga odbija početi ili raditi pravilno. Kad se to dogodi, gdje se okrećeš? Uvijek možete provjeriti datoteke dnevnika (obično najbolje mjesto za pokretanje) ili se obratiti drugoj naredbi koja je pratitelj Systemctl. Ta naredba je journalctl.
A journalctl Naredba upita SystemD Journal i navodi sadržaj časopisa koji bi mogao uključivati uvid u to zašto se određena aplikacija ili usluga ne izvode ispravno. Često, kad pokušate započeti uslugu s Systemctlako usluga ne započne pravilno (ili uopće), vidjet ćete prijedlog u izlazu za korištenje journalctl naredba da sazna što se dogodilo.
Dopustite mi da vam pokažem kako koristiti ovu naredbu, tako da ne morate biti u mraku zašto stvari ne idu kako je planirano.
Sadržaj objave
Kako koristiti Journalctl
Što će vam trebati: Jedino što vam treba za ovaj zadatak je Linux distribucija koja koristi SystemD, što je većina glavnih distribucija.
Prvo što biste trebali pokušati je pokrenuti journalctl Bez ikakvih opcija, što je jednostavno:
Pokažite više
journalctl
Ono što ćete vidjeti je čitav izlaz časopisa SystemD. Iz tog izlaza možete pronaći informacije koje će vam pomoći u rješavanju problema.
Kad sam vodio naredbu, bilo je samo 41 retka izlaza. Vidio sam slučajeve u kojima je bilo stotina redaka u izlazu, što je korištenje naredbe bez argumenata ili opcija pomalo korisnih.
Također: 10 Linux aplikacija koje instaliram na svaki novi stroj (i zašto biste trebali i vi)
Srećom, možete filtrirati puno te buke.
Na primjer, SSH ima problema s početkom. Da biste riješili ovaj problem, mogli biste pokrenuti naredbu:
Pokažite više
Systemctl -u ssh
U ovom slučaju, -u stoji za jedinicaili određena SystemD jedinica (razmislite “servis”).
Također: Kako stvoriti točke vraćanja sustava na Linuxu s TimesHiftom – i zašto biste trebali
Izlaz gornje naredbe mogao bi izgledati ovako:
12. siječnja 09:55:42 Pop-OS SystemD[1]: Pokretanje OpenBSD Server Shell Server …
12. siječnja 09:55:42 POP-OS SSHD[3424]: Slušanje poslužitelja na 0,0.0.0 priključka 22.
12. siječnja 09:55:42 POP-OS SSHD[3424]: Slušanje poslužitelja na :: priključak 22.
12. siječnja 09:55:42 Pop-OS SystemD[1]: Počelo OpenBSD Server Shell Server.
15. siječnja 09:39:26 POP-OS SSHD[659190]: Nevažeći korisnik Jackwallen iz 192.168.1.77 Port 55040
15. siječnja 09:39:29 POP-OS SSHD[659190]: PAM_UNIX (SSHD: AUTH): Provjerite prolaz; korisnik nepoznat
15. siječnja 09:39:29 POP-OS SSHD[659190]: PAM_UNIX (SSHD: AUTH): neuspjeh provjere autentičnosti; logName = uid = 0 euid = 0 tty = ssh ruser = rhost = 192.168.1.77
15. siječnja 09:39:31 POP-OS SSHD[659190]: Neuspjela lozinka za nevaljani korisnik Jackwallen iz 192.168.1.77 Port 55040 SSH2
15. siječnja 09:39:33 POP-OS SSHD[659190]: Veza zatvorena od strane nevaljanog korisnika Jackwallen 192.168.1.77 Port 55040 [preauth]
15. siječnja 09:39:39 POP-OS SSHD[659232]: Prihvaćena lozinka za Jack iz 192.168.1.77 Port 55049 SSH2
15. siječnja 09:39:39 POP-OS SSHD[659232]: pam_unix (sshd: sesija): sesija otvorena za korisnički priključak (uid = 1000) od (uid = 0)
Kao što vidite, u mom slučaju SSH trči kako se i očekivalo, ali došlo je do neuspjelog pokušaja prijave (što je bilo zato što sam zaboravio dodati valjano korisničko ime prilikom prijave iz svog iMaca).
Postoji još bolji način za rješavanje usluge journalctl. Recimo da SSH radi, ali ima problema s prihvaćanjem veza (ili samo o bilo kojem drugom pitanju koje bi se moglo dogoditi). Možete “repirati” izlaz (koji ispisuje informacije u stvarnom vremenu kao što se događa), poput toga:
Pokažite više
Journalccl -xefU ssh
Ova naredba ne samo da će vam reći startup i pokretanje statusa usluge, već će navesti najnovije unose prijavljene u časopis za tu uslugu. Za zatvaranje koristite prečac Ctrl+C tipkovnicu. Za one koji žele znati, evo objašnjenja mogućnosti:
- X – Dodajte objašnjenje u linije dnevnika iz kataloga poruke
- E – Odmah skočite na kraj časopisa unutar podrazumijevanog alata za dojavljivanje
- F – Slijedite (kontinuirano ispisuju nove unose dok su zabilježeni)
- U – jedinica (kao što je gore objašnjeno)
Također je moguće pogledati određeni vremenski raspon s journalctl. Recimo da želite pogledati samo unose prijavljene od 20. siječnja u 10:00. Naredba bi bila:
Pokažite više
Journalctl–Since “2025-01-20 10:00:00”
Vidjeli biste svaki unos prijavljen od 10:00 u trenutno vrijeme.
Također: kako Linux optimizirati (i uštedjeti vrijeme) sa stacerom
Možete učiniti taj raspon još konkretnijim. Recite da želite pogledati unose prijavljene od 10:00 do 10:10. Naredba bi bila:
Journalctl–Since “2025-01-20 10:00:00” –Intl “2025-01-20 10:05:00”
I to, prijatelji moji, je način na koji možete koristiti journalctl za rješavanje problema s pokretanjem aplikacija na Linuxu.