LFCA: Išmokite valdyti laiką ir datą Linux sistemoje – 6 dalis


Šis straipsnis yra LFCA serijos 6 dalis. Šioje dalyje susipažinsite su bendromis sistemos administravimo komandomis, skirtomis valdyti laiko ir datos nustatymus Linux sistemoje.

Laikas yra labai svarbus bet kurioje Linux sistemoje. Kelios paslaugos, tokios kaip crontab, anacron, atsarginių kopijų kūrimo ir atkūrimo paslaugos, priklauso nuo tikslaus laiko, kad galėtų atlikti savo užduotis, kaip tikėtasi.

Linux turi 2 tipų laikrodžius:

  • Aparatinės įrangos laikrodis – tai baterijomis maitinamas laikrodis, dar vadinamas CMOS laikrodžiu arba RTC (Real Time Clock). Laikrodis veikia nepriklausomai nuo operacinės sistemos ir veikia net tada, kai sistema yra išjungta, jei yra CMOS baterija.
  • Sistemos laikrodis ( Programinės įrangos laikrodis ) – jis taip pat vadinamas branduolio laikrodžiu. Įkrovos metu sistemos laikrodis inicijuojamas iš aparatinės įrangos laikrodžio ir perima iš ten.

Paprastai tarp dviejų laikrodžių yra toks laiko skirtumas, kad jie palaipsniui nutolsta vienas nuo kito. Prie to pakalbėsime vėliau ir parodysime, kaip galite sinchronizuoti šiuos laikrodžius.

Kol kas pamatysime, kaip galite patikrinti laiką ir datą „Linux“ sistemoje.

Patikrinkite laiką ir datą „Linux“ sistemoje

Yra dvi pagrindinės priemonės, naudojamos laikui ir datai patikrinti Linux sistemoje. Pirmoji yra datos komanda. Be jokių argumentų, pateikiama gana daug parodytos informacijos

date

Friday 26 March 2021 11:15:39 AM IST

Jei norite peržiūrėti datą tik dd-mm-yy laiko formatu, vykdykite komandą:

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

26-03-21

Jei norite tik peržiūrėti dabartinį laiką ir nieko daugiau, naudokite komandą:

date "+%T"

11:17:11

Timedatectl komanda yra nauja priemonė, naudojama šiuolaikinėse Linux sistemose, pvz., Ubuntu 18.04, RHEL 8 ir CentOS 8. Tai pakeitimas datos komandos, kuri buvo svarbi senosiose SysVinit sistemose. Jis gali būti naudojamas užklausai ir laikui reguliuoti Linux sistemoje.

Be jokių parinkčių, komanda timedatectl išspausdina informacijos masyvą, pvz., vietos laiką, UTC laiką, RTC laiką ir laiko juostą.

timedatectl

Kaip nustatyti laiko juostą „Linux“ sistemoje

„Linux“ sistemoje laikas priklauso nuo nustatytos laiko juostos. Norėdami patikrinti laiko juostą, kuri sukonfigūruota jūsų sistemoje, išduokite komandą:

timedatectl | grep Time

Pagal išvestį anksčiau pateiktame fragmente esu Afrika/Nairobis laiko juostoje. Norėdami peržiūrėti galimas laiko juostas, paleiskite komandą:

timedatectl list-timezones

Paspauskite ENTER, kad slinktumėte per visą galimų laiko juostų sąrašą.

Laiko juostos taip pat apibrėžiamos kelyje /usr/share/zoneinfo/, kaip parodyta.

ls /usr/share/zoneinfo/

Yra keletas būdų, kuriais galite konfigūruoti laiko juostą. Naudodami komandą timedatectl, galite nustatyti laiko juostą, pvz., Amerika/Čikaga, naudodami parodytą sintaksę.

timedatectl set-timezone 'America/Chicago'

Kitas būdas nustatyti laiko juostą yra sukurti simbolinę nuorodą iš laiko juostos failo /usr/share/zoneinfo kelyje į /etc/localtime. Pavyzdžiui, norėdami nustatyti vietinę laiko juostą į EST (Rytų standartinis laikas), išduokite komandą:

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

Nustatykite datą ir laiką „Linux“ sistemoje

Jei norite nustatyti laiką tik „Linux“ sistemoje, naudodami formatą HH:MM:SS (valanda: minutė: sekundė ), naudokite toliau pateiktą sintaksę

timedatectl set-time 18:30:45

Jei norite nustatyti datą tik formatu YY-MM-DD (metai: mėnuo: diena), naudokite sintaksę:

timedatectl set-time 20201020

Norėdami nustatyti datą ir laiką, paleiskite:

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

PASTABA: tokiu būdu rankiniu būdu nustatyti laiko ir datos nerekomenduojama, nes gali būti, kad sukonfigūruosite netikslius laiko ir datos nustatymus. Tiesą sakant, pagal numatytuosius nustatymus yra įjungtas automatinis laiko sinchronizavimas, kad neleistų rankiniu būdu nustatyti laiko ir datos nustatymų.

Labiausiai rekomenduojamas būdas nustatyti laiką yra nurodyti laiko juostą, kurioje esate, kaip parodyta anksčiau, arba įjungti automatinį laiko sinchronizavimą su nuotoliniu NTP serveriu.

Nustatykite automatinį laiko sinchronizavimą naudodami NTP serverį

NTP yra trumpinys iš Network Time Protocol, kuris yra interneto protokolas, naudojamas automatiškai sinchronizuoti sistemos laikrodį su telkiniu internetiniuose NTP serveriuose.

Naudodami komandą timedatectl galite nustatyti automatinį laiko sinchronizavimą taip:

timedatectl set-ntp true

Norėdami išjungti automatinį NTP laiko sinchronizavimą, vykdykite:

timedatectl set-ntp false
Išvada

Komandos timedatectl ir date yra patogūs komandų eilutės įrankiai, kurie gali padėti patikrinti ir koreguoti laiką sistemoje „Linux“.