Hur man ställer in datum och tid med Unix Epoch Format



Prova Vårt Instrument För Att Eliminera Problem

Unix-epoken började klockan 00:00:00 UTC torsdagen den 1 januari 1970. Ända sedan dess har Unix-system följt tiden genom att räkna antalet sekunder sedan det datumet inträffade. Unix och de olika implementeringarna som Linux och FreeBSD håller reda på tiden som ett bokstavligt antal sekunder sedan dess minus antalet språngsekunder som har ägt rum.



Det är inte ett koncept som många användare eller till och med programmerare kommer i kontakt med dagligen. Ändå, om du vet hur många sekunder som har gått sedan början av Unix-epoken, kan du faktiskt ställa in tiden på ditt system för det. Du måste arbeta med ett kommandoradsgränssnitt, så håll antingen Ctrl, Alt och F1-F6 för att komma till en virtuell terminal eller tryck Ctrl + Alt + T för att få en grafisk. Du kan också söka efter ordterminalen på Ubuntu Dash eller starta den från applikationerna och sedan Systemverktyg-menyn i LXDE, KDE och utanför Whisker-menyn i Xfce4.



Metod 1: Använd GNU-datumverktyget för att ställa in Unix Epoch-tid

Det är en bra idé att se till att datumsträngen är korrekt formaterad innan du försöker ställa in klockan på den. Typ datum -d '@ 1501959335' och tryck på enter för att konvertera antalet sekunder från 1 januari 1970 till ett format som föredras av människor. Du kan ersätta 1501959335 med valfri Unix-tidsstämpel. Vi använde det helt enkelt som ett exempel eftersom det var den aktuella Unix-epoken vid ett tillfälle när vi skrev den här artikeln.



Du bör få ett vanligt datum och tid tillbaka samt tidszonen för din lokala maskin. När du är säker på att du har saker rätt kan du använda kommandot datum -s '@ 1501959335' för att ställa klockan till den här tidsstämpeln. Om du får ett felmeddelande som säger ”datum: kan inte ställa in datum: operation inte tillåten” följt av aktuellt datum, försökte du köra det som en användare. Typ sudo date -s '@ 1501959335' och tryck på Enter för att ställa in klockan. Kom ihåg att använda en giltig Unix-tidsstämpel istället för siffrorna som vi presenterade i vårt exempel.

Naturligtvis kommer du att bli ombedd ditt lösenord innan du fortsätter att få root-åtkomst.



Metod 2: Använda BSD-datumprogramvara

Om du använder något av de olika * BSD-operativsystemen, måste du faktiskt använda en annan syntax när det gäller datumkommandot. Detta gäller för användare av FreeBSD, OpenBSD, NetBSD och eventuellt även implementeringar av Darwin. Användare av Linux och andra Unix-liknande operativsystem

För att konvertera sekunderna sedan epoken började den 1 januari 1970, skriv datum -r 1501959335 vid uppmaningen och tryck enter. Återigen kan du ersätta 1501959335 med valfri Unix-tidsstämpel.

Skriv datum “$ (datum -r 1501959335 +’% y% m% d% H% M.% S ’)” och tryck enter för att ställa in datum sedan epoken började. Det är lite mer komplicerat i dessa BSD-baserade operativsystem eftersom du måste berätta det nya formatet för datum och tid, men i slutändan fungerar det i slutändan. Du behöver mer än troligt root-åtkomst för att ställa in det nya datumet.

Metod 3: Visa aktuell Unix-tid

Om du vill se den aktuella tidsstämpeln för Unix-epoken, kör sedan datum +% s från kommandoraden. Detta matar ut den aktuella tiden som antalet sekunder sedan Unix-epoken började. Du får tillbaka den snabbt på nästa rad.

Du kan faktiskt också få en grafisk representation om du föredrar det. Typ xclock -d -tid vid kommandoraden och tryck enter. Förutsatt att du har de klassiska XFree86-apparna installerade får du ett fönster som flyter över din terminal som ger dig det aktuella antalet sekunder.

3 minuter läst