LFCA: Naučite upravljati vremenom i datumom u Linuxu - 6. dio


Ovaj je članak 6. dio LFCA serije, ovdje u ovom dijelu upoznat ćete se s općim naredbama administracije sustava za upravljanje postavkama vremena i datuma u Linux sustavu.

Vrijeme je presudno u bilo kojem Linux sustavu. Više usluga kao što su crontab, anacron, sigurnosne kopije i usluge vraćanja ovise o točnom vremenu za izvršavanje zadataka prema očekivanjima.

Linux ima 2 vrste satova:

  • Hardverski sat - ovo je sat na baterije koji se naziva i CMOS sat ili RTC (sat u stvarnom vremenu). Sat radi neovisno od operativnog sustava i nastavlja raditi čak i kad je sustav isključen pod uvjetom da je prisutna CMOS baterija.
  • Sistemski sat (softverski sat) - To se naziva i satom jezgre. U vrijeme pokretanja sistemski sat se inicijalizira s hardverskog sata i preuzima odatle.

Obično postoji vremenska razlika između ta dva sata koja se postupno udaljava jedan od drugog. Kasnije ćemo doći do toga i pokazati vam kako možete sinkronizirati te satove.

Za sada ćemo vidjeti kako možete provjeriti vrijeme i datum na Linux sustavu.

Provjerite vrijeme i datum na Linux sustavu

Postoje dva glavna alata koji se koriste za provjeru vremena i datuma na Linux sustavu. Prva je naredba datum. Bez ikakvih argumenata pruža poprilično prikazanih podataka

$ date

Friday 26 March 2021 11:15:39 AM IST

Za prikaz datuma samo u formatu vremena dd-mm-yy, izvršite naredbu:

$ date +"%d-%m-%y"

26-03-21

Ako samo želite pregledati samo trenutno vrijeme i ništa drugo, upotrijebite naredbu:

$ date "+%T"

11:17:11

Naredba timedatectl novi je uslužni program koji se koristi u modernim Linux sustavima kao što su Ubuntu 18.04, RHEL 8 i CentOS 8. Zamjena je naredbe date koja je bila istaknuta u starim sustavima SysVinit. Može se koristiti za postavljanje upita i podešavanje vremena na Linux sustavu.

Bez ikakvih opcija, naredba timedatectl ispisuje niz podataka kao što su lokalno vrijeme, UTC vrijeme, RTC vrijeme i vremenska zona kako bismo ih spomenuli.

$ timedatectl

Kako postaviti vremensku zonu na Linux sustavu

Na Linux sustavu vrijeme ovisi o vremenskoj zoni koja je postavljena. Da biste provjerili vremensku zonu koja je konfigurirana na vašem sustavu, izdajte naredbu:

$ timedatectl | grep Time

Iz rezultata u gornjem isječku nalazim se u vremenskoj zoni Afrika/Nairobi. Da biste pogledali dostupne vremenske zone, pokrenite naredbu:

$ timedatectl list-timezones

Pritisnite ENTER za pomicanje kroz čitav popis mogućih vremenskih zona koje su dostupne.

Vremenske zone su također definirane u/usr/share/zoneinfo/path kako je prikazano.

$ ls /usr/share/zoneinfo/

Postoji nekoliko načina na koje možete konfigurirati vremensku zonu. Pomoću naredbe timedatectl možete postaviti vremensku zonu, na primjer, na America/Chicago, koristeći prikazanu sintaksu.

$ timedatectl set-timezone 'America/Chicago'

Drugi način na koji možete postaviti vremensku zonu je stvaranje simboličke veze iz datoteke vremenske zone u/usr/share/zoneinfo stazi do/etc/localtime. Na primjer, da biste postavili lokalnu vremensku zonu na EST (Istočno standardno vrijeme), izdajte naredbu:

$ sudo ln -sf /usr/share/zoneinfo/EST /etc/localtime

Postavite datum i vrijeme na Linux sustavu

Da biste postavili vrijeme samo na Linux sustavu u formatu HH: MM: SS (Hour: Minute: Second), upotrijebite donju sintaksu

$ timedatectl set-time 18:30:45

Da biste datum postavili samo u formatu GG-MM-DD (Godina: Mjesec: Dan), upotrijebite sintaksu:

$ timedatectl set-time 20201020

Da biste postavili i datum i vrijeme, pokrenite:

$ timedatectl set-time '2020-10-20 18:30:45'

NAPOMENA: Ručno postavljanje vremena i datuma na ovaj način ne preporučuje se jer ćete vjerojatno konfigurirati netočne postavke vremena i datuma. U stvari, prema zadanim postavkama uključena je automatska sinkronizacija vremena kako biste spriječili ručno postavljanje vremena i datuma.

Naj preporučljiviji način postavljanja vremena je određivanjem vremenske zone u kojoj se nalazite, kao što je ranije prikazano, ili uključivanjem automatske sinkronizacije vremena s udaljenim NTP poslužiteljem.

Postavite automatsku sinkronizaciju vremena pomoću NTP poslužitelja

NTP je skraćenica od Network Time Protocol, što je internetski protokol koji se koristi za automatsku sinkronizaciju vremenskog sata sustava s bazenom na mrežnim NTP poslužiteljima.

Pomoću naredbe timedatectl možete postaviti automatsku sinkronizaciju vremena kako slijedi:

$ timedatectl set-ntp true

Da biste onemogućili automatsku NTP sinkronizaciju vremena, izvršite:

$ timedatectl set-ntp false

Naredbe timedatectl i date praktični su alati naredbenog retka koji vam mogu pomoći da provjerite i prilagodite svoje vrijeme na Linuxu.