क्या स्थायी रूप से स्वैप बंद करना सुरक्षित है?


54

मेरा सिस्टम धीमा हो रहा था, खासकर जब मैं फ़ायरफ़ॉक्स / क्रोमियम और वर्चुअल मशीन जैसे ब्राउज़र का उपयोग करता हूं। मैंने देखा कि मुझे कम से कम 3.2 जीबी मुफ्त रैम (गनोम सिस्टम मॉनिटर का उपयोग करके) मिला है और कोई स्वैपिंग नहीं हुई है।

अब मैंने जो किया है swapoff -aऔर सिस्टम सिस्टम का प्रदर्शन 30% तक है। तो मेरा सवाल यह है कि क्या इसका उपयोग करना सुरक्षित है swapoff? क्या यह मेरे पीसी के साथ पुनः आरंभ करने के लिए सुरक्षित होगा swapoff?

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


1
क्या आप सुनिश्चित हैं कि उबंटू पूरी तरह से राम का उपयोग करने से पहले आपके स्वैप का उपयोग कर रहा है? मुफ्त के साथ आउटपुट क्या है ? आमतौर पर, स्वैप को बंद करने से कोई फर्क नहीं पड़ेगा क्योंकि उबंटू जितना संभव हो उतना राम का उपयोग करने की कोशिश करता है, और ऐसा नहीं होना चाहिए कि राम अप्रयुक्त है और स्वैप का उपयोग किया जाता है।
ste_kwr

2
बस फी, मेरे पास एक एसएसडी के साथ मेरे 8 जीबी सिस्टम पर कोई स्वैप नहीं है।
लेकेनस्टाइन

3
आप या तो स्वैप बंद कर सकते हैं, जो ठीक होना चाहिए, या स्वैच्छिकता मूल्य को समायोजित करना चाहिए। यह / proc / sys / vm / swappiness पर पाया जा सकता है। अधिक स्थायी परिवर्तन के लिए 'sysctl' का उपयोग करें। एक बात का ध्यान रखें कि हाइबरनेट को स्वैप की आवश्यकता होती है। मुझे लगता है कि नींद को वास्तव में इसकी आवश्यकता नहीं है, लेकिन हाइबरनेट करता है।
Marky

@kniwor फिर मैंने किया, 2.5 जीबी रैम के बाद ... यह स्वैप का उपयोग करता है और मुझे फिर से शुरू करना होगा, फिर मेरा सिस्टम ठीक चलेगा। 1 जीबी के कुछ समय बाद मेरा सिस्टम धीमा हो गया
वन जीरो

@ मैंने इसे 5 से 6 बार चेक किया है
One Zero

जवाबों:


94

लिनक्स कर्नेल एक tweakable सेटिंग प्रदान करता है जो नियंत्रित करता है कि स्वैप फ़ाइल का उपयोग कितनी बार किया जाता है, जिसे स्वैपीनेस कहा जाता है

शून्य की एक स्वैगनेस सेटिंग का अर्थ है कि डिस्क को तब तक टाला जाएगा जब तक कि पूरी तरह से आवश्यक न हो (आप मेमोरी से बाहर चले जाएं), जबकि 100 की स्वैगनेस सेटिंग का अर्थ है कि प्रोग्राम को लगभग तुरंत डिस्क पर स्वैप किया जाएगा।

उबंटू प्रणाली 60 के डिफ़ॉल्ट के साथ आती है, जिसका अर्थ है कि स्वैप फ़ाइल का उपयोग अक्सर किया जाएगा यदि मेमोरी का उपयोग मेरे रैम के आधे के आसपास हो। आप अपने सिस्टम के स्वपन मूल्य को चलाकर जांच सकते हैं:

one@onezero:~$ cat /proc/sys/vm/swappiness
60

जैसा कि मेरे पास 4 जीबी रैम है, इसलिए मैं इसे 10 या 15. नीचे करना चाहूंगा। स्वैप फाइल तब ही उपयोग की जाएगी जब मेरी रैम का उपयोग लगभग 80 या 90 प्रतिशत हो। सिस्टम स्वैप्पीनेस मान को बदलने के लिए, खोलें /etc/sysctl.conf as root। फिर, इस लाइन को फ़ाइल में बदलें या जोड़ें:

vm.swappiness = 10

परिवर्तन प्रभावी होने के लिए रिबूट

जब आपका सिस्टम चल रहा हो तब भी आप मान बदल सकते हैं

sysctl vm.swappiness=10

आप एक ही प्रभाव को प्राप्त करने के लिए रिबूट करने के बजाय रन करके swapoff -aऔर फिर swapon -aरूट के रूप में अपना स्वैप साफ़ कर सकते हैं ।

अपने स्वैप फॉर्मूला की गणना करने के लिए

free -m (total) / 100 = A

A * 10

root@onezero:/home/one# free -m
             total       used       free     shared    buffers     cached
Mem:          3950       2262       1687          0        407        952
-/+ buffers/cache:        903       3047
Swap:         1953          0       1953

तो कुल 3950/100 = 39.5 * 10 = 395 है

तो इसका क्या मतलब है कि जब राम का 10% 395 एमबी बचा है, तो यह स्वपन का उपयोग करना शुरू कर देता है


11
+1 यह स्वैप को कॉन्फ़िगर करने पर एक उत्कृष्ट है। बहुत बढ़िया जवाब। आप यह भी पूछ सकते हैं कि 'मैं कैसे स्वैग से कॉन्फ़िगर करूं' और इस उत्तर को कॉपी करने के लिए एक नया प्रश्न पोस्ट कर सकता हूं, इसलिए दूसरों को ढूंढना आसान है। इस सवाल पर आने वाले लोग 'हां या नहीं' के जवाब की तलाश में रहते हैं, आपका एक ऐसा लोगों के लिए है जो पहले से ही 'हां' चुनते हैं
टॉम ब्रॉसमैन


11
यह, एक उपयोगी मार्गदर्शक होने के दौरान, सवाल का जवाब नहीं देता है। पूछने वाला जानना चाहता था कि यह सुरक्षित है या नहीं , इसे कैसे करना है।
चार

2
@InkBlend यहां तक ​​कि अजीब, यह गैर जवाब पूछने वाले द्वारा किया जाता है
अंडरस्कोर_ड

किसी भी मामले में, टिप के लिए बहुत बहुत धन्यवाद। इस उबटन का उपयोग करके यह एक पूरी नई दुनिया है।
डॉन पिफल्स्टर

17

शायद। आपको यहाँ Ubuntu FAQ पृष्ठ का 'व्हाई डू आई नीड स्वैप' हिस्सा पढ़ना चाहिए , और अपने लिए जज करना चाहिए।

यदि आप सेफ्टी नेट स्वैप पर गति की गति प्रदान कर सकते हैं, तो आपको इसे अक्षम कर देना चाहिए

यदि आप कभी भी डिस्क को निलंबित नहीं करते हैं और हमेशा बंद करते हैं और पुनरारंभ करते हैं तो आप इसे सुरक्षित रूप से अक्षम कर सकते हैं।

यदि आपके पास बहुत सारी RAM है (आपका 4GB + VMs एक करीबी कॉल है) तो आप कर सकते हैं।

मेरे लिए, मेरे पास एक एसएसडी, 8 जीबी रैम पर मेरा ओएस है और कभी भी निलंबित नहीं होगा। मुझे स्वैप की आवश्यकता नहीं है, इसे कभी उपयोग में नहीं देखा है, और मैंने इसे बस आदत से बाहर स्थापित किया है।

एक विकल्प के रूप में, यहां एक के बारे में है: लाइफहाकर से फ़ायरफ़ॉक्स के लिए ट्वीक कॉन्फ़िगर करें जो बताता है कि केवल ब्राउज़र कैश के लिए रैम का उपयोग कैसे करें। इससे पहले कि आप इसे आज़माएं, लेख के नीचे दिए गए खंड को पढ़ें।


1

नहीं यह सुरक्षित नहीं है। कारण यह है कि जब सिस्टम रैम से बाहर चला जाएगा और इसमें से कोई भी स्वैप नहीं कर पाएगा, तो यह हार्ड रीसेट के अलावा रिकवरी के लिए कोई मौका नहीं दे सकता है। यह सिर्फ सस्पेंड होने या न होने के बारे में नहीं है।
स्रोत: मेरा 14.04 ऐसा करता है।

आपको कम से कम स्वैप स्थान रखना चाहिए, संख्याओं के लिए उबंटू FAQ देखें

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