क्या उबंटू के लिए कोई डीप फ़्रीज़-जैसी एप्लीकेशन है?


10

मैं जानना चाहूंगा कि क्या लिनक्स के लिए डीप फ्रीज का कोई विकल्प है जो अभी भी विकास के अधीन है, क्योंकि मैंने इंटरनेट पर कुछ चीजें पढ़ी हैं और उसी कंपनी की तरह दिखता है, जिसने डीप फ्रीज विकसित किया था, उसका लिनक्स संस्करण था, लेकिन प्रोजेक्ट बंद कर दिया गया था।


तुम ऐसा क्यों चाहेगो? बस गैर-रूट उपयोगकर्ताओं को सिस्टम फ़ाइलों को बदलने की अनुमति न दें।
डेविड फ़ॉस्टर

@DavidFoerster मैंने सिर्फ आपकी टिप्पणी का उत्तर देने के लिए प्रश्न संपादित किया है।
जिगंड

हाय आप इस वैकल्पिक sourceforge.net/projects/dafturnofris-id

2
सामान्य (आउट-ऑफ-द-बॉक्स) "अतिथि" उपयोगकर्ता (हाल ही में?) उबंटू-ऑन-द-फ्लाई में बनाए गए हैं, उनके घर में हैं /tmp, और लॉगआउट के बाद साफ हो गए हैं ... क्या यह पर्याप्त नहीं है?
रमनो

जवाबों:


8

OFRIS एक ओपन सोर्स एप्लिकेशन है जो आपके लिनक्स को फ्रीज कर सकता है, यह माइक्रोसॉफ्ट विंडोज ऑपरेटिंग सिस्टम में डीप फ्रीज की तरह है।

उबंटू संस्करणों के लिए 9.10, 10.04 और 10.10। OFRIS, बस प्रेस स्थापित करने के लिए Ctrl+ Alt+ Tखुला टर्मिनल के लिए अपने कीबोर्ड पर। जब यह खुलता है, तो नीचे कमांड चलाएँ:

sudo add-apt-repository ppa:tldm217/tahutek.net -y
sudo apt-get update && sudo apt-get install ofris-en -y

Ubuntu संस्करणों के लिए 11.04, 11.10, 12.04 और 13.04। OFRIS, बस प्रेस स्थापित करने के लिए Ctrl+ Alt+ Tखुला टर्मिनल के लिए अपने कीबोर्ड पर। जब यह खुलता है, तो नीचे कमांड चलाएँ:

[कॉपी-fileformat]

if [ $(uname -m) == "x86_64" ]; then deb="http://goo.gl/DleLl"; else deb="http://goo.gl/V94Qs"; fi && wget -q $deb -O ofris.deb && sudo dpkg -i ofris.deb && rm ofris.deb

नीचे दी गई छवि 13.04 को चल रहे OFRIS को दिखाती है

यहां छवि विवरण दर्ज करें

स्रोत: XGeek


मैंने इसे 15.10 में स्थापित किया, फिर मैंने 3 को दबाकर फ्रीज लागू किया, यह पुष्टि करता है कि सिस्टम फ्रोजन मोड में है। फिर मैंने रिबूट किया, मैंने मान के साथ एक फ़ाइल / var / tmp / myname बनाया, फिर मैंने फिर से रिबूट किया, लेकिन अभी भी फ़ाइल है। यह ठंड कैसे है?

आप वास्तव में क्या मतलब है? इसके अलावा, मुझे यह देखने के लिए जांचना होगा कि यह 15.10 पर काम करता है या नहीं। सिस्टम फ्रीजिंग सब कुछ रीसेट कर रहा है जिस तरह से यह जमे हुए होने से पहले था। कृपया मुझे बताओ।
मिच

3

चेतावनी: मैंने इस समाधान को लागू कर दिया है और यह काम करता है, लेकिन स्नैपशॉट पर वापस जाने के लिए मर्ज समय बूट प्रक्रिया को लंबे समय तक ले सकता है यदि सिस्टम में अंतिम बूट के दौरान बड़े बदलाव किए गए थे। इस प्रतीक्षा अवधि के दौरान, यह उपयोगकर्ताओं को दिखाई दे सकता है कि सिस्टम लटका हुआ है!

यह भी सावधान रहें कि जिस किसी के पास स्नैपशॉट माउंट करने के लिए पर्याप्त ज्ञान है, वह "जमे हुए" राज्य में परिवर्तन कर सकता है। मैंने "जमे हुए" सिस्टम को अपडेट करने के लिए इस संभावना का लाभ उठाया है, लेकिन फिर से, यह स्नैपशॉट को मर्ज करने (वापस करने) में लगने वाले समय को भी बढ़ा सकता है!


LVM स्नैपशॉट + क्रोन + स्क्रिप्ट = "फ्रोजन" स्थिति

मैंने हाल ही में LVM में खुदाई शुरू की और यह मुझे समझ में आया कि कोई LVM का उपयोग करके मशीन पर "जमे हुए" राज्य को संभवत: बना सकता है और यह स्नैपशॉट क्षमता है। बेशक, इस पद्धति के लिए LVM (या कम से कम LVM के जमने पर विभाजन) का उपयोग करके कॉन्फ़िगर किया गया सिस्टम आवश्यक है।

सारांश:

  • एक स्नैपशॉट के लिए पीवी पर पर्याप्त स्थान को जमा करने वाले LVM विभाजन पर सिस्टम स्थापित करें
  • अपने इच्छित तरीके से सिस्टम को कॉन्फ़िगर करें।
  • स्नैपशॉट मर्ज करने के लिए बूट पर रूट के रूप में चलने वाली क्रॉन जॉब बनाएं और मर्ज किए गए को बदलने के लिए एक नया स्नैपशॉट बनाएं
  • सभी लगातार रिबूट स्नैपशॉट पर वापस लौटते हैं। आपके द्वारा बनाए गए राज्य में सिस्टम के सभी स्नैपशॉट ले लिए गए हैं।
  • एक अतिरिक्त बोनस के रूप में, स्नैपशॉट को माउंट किया जा सकता है और संशोधित किया जा सकता है (बशर्ते आपके पास रूट विशेषाधिकार हो) और यदि आवश्यक हो तो "जमे हुए" राज्य को अपडेट किया जा सकता है।

अवधारणा का सबूत: एक साफ स्थापित से एक विभाजन को छोड़कर सब कुछ फ्रीज करें

स्थापित करें:

  • लाइव उबंटू डिस्क / यूएसबी से बूट करें और "बिना इंस्टॉल किए उबंटू ट्राई करें" विकल्प चुनें। LVM के साथ विभाजन को मैन्युअल रूप से कॉन्फ़िगर करने के लिए यह महत्वपूर्ण है
  • जब उबंटू आपकी पसंद के उपकरण का उपयोग करके आपकी डिस्क को विभाजित करता है ताकि इसमें एक ऐसा विभाजन हो जो ड्राइव के पूरे स्थान को लेता है। यहाँ मैं क्या काम कर रहा हूँ:
    • /dev/sda (आकार 1T)
      • /dev/sda1 (आकार 1T)
  • इसके बाद टर्मिनल पर LVM सेट करें /dev/sda1। मैं एक विभाजन पर अधिकांश प्रणाली डालने जा रहा हूं, लेकिन आपको नहीं करना होगा।
    • sudo pvcreate /dev/sda1
    • sudo vgcreate ubuntu-vg /dev/sda1
    • sudo lvcreate -n swap -L 1G ubuntu-vg
    • sudo lvcreate -n unfrozen -L 10G ubuntu-vg
    • sudo lvcreate -n root -l +50%free ubuntu-vg
  • अब यदि आप sudo vgsद्वारा पीछा किया गया था, sudo lvsतो आप यह देख सकते हैं कि वॉल्यूम समूह "ubuntu-vg" (vFree अंडर वीजीएस आउटपुट) में छोड़ी गई खाली जगह की मात्रा तार्किक वॉल्यूम द्वारा ली गई जगह की मात्रा के बराबर है "रूट "(Lvs आउटपुट के तहत LSize)। मेरे मामले में, मेरे पास ubuntu-vg में 506.44g मुफ्त है और मेरा रूट विभाजन 506.44g बड़ा है। यदि वॉल्यूम समूह में छोड़ी गई खाली जगह विभाजन के आकार के बराबर है जिसे मैं फ्रीज करना चाहता हूं, तो मुझे पूरे विभाजन को मिटा देना चाहिए और फिर भी रिबूट के साथ पुनर्प्राप्त करने में सक्षम होना चाहिए। बाकी खाली जगह को ubuntu-vg में अभी के लिए अप्रयुक्त छोड़ दें। हम इसे बाद में उपयोग करेंगे।
  • अब मैन्युअल विभाजन का उपयोग करके उबंटू स्थापित करें image.png
  • जब इंस्टॉल समाप्त हो जाए तो आगे बढ़ें और नए इंस्टॉल किए गए सिस्टम में रिबूट करें।
  • एक बार अपने नए सिस्टम में बूट हो जाने के बाद, इसे कॉन्फ़िगर करें ताकि यह वैसा ही हो जैसा आप चाहते हैं कि कंप्यूटर हर बार बूट हो।
    • यदि आप स्नैपशॉट में आकस्मिक परिवर्तन नहीं करते हैं और आप नहीं चाहते कि स्नैपशॉट विभाजन मेनू बार में दिखाई दे ...
      • mkdir /steady
      • फ़ाइल की अंतिम पंक्ति के रूप में /etc/fstabजोड़कर (यह सभी एक पंक्ति है) संपादित करें/dev/ubuntu-vg/steadystate /steady ext4 defaults,ro,nofail 0 1
    • चूंकि अपडेट जैसी चीजें प्रत्येक रिबूट के साथ उड़ जाएंगी, आप उन्हें बंद करना चाह सकते हैं।
    • यदि आपके पास मेरे जैसा कोई अपरिवर्तनीय विभाजन है / unfrozen, तो इसे उन उपयोगकर्ताओं के लिए सुलभ बनाना न भूलें जिन्हें इसकी पहुँच की आवश्यकता है
  • एक बार जब आप सिस्टम को ठीक उसी तरह से कॉन्फ़िगर कर लेते हैं जैसा आप चाहते हैं, तो निम्न स्क्रिप्ट बनाएं (आपको रूट विशेषाधिकार की आवश्यकता होगी) और /root/steadystate.shअपने पसंदीदा संपादक के साथ सहेजें । ध्यान दें कि यदि आपने LVM सेट करते समय वॉल्यूम समूह का नाम बदल दिया है, तो आपको नीचे दी गई स्क्रिप्ट में भी इसे अपडेट करना होगा।
    #!/bin/bash
    LOG=/dev/kmsg

    # wait for merge in progress
    echo -n "Reverting to snapshot if present... " | tee -a $LOG
    merging=1
    while [ "$merging" == "1" ];
    do
        /usr/sbin/service lightdm stop #prevent the auto-login/login screen from loading
        [ "$(sudo lvs -a | grep steadystate)" == "" ] && merging=0
        sleep 1
    done

    # create snapshot
    echo -n "Creating new snapshot... " | tee -a $LOG
    /sbin/lvcreate -s -n steadystate -l +100%free /dev/ubuntu-vg/root

    # make sure root comes online before trying to merge
    while [ ! -e /dev/mapper/ubuntu--vg-root];
    do
        sleep .5;
    done
    echo -n "Scheduling reset to snapshot... " | tee -a $LOG
    /sbin/lvconvert --merge /dev/ubuntu-vg/steadystate

    echo -n "Starting lightdm... " | tee -a $LOG
    /usr/sbin/service lightdm start
  • अंत में चलाएं sudo crontab -e, एक संपादक चुनें और @reboot /bin/bash /root/steadystate.shफ़ाइल के अंत में रखें। सहेजें और बंद करें ( Ctrl+ Xउत्तर Yदें बचाने के लिए)
  • रिबूट, और आपके पास एक ऐसी प्रणाली होनी चाहिए जो कि विभाजन को छोड़कर / फ़ॉरेनजेन पर मुहिम के दौरान जमी हो

यह काम इसलिए करता है क्योंकि स्नैपशॉट बूट समय पर बनाया गया है, और भले ही हम स्नैपशॉट को उसके ठीक बाद विलय करने के लिए कमांड पास करते हैं, स्नैपशॉट को मर्ज नहीं किया जा सकता है, जबकि रूट के लिए तार्किक वॉल्यूम सक्रिय है। इसलिए यह अगली बार / देव / ubuntu-vg / root सक्रिय होने तक विलय की कार्रवाई को स्थगित कर देता है जो अगले रिबूट पर होता है। यदि सिस्टम लाइव USB से बूट किया गया था, तो यह क्रिया भी चालू हो जाएगी।

बस किक के लिए, मैं एक रिबूट के बाद अंदर चला गया और भाग गया sudo apt remove --purge firefox* libreoffice-* unity*जिसे मैं सामान्य रूप से करने की सलाह नहीं दूंगा क्योंकि यह कुछ उपयोगी कार्यक्रमों को हटा देता है और सिस्टम को डालता है जो वांछनीय अवस्था से कम हो सकता है! broken.png GUI से सिस्टम ठीक से बंद भी नहीं होगा। तो कोई इसे कैसे ठीक करता है? रीबूट! rebooted.png रिबूट करने पर, सब कुछ वापस क्रम में था। फ़ायरफ़ॉक्स, लिब्रे ऑफिस और यूनिटी सभी वापस आ गए थे जहाँ वे थे।

मैंने लिनक्स को हटाने की भी कोशिश की *। यह छोड़ दिया वह बूट करने में असमर्थ मशीन, हालांकि, एक लाइव उबंटू डिस्क से बूट करने से लग रहा था कि मर्ज हो जाएगा। फिर से शुरू करने से सिस्टम अपने "फ्रोजन" राज्य में चला गया

यदि आप परिवर्तन करने में सक्षम होना चाहते हैं, तो आप स्नैपशॉट को आरडब्ल्यू विशेषाधिकारों के साथ माउंट कर सकते हैं और फिर इसे चेरोट कर सकते हैं और कोई भी बदलाव कर सकते हैं जिसे आप स्थायी रहना चाहते हैं। यह निर्दोष नहीं है, लेकिन यह अवधारणा का प्रमाण है।


1

डिफ़ॉल्ट रूप से उबंटू और अधिकांश अन्य यूनिक्स नियमित उपयोगकर्ताओं (छात्रों, मेहमानों) को सिस्टम फ़ाइलों तक पहुंच लिखने से इनकार करते हैं। केवल उचित प्राधिकरण (उपयोगकर्ता नाम और कुंजी) वाला एक प्रशासक सॉफ़्टवेयर स्थापित कर सकता है, सिस्टम सेटिंग्स बदल सकता है या विभाजन हटा सकता है।

नियमित उपयोगकर्ता, डिफ़ॉल्ट रूप से, केवल अपने होम निर्देशिका और सिस्टम के अस्थायी निर्देशिका में लिख सकते हैं। एक बार के अतिथि सत्रों को संभालने का एक सामान्य तरीका है कि अपने होम डायरेक्टरी को टेंप डायरेक्टरी के अंदर और मुख्य मेमोरी में टेंप डायरेक्टरी को रखा जाए।

यदि आप अतिरिक्त सुनिश्चित करना चाहते हैं, तो सिस्टम विभाजन को केवल पढ़ने के लिए माउंट करें और इसके ऊपर एक ऐफ्स विभाजन रखें, जो मुख्य मेमोरी में परिवर्तन को स्टोर करता है।


1

fsprotect स्क्रिप्ट का एक सेट है जो मौजूदा फाइल सिस्टम को सुरक्षित रखता है। सार्वजनिक कंप्यूटरों जैसे कि पुस्तकालयों, इंटरनेट कैफे, आदि में fsprotect उत्कृष्ट है।

Aufs का उपयोग करके वे tmpfs फाइल सिस्टम में लिखे जाने वाले बदलावों के लिए मजबूर एक tmpfs फाइलसिस्टम पैक करते हैं।

रूट फाइलसिस्टम एक इनट्रैमफ्स स्क्रिप्ट द्वारा सुरक्षित है। अन्य filesystem एक init स्क्रिप्ट द्वारा सुरक्षित हैं। सभी संरक्षित फाइलसिस्टम केवल पॉवर-ऑफ पर भी अपनी अपरिवर्तनीयता सुनिश्चित करने के लिए पढ़े जाते हैं।

Ubuntu के सभी समर्थित संस्करणों में fsprotect स्थापित करने के लिए टर्मिनल खोलें और टाइप करें:

sudo apt-get install fsprotect

Fsprotect का उपयोग करने के लाभ हैं:

  • फाइलसिस्टम संरक्षित हैं और डिस्क में कभी कोई बदलाव नहीं लिखा गया है।
  • संरक्षित फाइलसिस्टम को केवल पढ़ने के लिए माउंट किया जाता है। इसका मतलब है कि कंप्यूटर के अनुचित तरीके से बंद होने पर वे क्षतिग्रस्त नहीं हैं।
  • यह इस्तेमाल में बहुत आसान है।
  • कुछ मामलों में यह फाइल सिस्टम को तेजी से एक्सेस करता है।

Fsprotect का उपयोग करने की कमियां हैं:

  • फाइलसिस्टम परिवर्तन बाइट्स (आपके द्वारा निर्धारित) में पूर्वनिर्धारित सीमा से अधिक नहीं हो सकता है।
  • चूंकि tmpfs का भारी उपयोग किया जाता है, इसलिए आपके पास पर्याप्त स्वैप स्थान होना चाहिए।

स्थापित करें Ubuntu 16.04.2 पर विफल। touchInitram स्क्रिप्ट में समस्या एक बुरा संदर्भ है । यह इसके /usr/bin/touchबजाय इंगित करता है /bin/touch। यह काम करने के लिए मजबूर किया जा सकता है, लेकिन स्थापित होने पर भी, नेटवर्क काम करना बंद कर देता है।
b_laoshi

नेटवर्क काम करना बंद कर सकता है क्योंकि आप हेडर फ़ाइलों के बिना खराब कर्नेल या कर्नेल का उपयोग कर रहे हैं। जब कंप्यूटर रिबूट तब तक इंतजार करता है जब तक निर्माता की स्प्लैश स्क्रीन गायब नहीं हो जाती है, तब GRUB बूट विकल्प दिखाने के लिए Shift कुंजी दबाएं। बैंगनी GRUB स्क्रीन से Ubuntu के लिए उन्नत विकल्प चुनें और Enter दबाएँ। एक नई बैंगनी स्क्रीन गुठली की एक सूची दिखाती दिखाई देगी। एक अलग कर्नेल चुनें और एंटर दबाएँ।
कैरेल

यह व्यावहारिक रूप से सभी अपडेट के साथ एक नया इंस्टॉल है। मैंने पुराने कर्नेल की कोशिश की, और सबसे पहले यह नेटवर्किंग से बूट हुआ, लेकिन फिर मुझे महसूस हुआ कि पुराने कर्नेल में fsprotect को बंडल नहीं किया गया था। मैंने सभी कर्नेल को अपडेट किया और अब मेरे पास कर्नेल से बूट होने पर कोई नेटवर्किंग नहीं है।
b_laoshi

1
ग्रब से fsprotect विकल्प को हटाने और initramfs को अपडेट करने में अक्षम fsprotect कोर्स, और नेटवर्क फिर से काम करता है। स्पष्ट रूप से यह fsprotect में कुछ है जो नेटवर्किंग को तोड़ रहा है।
b_laoshi
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.