सिस्टम क्लॉक को बदलने के लिए कमांड लाइन स्टेटमेंट क्या है?


50

क्या सिस्टम क्लॉक की तारीख और समय बदलने के लिए ऐसी कोई आज्ञा है?

उदाहरण के लिए:

वर्तमान तिथि और समय January 1, 1970 22:30:59:980जहां 59 और 980 क्रमशः सेकंड और मिलीसेकंड को संदर्भित करता है

और मैं इसे बदलना चाहता हूं January 2, 1971 23:31:59:990

क्या इसके लिए कोई आज्ञा है?


बस अगर किसी को समय क्षेत्र बदलने में भी दिलचस्पी है। askubuntu.com/questions/3375/…
— नासिम

जवाबों:


57

टर्मिनल से उबंटू में समय निर्धारित करने के लिए, आप निम्नलिखित कमांड का उपयोग कर सकते हैं:

sudo date new_date_time_string

जहाँ नीचे वर्णित new_date_time_stringप्रारूप का पालन करना MMDDhhmmyyyy.ssहै:

  • MM 01 से 12 के बीच एक दो अंकों का महीना है
  • DD एक दो अंकों का दिन है, 01 और 31 के बीच, महीने और साल के अनुसार दिनों के लिए नियमित नियमों के साथ
  • hh 24 घंटे की अवधि का उपयोग करके दो अंकों का घंटा है, इसलिए यह 00 और 23 के बीच है
  • mm 00 और 59 के बीच दो अंकों का मिनट है
  • yyyyसाल है; यह दो अंकों या चार अंकों का हो सकता है
  • ssदो अंक सेकंड है। .से पहले की अवधि पर ध्यान दें ss।

स्रोत: कमांड लाइन के माध्यम से Ubuntu में समय का प्रबंधन करें ।

तो, अपने विशेष मामले में, आप उपयोग कर सकते हैं:

sudo date 010224311971.59

या, आप उपयोग कर सकते हैं:

sudo date --set="1971-01-02 23:31:59.990"  && date --rfc-3339=ns

जो आपने पूछा वही है।

स्रोत: https://serverfault.com/a/338395/181186 ।


स्ट्रिंग तिथि का वास्तविक प्रारूप क्या है?
— हाबिल मेलक्वेड्स कैलेजो

इसका मतलब यह है कि सटीकता केवल सेकंड तक सीमित हो सकती है ?
— हाबिल मेलक्वेड्स कैलेजो

@AbelMelquiadesCallejo मेरे नए संपादन देखें।
— राडू रियडेनू

1
कोई समझा सकता है? hh00 और 23 के बीच है, लेकिन ओपी और यह उत्तर इसे 24 पर सेट करता है।
— कार्ल एच।

@ कार्ल उस पर शानदार कैच! नए संपादन देखें
— एबेल मेलक्विएड्स कैलेजो

16

आसान तरीका:

ntpdate -s ntp.ubuntu.com

समयक्षेत्र बदलने के लिए:

dpkg-reconfigure tzdata

शायद आपकी जरूरत है sudo।


4
एनटीपी सर्वर जनवरी 1971 को समय निर्धारित करने जा रहा है, मुझे आश्चर्य है।
— मूरू

क्या आपका सर्वर इंटरनेट से जुड़ा है? Help.ubuntu.com/lts/serverguide/NTP.html
— Ninecols

4

आप dateसमय बदलने के लिए कमांड का उपयोग कर सकते हैं और आपको इसे करने की sudoअनुमति की आवश्यकता होगी ; दिनांक 27 जून 2014 और 1:17 बजे का समय निर्धारित करने के लिए एक उदाहरण है:

sudo date --set "27 Jun 2014 1:17:00"

3

चूंकि उबंटू में सिस्टमड इंट्रोड्यूस किया गया था, इसलिए सही तरीका यह है:

# timedatectl set-time "RFC 3339-compliant string"

जैसे

# timedatectl set-time "2002-10-02T10:00:00-05:00"
# timedatectl set-time "10:35"
# timedatectl set-time "+2 hours"

यह भी उदाहरण के लिए काम करता है sudo date --set="+2 hours", जो कि वास्तव में मेरी जरूरत है।
— एमिल वृजदाग्स

0

केवल दिनांक या समय सेट करने के लिए लघु संस्करण:

दिनांक निर्धारित करने के लिए (0: 0: 0 का समय निर्धारित करेगा):

date +%Y%m%d -s "19710102"

केवल समय निर्धारित करने के लिए:

date +%T -s "23:31:59"

आप वांछित ".990" सेकंड में जोड़ सकते हैं।

दिनांक आदेश के बारे में अधिक विकल्पों और स्वरूपों के लिए मैन पेज पढ़ें :

man date

नोट: आप हार्डवेयर क्लॉक को चेक या सेट करना चाह सकते हैं। इसके बारे में यहां पढ़ें ।


-3
sudo date --set="Mon Feb 16 08:49:56 IST 2015"

यह UBUNTU 14.04 में सही कथन होगा।


1
केवल IST timezone में सभी के लिए? क्या दूसरा उत्तर आपके काम नहीं आता है?
— Xen2050

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