कमांड लाइन के माध्यम से ubuntu के सर्वर की तारीख और समय कैसे बदलें?


40

उबंटू सर्वर की वर्तमान तिथि और समय समय क्षेत्र की तारीख और समय से अलग है। मैंने प्रयोग करने की कोशिश की है:

sudo date "30 Sep 2015 4:43:42"

इसे बदलने के लिए, लेकिन यह तारीख और समय नहीं बदला, बस टर्मिनल पर मुद्रित तारीख और समय मैं बदल गया, लेकिन जब मैंने निष्पादित किया:

sudo hwclock --show

तारीख और समय अभी भी पुराना है।

उबंटू सर्वर की तारीख और समय बदलने का सही तरीका क्या है?


आपने वास्तव में "sudo date newdate" टाइप किया - शब्द "newdate"?
वोल्फगैंग

1
नहीं। मैंने अपना प्रश्न संपादित किया है। मैंने "30 Sept 2015 4:43:42" टाइप किया
अप्रिलिया

जवाबों:


68

आप इस आदेश के साथ सिस्टम तिथि सेट कर सकते हैं :

sudo date --set="2015-09-30 10:05:59.990"

फिर उपयोग करते समय date, इसे सही ढंग से दिखाया जाना चाहिए।

अब आपको सिस्टम के BIOS में सेट हार्डवेयर क्लॉक को भी सेट करना चाहिए , ताकि सेटिंग रिबूट पर बनी रहे (स्टार्टअप को सिस्टम समय हार्डवेयर घड़ी के मान पर सेट किया जाता है)। उस के साथ करें hwclock:

sudo hwclock --systohc

यह सिस्टम क्लॉक (sys) मान प्राप्त करता है और हार्डवेयर क्लॉक (hc) सेट करता है। इसे hwclockकमांड से जांचें । दोनों hwclockऔर dateअब एक ही तारीख और समय दिखाना चाहिए।


अपना समय क्षेत्र सेट करने के लिए , आप इस कमांड का उपयोग कर सकते हैं:

sudo dpkg-reconfigure tzdata

BTW : यदि आप एक सर्वर के रूप में इस मशीन का उपयोग करते हैं, तो मैं नेटवर्क पर समय को सिंक करने के लिए एनटी-क्लाइंट का उपयोग करने की दृढ़ता से सलाह देता हूं । इसलिए आप गारंटी दे सकते हैं कि आपके सभी सर्वरों का समय बिल्कुल एक जैसा है। यह मशीन को चलाने के दौरान समय को सिंक करेगा। यदि आपके पास ऐसे एप्लिकेशन हैं जो सर्वर पर सिंक किए गए समय पर निर्भर हैं, तो मैं एनटी-डेमन को सलाह देता हूं। यह पृष्ठभूमि में जितना लंबा चलता है, उतना ही सटीक समय होता है।


1
मैं घड़ी तुल्यकालन कदम याद किया। आपके उत्तर के लिए धन्यवाद, इसने मेरी मदद की!
प्रिसका अप्रिलिया

1
3 विकल्प मदद करता है, यह बदल गया आदि / timezone =) जैसे php.net/manual/en/timezones.php !!! बिल्कुल समान !!!
व्लादिमीर च

@VladimirCh Fortunatelly समय क्षेत्रों के नाम stadarized हैं, इसलिए हमें सिस्टम के बीच कोई समायोजन करने की आवश्यकता नहीं है। ओह, रुकिए ... कुछ माइक्रोसॉफ्ट संस्करण भी हैं ...
पीटरएम

1
मैं बदलने की कोशिश करता हूं, लेकिन इसका बदलाव नहीं होता: - $ sudo date --set = "2015-09-30 10: 05: 59.990" Wed Sep 30 10:05:59 +0530 2015 $ date Thu May 23 15:10:37 +0530 2019
विनोद

7
  1. अपने समयक्षेत्र की खोज करें
timedatectl list-timezones
  1. अपना समयक्षेत्र सेट करें
sudo timedatectl set-timezone America/Toronto
  1. सक्षम करें timesyncd
sudo timedatectl set-ntp on

इसके साथ, समय निर्धारित और सिंक्रनाइज़ किया जाना चाहिए।

आप इस ट्यूटोरियल पर अधिक देख सकते हैं: https://www.digitalocean.com/community/tutorials/how-to-set-up-time-synchronization-on-ubuntu-18-04


1
मैन्युअल रूप से सेट किए गए घंटों और मिनटों के बिना इसे ठीक करने का सबसे अच्छा तरीका! आपका बहुत बहुत धन्यवाद!
राफेल मोनी

4

मैं सिस्टम समय को मैन्युअल रूप से सेट करना नापसंद करता हूं। इसलिए इस मुद्दे को हल करने के लिए मुझे दो अलग-अलग उत्तरों को संयोजित करना पड़ा।
सिस्टम समय को ठीक करने के लिए आपको इस कोड का उपयोग करना होगा:

sudo date -s "$(wget -qSO- --max-redirect=0 google.com 2>&1 | grep Date: | cut -d' ' -f5-8)Z"

जैसा कि इस उत्तर में दिया गया है
तब आप सिस्टम क्लॉक का उपयोग करके हार्डवेयर घड़ी को सिंक करते हैं

sudo hwclock --systohc

जैसा कि इस थ्रेड में @chaos द्वारा दिया गया है।


1

में टाइप करें

sudo date newdatestring

साथ newdatestring प्रारूप nnddhhmmyyyy.ss में

  • nn: (दो अंक) महीना (01 से 12)
  • dd: (दो अंक) दिन (01 से 31), नियमित नियमों के साथ महीने और वर्ष के अनुसार लागू होने वाले दिनों के लिए
  • hh: (दो अंक) घंटा (00 से 23)
  • मिमी: (दो अंक) मिनट (00 से 59)
  • yyyy: वर्ष; यह दो अंकों या चार अंकों का हो सकता है
  • ss दो अंकीय सेकंड (00 से 59) है। अवधि '।' से पहले एस.एस.

लेकिन दिनांक कमांड के बगल में, शायद आप NTP "समाधान" (नेटवर्क टाइम प्रोटोकॉल) पसंद करते हैं: Serverguide - NTP , हाथ से तारीख निर्धारित करने की तुलना में संभालना और अधिक सटीक। आप हर x घंटे / मिनट का समय अपडेट करने के लिए एक cronjob या ntp डेमॉन (ntpd) का उपयोग कर सकते हैं ...

उम्मीद है की यह मदद करेगा!


अमान्य दिनांक सीमा जब मैंने "093005082015.15" के साथ कोशिश की, जो 30 सितंबर 2015, 05:08:15 के लिए खड़ा है
अप्रिलिया

sudo date "093005082015.15" मेरा काम करना।
vusan

0

युगीन सेकंड संस्करण की तलाश करने वालों के लिए

  1. वर्तमान तिथि और समय निर्धारित करें

    sudo date -s @1565864862
  2. वर्तमान तिथि और समय प्राप्त करें

    date +%s
    

    आउटपुट 1565864862

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.