Ubuntu 14.04 में डिफ़ॉल्ट रूप से SSDs के लिए TRIM को सक्षम करना चाहता है। दूसरे शब्दों में, Ubuntu पहले से ही TRIM का उपयोग नहीं कर रहा है, इसलिए आपका SSD समय के साथ धीमा हो रहा है। लेकिन उबंटू पहले से ही TRIM का उपयोग क्यों नहीं कर रहा है?
यह खबर संभवतः कई लोगों के लिए एक आश्चर्य के रूप में आएगी, जिन्होंने माना कि उबंटू और अन्य लिनक्स वितरण पहले से ही टीआरआईएम का उपयोग कर रहे थे। TRIM समय के साथ SSDs को धीमा होने से रोकता है और SSD रखरखाव का एक आवश्यक हिस्सा है।
क्यों TRIM महत्वपूर्ण है
हमने कवर किया TRIM क्यों महत्वपूर्ण है इससे पहले। जब आप किसी पुराने, चुंबकीय हार्ड ड्राइव पर एक फ़ाइल को हटाते हैं, तो कंप्यूटर बस उस फ़ाइल को हटाए गए के रूप में चिह्नित करता है। फ़ाइल का डेटा हार्ड ड्राइव पर चिपक जाता है - वह क्यों हटाई गई फ़ाइलें पुनर्प्राप्त की जा सकती हैं । जब यह नए डेटा के साथ अपने क्षेत्रों को अधिलेखित करता है, तो कंप्यूटर अंततः हटाए गए फ़ाइलों को अधिलेखित कर देगा।
सॉलिड-स्टेट ड्राइव (SSDs) अलग तरीके से काम करते हैं । जब भी आप SSD के लिए एक फाइल लिखते हैं, तो कंप्यूटर को सबसे पहले उन क्षेत्रों में किसी भी डेटा को मिटाना होगा जो डेटा को लिख रहा है। यह केवल एक ऑपरेशन में सेक्टरों को "अधिलेखित" नहीं कर सकता है - इसे पहले उन्हें खाली करना होगा, फिर खाली क्षेत्रों को लिखना होगा।
इसका मतलब है कि एक एसएसडी समय के साथ धीमा हो जाएगा। SSD के क्षेत्रों में लिखना पहली बार त्वरित होगा। आपके द्वारा कुछ फ़ाइलों को हटाने के बाद और इसे फिर से लिखने का प्रयास करें, इसमें अधिक समय लगेगा। Google के मूल Nexus 7 के समय के साथ इतना धीमा हो जाने का यह एक बड़ा हिस्सा है। Google ने Android 4.3 में TRIM को लागू करके इसे ठीक किया। (Android लिनक्स कर्नेल का भी उपयोग करता है।)
TRIM सक्षम होने के साथ, ऑपरेटिंग सिस्टम SSD को हर बार किसी फ़ाइल को हटाने के बारे में बताता है। ड्राइव तब फ़ाइल की सामग्री वाले क्षेत्रों को मिटा सकती है, इसलिए भविष्य में सेक्टरों को लिखना त्वरित होगा।
दूसरे शब्दों में, यदि आप TRIM का उपयोग नहीं करते हैं, तो आपका SSD समय के साथ धीमा हो जाएगा। यही कारण है कि विंडोज 7+, मैक ओएस एक्स 10.6.8+ और एंड्रॉइड 4.3+ सहित आधुनिक ऑपरेटिंग सिस्टम, TRIM का उपयोग करते हैं। टीआरआईएम को दिसंबर 2008 में लिनक्स में लागू किया गया था, लेकिन उबंटू डिफ़ॉल्ट रूप से इसका उपयोग नहीं कर रहा है।
सम्बंधित: एक ठोस राज्य ड्राइव (SSD) क्या है, और क्या मुझे एक की आवश्यकता है?
डिफ़ॉल्ट रूप से Ubuntu TRIM क्यों नहीं है?
मूल कारण उबंटू डिफ़ॉल्ट रूप से TRIM SSDs नहीं है, क्योंकि लिनक्स कर्नेल का TRIM का कार्यान्वयन धीमा है और सामान्य उपयोग में खराब प्रदर्शन का परिणाम है।
विंडोज 7 और 8 पर, विंडोज हर बार एक फ़ाइल हटाते समय TRIM कमांड भेजता है, जो ड्राइव को फ़ाइल के बिट्स को तुरंत हटाने के लिए कहता है। जब फाइल सिस्टम "त्याग" विकल्प के साथ आरोहित होता है तो लिनक्स इसका समर्थन करता है। हालाँकि, उबंटू - और अन्य वितरण - प्रदर्शन कारणों से डिफ़ॉल्ट रूप से ऐसा नहीं करते हैं।
OpenSUSE के विकी में एक डेवलपर की कुछ विस्तृत जानकारी होती है, जो हमारे द्वारा लिनक्स कर्नेल से अधिक परिचित हैं। यह थोड़ा दिनांकित है, लेकिन जब यह प्रदर्शन की बात आती है, तब भी संभव है:
“11.2, 11.3, और 11.4 में रियलटाइम ट्रिम का कर्नेल कार्यान्वयन अनुकूलित नहीं है। युक्ति। ट्रिम श्रेणियों की एक वेक्टर सूची का समर्थन करने वाले ट्रिम के लिए कॉल करता है, लेकिन कर्नेल के रूप में 3.0 ट्रिम केवल कर्नेल द्वारा एक ही त्याग / ट्रिम रेंज के साथ आह्वान किया जाता है और वर्तमान मध्य एसएसडी के साथ यह एक प्रदर्शन वृद्धि के बजाय प्रदर्शन में गिरावट का कारण साबित हुआ है। कर्नेल का उपयोग करने के कुछ कारण हैं, जो प्री-3.1 कर्नेल के साथ समर्थन को त्याग देते हैं। यह ज्ञात नहीं है कि गुठली की कार्यक्षमता कब खत्म होती है, इसे वर्तमान पीढ़ी के एसएसडी के साथ लाभप्रद रूप से काम करने के लिए अनुकूलित किया जाएगा। ” [ स्रोत ]
दूसरे शब्दों में, लिनक्स कर्नेल इस तरह के रियल-टाइम TRIM कमांड को धीमे, अनचाहे तरीके से हैंडल करता है। टीआरआईएम को सक्षम करना विंडोज कैसे करता है - यानी, "त्यागें" विकल्प का उपयोग करना - सिस्टम में परिणाम वास्तव में धीमा हो जाता है अगर टीआरआईएम का उपयोग नहीं किया गया था। उबंटू और अन्य लिनक्स वितरण आपके फ़ाइल सिस्टम के लिए डिफ़ॉल्ट रूप से "त्याग" को सक्षम नहीं करते हैं, और आपको या तो नहीं करना चाहिए।
वहाँ एक और तरीका है
क्योंकि लिनक्स कर्नेल का वास्तविक समय "त्याग" TRIM ऑपरेशन अच्छा प्रदर्शन नहीं करता है, अधिकांश लिनक्स वितरण - उबंटु सहित - स्वचालित रूप से TRIM का उपयोग नहीं करते हैं। Android ने Android 4.3 तक TRIM का उपयोग नहीं किया।
लेकिन TRIM का उपयोग करने का एक और तरीका है। हर बार फ़ाइल हटाए जाने के बाद केवल TRIM आदेश जारी करने के बजाय, FITRIM सुविधा का उपयोग किया जा सकता है। यह फ्रॉस्टिम कमांड के माध्यम से होता है। अनिवार्य रूप से, फ्रॉस्टिम कमांड फाइल सिस्टम का विश्लेषण करता है और ड्राइव को सूचित करता है कि किन ब्लॉकों की अब आवश्यकता नहीं है, इसलिए ड्राइव उन्हें त्याग सकती है। यह TRIM को वास्तविक समय के संचालन से एक निर्धारित कार्य में बदल देता है। दूसरे शब्दों में, फ्रॉस्टिम एक क्रॉन जॉब के रूप में टीआरआईएम का प्रदर्शन कर सकता है। ऐसा नहीं करने का कोई कारण नहीं है। यह कुछ भी धीमा नहीं है; यह सिर्फ एक और घर का काम है जिसे सिस्टम को एक शेड्यूल पर करना है।
सम्बंधित: मेरा नेक्सस 7 इतना धीमा क्यों है? इसे फिर से ऊपर करने के लिए 8 तरीके
वास्तव में, यह वह तरीका है जो Google ने एंड्रॉइड 4.3 के साथ लिया था। एंड्रॉइड बस फ़ाइल सिस्टम को ठीक करने के लिए कभी-कभी एक फ़्रीस्टिम कार्य चलाता है, फिक्सिंग समस्या जो उन सभी मूल नेक्सस 7s को धीमा कर देती है .
उबंटू भी सिस्टम को नियमित रूप से चलाने के लिए ट्रिम को स्वचालित रूप से सक्षम करने के लिए देख रहा है। यह उम्मीद है कि यह उबंटू 14.04 का हिस्सा होगा, इसलिए उबंटू उपयोगकर्ताओं को एसएसडी के प्रदर्शन में गिरावट से निपटने के लिए मजबूर नहीं किया जाएगा या वे अपने दम पर रन बना सकते हैं।
TRIM को कैसे इनेबल करें
हम आपकी फ़ाइल सिस्टम को "त्याग" ऑपरेशन के साथ माउंट करने की अनुशंसा नहीं करते हैं, क्योंकि इससे सामान्य उपयोग में धीमी प्रदर्शन की संभावना होगी। हालाँकि, आप TRIM का उपयोग कभी-कभार फ्रॉस्टिम कमांड चलाकर या अपने क्रॉन्जोब को बनाकर कर सकते हैं जो एक शेड्यूल पर फ़्रास्टिम चलाता है।
Ubuntu पर अपने SSD को ट्राइ करने के लिए, बस एक टर्मिनल खोलें और निम्न कमांड चलाएँ:
सूडो फाल्स -v /
एसएसडी पर प्रदर्शन में गिरावट को रोकने के लिए आप कभी-कभी उपरोक्त आदेश चला सकते हैं। आपको कितनी बार चलाने की आवश्यकता है यह इस बात पर निर्भर करता है कि आपके एसएसडी से कितनी बार फाइलें हटाई जाती हैं। यदि आप TRIM का समर्थन नहीं करने वाली ड्राइव के साथ कमांड चलाने का प्रयास करते हैं, तो आपको एक त्रुटि दिखाई देगी।
यदि आप नियमित रूप से टीआरआईएम चलाना चाहते हैं, तो आप बस एक क्रोनजॉब बना सकते हैं जो आपके लिए फ्रॉस्टिम कमांड चलाता है। यहां बताया गया है कि नंगे पैर क्रोन जॉब कैसे बनाया जाता है जो यह स्वचालित रूप से करेगा।
सबसे पहले, खोलने के लिए निम्न कमांड चलाएँ नैनो पाठ संपादक रूट अनुमतियों के साथ:
सूडानो / एटक / सी रॉन। दैनिक / fst रिम
फ़ाइल में निम्न कोड टाइप करें:
#! / Bin / श
फ्रस्ट्रिम /
Ctrl + O दबाकर फ़ाइल सहेजें और पुष्टि करने के लिए Enter दबाएँ। फ़ाइल को सहेजने के बाद नैनो को बंद करने के लिए Ctrl + X दबाएँ।
अंतिम, स्क्रिप्ट को निष्पादन योग्य बनाने के लिए निम्नलिखित कमांड चलाएँ:
सुडो चामोद + x /etc/cron.daily/fstrim
उबंटू अब एक शेड्यूल पर फ्रॉस्टिम चलाएगा, जैसा कि यह अन्य सिस्टम रखरखाव कार्यों को करता है।
ध्यान दें कि TRIM केवल आधुनिक फ़ाइल सिस्टम पर समर्थित है, इसलिए आपको ext4 या ext3 या ext2 जैसी किसी चीज़ की आवश्यकता होगी। यदि आपको पता नहीं है कि आप किस फ़ाइल सिस्टम का उपयोग कर रहे हैं, तो चिंता न करें - ext4 डिफ़ॉल्ट रूप से चयनित है।
इस सलाह का अधिकांश अन्य लिनक्स वितरण पर भी लागू होता है। जबकि लिनक्स ने TRIM सपोर्ट को कर्नेल में बहुत पहले लागू कर दिया था, लेकिन इसका TRIM सपोर्ट ऐसा प्रतीत होता है कि लिनक्स में सामान्य उपयोगकर्ताओं के लिए डिफ़ॉल्ट रूप से सक्षम नहीं है।
छवि क्रेडिट: फ्लिकर पर गदा ओझाला (क्रॉप)