दूर स्थित उबंटू सर्वर पर एक रिबूट का समय निर्धारण


17

मैं एक ऐसे स्थान पर स्थित एक ubuntu सर्वर पर काम करता हूं जहां मैं आमतौर पर नहीं जाता हूं। मैं इसे एक्सेस करने के लिए Openvpn पर ssh का उपयोग करता हूं। मशीन में कई वायर्ड इंटरफेस, कई स्थिर मार्ग और WAN के लिए कई डिफ़ॉल्ट गेटवे हैं। मैं अक्सर इंटरफ़ेस एड्रेस और मार्गों को बदलता हूं। मेरे द्वारा किए गए परिवर्तनों के अधिकांश समय अस्थायी रूप से होते हैं - एक रिबूट मेरे द्वारा किए गए प्रयोगों को रीसेट करेगा। कुछ मामलों में उन संशोधनों में से कुछ गलत हो गई हैं, और मशीन ऑफ़लाइन हो गई है। ऐसे मामलों में मुझे उस स्थान पर किसी को कॉल करना था जहां मशीन को रिबूट में भेजने के लिए सर्वर स्थित है।

अब मैं एक रिबूट शेड्यूल करना चाहता हूं - 2 घंटे के बाद कहते हैं कि मशीन को रिबूट चक्र में जाना चाहिए। और उन दो घंटों में मैं जो भी अस्थायी प्रयोग करना चाहता हूं, कर सकता हूं। यदि सभी अस्थायी परिवर्तन सफल होते हैं तो मुझे "एफ़र 2 घंटे" को रीबूट होने से रोकने में सक्षम होना चाहिए। तो मुझे क्या चाहिए:

  1. सर्टिफिकेट समय के बाद रिबूट करने के लिए सर्वर को कैसे बताएं?
  2. यदि मैं तय करता हूं कि मशीन को रिबूट में नहीं जाना चाहिए, तो मुझे इसे रद्द करने में सक्षम होना चाहिए।

जवाबों:


14

टर्मिनल प्रकार पर shutdown -r 10 Waiting 10 minutes before the restart&जो सर्वर को 10 मिनट में रिबूट कर देगा, एक संदेश प्रसारित करता है जो समझाता है कि और नियंत्रण + सी दबाने से रिबूट अनुरोध बाधित हो जाएगा।

टर्मिनल प्रकार पर shutdown -r 18:00 Rebooting at 18:00 hours&जो सर्वर को 18:00 बजे रिबूट कर देगा, यह समझाते हुए एक संदेश प्रसारित करेगा और नियंत्रण + सी के साथ बाधित हो सकता है।

आप अपने "वर्किंग" टर्मिनल पर किसी भी शटडाउन / रिबूट अनुरोध को भी बाधित कर सकते हैं shutdown -a


2
यह थोड़ा समस्याग्रस्त है क्योंकि यह संवादात्मक है और आपके द्वारा चलाए जा रहे शेल को ब्लॉक करता है। मुझे यकीन नहीं है कि अगर सत्र गिरता है तो यह SSH के ऊपर अनुमानित रूप से काम करेगा।
एलेन ओ डिया

मुझे इसका कोई संयोजन नहीं मिला nohupऔर sudoअगर यह सामान्य ssh सत्र से सामान्य व्यवस्थापक समूह उपयोगकर्ता के रूप में चलता है, तो यह काम करेगा।
एचडीवी

क्या यह स्क्रीन के साथ संयोजन में चलाया जा सकता है ताकि कमांड को लागू किया जा सके और ssh सत्र को गिरा दिया जाए?
एंडी डेविस

30

आप atरिबूट शेड्यूल करने के लिए भी उपयोग कर सकते हैं । उदाहरण के लिए sudo at 22:0022:00 पर रूट के रूप में कमांड को चलाने के लिए। फिर उस कमांड को दर्ज करें जिसे आप चलाना चाहते हैं: /sbin/shutdown -r nowऔर साथ समाप्त करें ctrl-d। यदि आप इस आदेश को नहीं चलाने का निर्णय लेते हैं, sudo atrm 1तो atकतार में पहले एक को हटाने के लिए दौड़ें । आपके साथ sudo atqकतार देख सकते हैं।


यह समाधान एकदम सही है!
सुकिमा

5
इसे सही उत्तर के रूप में चिह्नित किया जाना चाहिए! atआदेशों की परिवार कुछ हर सर्वर व्यवस्थापक पता होना चाहिए।
एचडीवी

2
यदि आप नए हैं at, तो पहले निष्पादित करें sudo at 22:00। यह आपको एक प्रकार के खोल में ले जाता है। फिर आप कमांड दर्ज करते हैं, और ctrl-dबाहर निकलने के लिए। यह भी देखें mixeduperic.com/ubuntu/...
टिम रिचर्डसन
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.