|
|
Zeile 92: |
Zeile 92: |
|
| |
|
|
| |
|
| == Zeitzone setzen ==
| |
| Die Zeitzone wird durch die Anweisung tzconfig gesetzt:
| |
| tzconfig
| |
|
| |
|
| Die Anweisung erfordert in der Regel Administratorrechte und wird ohne Parameter aufgerufen. Die Zeitzone wird dann von der Anweisung abgefragt.
| |
|
| |
| == Uhrzeit anzeigen ==
| |
| date +'%Y%m%d %H%M%S' # ergibt z. B. 20060905 093432
| |
| # allgemein
| |
| date +FORMAT # FORMAT ist ein String, wie er von strftime(3) interpretiert wird
| |
|
| |
| == System-Uhr vs. Hardware-Uhr ==
| |
| Es ist wichtig zu wissen, dass es zwei Uhren gibt:
| |
| * die Hardware-Uhr: das ist ein Uhrenschaltkreis auf dem Mainboard, der wie eine Quarz-Uhr funktioniert.
| |
| * die Betriebssystem-Uhr: das ist eine durch Interrupts angetriebene und nicht gerade sonderlich genaue Software-Uhr.
| |
|
| |
| Nachdem man mit date die Software-Uhr gestellt hat, sollte man diese Zeit auch in die Hardware-Uhr übertragen:
| |
| # system clock -> hardware clock
| |
| hwclock --systohc
| |
|
| |
| Ebenso kann man die Systemuhr nach der genaueren Hardware-Uhr neu stellen lassen:
| |
| # hardware clock -> system clock
| |
| hwclock --hctosys
| |
|
| |
| Die Zusatzoption -u zu hwclock sollte man dann verwenden, wenn man die Hardware-Uhr auf [https://de.wikipedia.org/wiki/Koordinierte_Weltzeit UTC] (in der Praxis gleichbedeutend mit [https://de.wikipedia.org/wiki/GMT GMT]) laufen hat, was sehr empfehlenswert ist.
| |
|
| |
| Wenn in /etc/adjtime steht:
| |
| 0.667509 1059309076 0.000000
| |
| 1059309076
| |
| UTC
| |
|
| |
| Braucht man den -u Schalter nicht. Statt UTC könnte da auch LOCAL stehen.
| |
|
| |
| Gesetzt wird es bei [https://linuxwiki.de/Debian Debian] in /etc/default/rcS
| |
| # Set UTC=yes if your system clock is set to UTC (GMT), and UTC=no if not.
| |
| UTC=yes
| |
|
| |
| Bei RedHat/[https://linuxwiki.de/Mandriva Mandriva] findet sich die Einstellung unter /etc/sysconfig/clock (UTC=true), bei [https://linuxwiki.de/Gentoo Gentoo] unter /etc/rc.conf, oder seit neuem unter /etc/conf.d/clock. Bei [https://linuxwiki.de/SuSE SuS]E war wohl rc.config? Andere Distributionen?
| |
|
| |
| === Systemuhr mit einem ZeitServer synchronisieren ===
| |
| Siehe [https://linuxwiki.de/ZeitServer ZeitServer] bzw. [https://linuxwiki.de/ntp ntp].
| |
|
| |
| == Umstellung Winter-/Sommerzeit ==
| |
| Heute Morgen war die Uhrzeit an meinem Rechner korrekt von Sommer- auf Winterzeit umgestellt. Frage: Woher weiß [https://linuxwiki.de/Linux Linux] eigentlich, wann die Zeit umzustellen ist? Ein [https://linuxwiki.de/ntp ntp]-Dämon läuft bei mir nicht.
| |
| * vermutl. durch die /etc/localtime, denke ich? Den Inhalt kann ich leider nicht rauslesen
| |
| * Das ist ein symbolischer Link auf /usr/share/zoneinfo/Europe/Berlin (offenbar eine Binär-Datei). Frage: Was steht da drin? Wie funktioniert das?
| |
|
| |
| Normalerweise wird unter Linux die Systemzeit nicht umgestellt, da das System [https://de.wikipedia.org/wiki/GMT GMT] als Zeitzone annimmt (kann man aber alles einstellen). Die Zeit, die der Benutzer angezeigt bekommt, wird dann je nach Datum und Zeitzone umgerechnet und angezeigt.
| |
|
| |
| Man kann [https://linuxwiki.de/KNOPPIX KNOPPIX] so starten, dass von einer UTC- (und nicht Localtime-) System-Uhr ausgegangen wird (siehe [https://linuxwiki.de/KNOPPIX/CheatCodes KNOPPIX/CheatCodes]). Ggf. geht die Uhr z.B. 2 Stunden vor. Das bleibt dann auch so, wenn man [https://linuxwiki.de/KNOPPIX/AufFestplatte KNOPPIX/AufFestplatte] installiert.
| |
|
| |
| Frage: Wie kann ich das nachträglich so einstellen, dass das Betriebssystem weiß, dass die Uhr auf UTC läuft?
| |
|
| |
| '''/etc/init.d/hwclock.sh''' ist Dein Freund
| |
|
| |
|
| [[Kategorie:Linux:Zeit]] | | [[Kategorie:Linux:Zeit]] |
date - Ausgeben oder Setzen von Systemdatum und -zeit
Beschreibung
- Die aktuelle Uhrzeit im angegebenen FORMAT anzeigen oder die Systemzeit setzen
- Die obligatorischen Argumente für Optionen sind für deren Kurz- und Langform gleich
Installation
Anwendungen
Wandelt die Sekunden seit Beginn der Unix-Epoche (1970-01-01 UTC) in ein Datum um
$ date --date='@2147483647'
Zeigt die Zeit an der Westküste der USA an (verwenden Sie tzselect(1), um den Wert für TZ herauszufinden)
$ TZ='America/Los_Angeles' date
Zeigt die örtliche Zeit für 9 Uhr morgens am nächsten Freitag an der Westküste der USA an
$ date --date='TZ="America/Los_Angeles" 09:00 next Fri'
DATUMSZEICHENKETTE
Bei der Anweisung --date=ZEICHENKETTE kann ein menschenlesbares Datum auf Englisch in einem ziemlich freien Format angegeben werden
- beispielsweise »Sun, 29 Feb 2004 16:21:42 -0800«, »2004-02-29 16:21:42« oder sogar »next Thursday« (nächster Donnerstag)
- Eine Datumszeichenkette darf Teile enthalten, die das Kalenderdatum angeben, die Tageszeit, Zeitzone, den Tag der Woche, eine relative Zeit, ein relatives Datum sowie Zahlen.
- Eine leere Zeichenkette bedeutet den Anfang des aktuellen Tages.
- Das Format der Datumszeichenkette ist komplexer, als es hier in einfachen Worten beschrieben werden kann. In der Info-Dokumentation ist es vollständig erklärt.
Syntax
$ date [OPTION]… [+FORMAT]
$ date [-u|--utc|--universal] [MMDDhhmm[[CC]YY][.ss]]
Optionen
Parameter
Umgebungsvariablen
Exit-Status
Konfiguration
Dateien
Sicherheit
Dokumentation
RFC
Man-Pages
Info-Pages
- Vollständige Dokumentation unter: <https://www.gnu.org/software/coreutils/date>
- lokal verfügbar mit: info '(coreutils) date invocation'
Siehe auch
Links
Projekt-Homepage
Weblinks
- https://linuxwiki.de/DatumUndUhrzeit
Einzelnachweise
Testfragen
TMP
date MMTThhmm
MM |
Monat
|
TT |
Tag
|
hh |
Stunden
|
mm |
Minuten
|
# oder auch in der für USA üblichen Schreibweise:
date -s "12/31 23:59"