अपने विस्मय के लिए, मैंने CRIU ( https://criu.org) का उपयोग किया ) का उपयोग चेकपॉइंट के लिए किया और एक mosh क्लाइंट को पुनरारंभ किया और यह काम किया।
चौंका देने वाला।
अपने mosh-client का PID ढूंढें:
$ ps -ef | ग्रेप मोश
फिर, उनके निर्देशों के अनुसार CRIU स्थापित करें।
फिर, इसे इस तरह जाँचें:
$ mkdir चौकी
$ sudo ./criu डंप -D चेकपॉइंट -t PID --shell-job
फिर, इसे पुनर्स्थापित करें:
$ sudo ./criu पुनर्स्थापना -D चेकपॉइंट -शेल-जॉब
और, वहाँ यह है। आपका mosh क्लाइंट वापस आ गया है।
एक बात पर ध्यान दें, हालांकि, यदि आपका लैपटॉप रिबूट करता है (जो कि हम जिस चीज से बचाव करने की कोशिश कर रहे हैं उसका पूरा बिंदु है), mosh एक का उपयोग करता है monotonic
क्लाइंट साइड पर समय को ट्रैक करने के लिए घड़ी , जो रीबूट में काम नहीं करता है। यह काम नहीं करेगा, हालाँकि, यदि आपका लैपटॉप बस फ्लैट आउट क्रैश हो जाता है तो यह काम नहीं करेगा क्योंकि mosh अनुक्रम संख्या उस संस्करण के साथ सिंक से बाहर हो जाएगी जो चेकपॉइंट किया गया था (बाइनरी फिर से शुरू होगा, लेकिन संचार बंद हो जाएगा)।
इसे ठीक करने के लिए, आपको mosh को बताना बंद करना होगा और mosh स्रोत कोड डाउनलोड करना होगा। फिर, इस फ़ाइल को संपादित करें:
सीडी मॉश
vim config.ac
फिर, GETTIME
उस लाइन को खोजें और टिप्पणी करें।
फिर करो:
autoreconf # या ./autogen.sh यदि आपने पहली बार इसे क्लोन किया है
कॉन्फ़िगर
बनाना
स्थापित करें
उसके बाद, आपके CRIU-checkpointed mosh क्लाइंट सत्र रिबूट से बच जाएंगे।
(स्पष्ट रूप से आपको उपयोगी होने के लिए नियमित रूप से चौकियों को पूरा करने के लिए कुछ लिखने की आवश्यकता होगी। लेकिन, यह पाठक के लिए एक अभ्यास है)।