דף הבית » איך ל » אובונטו לא טריד SSD על ידי ברירת מחדל למה לא וכיצד ניתן את זה בעצמך

    אובונטו לא טריד SSD על ידי ברירת מחדל למה לא וכיצד ניתן את זה בעצמך

    Ubuntu רוצה לאפשר TRIM עבור SSDs כברירת מחדל באובונטו 14.04. במילים אחרות, אובונטו כבר לא משתמשת ב- TRIM, אז ה- SSD שלך מאט לאורך זמן. אבל למה לא אובונטו כבר משתמש TRIM?

    חדשות אלה צפויות להפתעת אנשים רבים, שהניחו שאובונטו והפצות לינוקס אחרות כבר משתמשות ב- TRIM. TRIM מונע SSDs להאט לאורך זמן הוא חלק הכרחי של תחזוקת SSD.

    למה TRIM הוא חשוב

    אנחנו מכוסים מדוע TRIM חשוב קודם. בעת מחיקת קובץ בכונן קשיח קשיח מגנטי, המחשב פשוט מסמן את הקובץ שנמחק. הנתונים של הקובץ מקלות על הכונן הקשיח - זו הסיבה קבצים שנמחקו ניתן לשחזר. המחשב יהיה בסופו של דבר להחליף את הקבצים שנמחקו כאשר הוא מחליף את המגזרים שלהם עם נתונים חדשים.

    כונני מצב מוצק (SSD) פועלים אחרת. בכל פעם שאתה כותב קובץ ל- SSD, המחשב חייב למחוק תחילה נתונים כלשהם במגזרים שבהם הוא כותב את הנתונים. זה לא יכול רק "להחליף" את המגזרים בפעולה אחת - זה צריך קודם לנקות אותם, ואז לכתוב המגזרים הריקים.

    משמעות הדבר היא כי SSD יהיה להאט לאורך זמן. כתיבה למגזרים של SSD תהיה מהירה בפעם הראשונה. לאחר שתמחק כמה קבצים ונסה לכתוב את זה שוב, זה ייקח יותר. זהו חלק גדול מהסיבה לכך ש- Nexus 7 המקורי של Google הואט כל כך הרבה זמן. Google תיקן זאת על ידי יישום TRIM ב- Android 4.3. (Android משתמש גם בליבת Linux).

    כאשר TRIM מופעל, מערכת ההפעלה מספרת את ה- SSD בכל פעם שהוא מוחק קובץ. הכונן יכול למחוק את המגזרים המכילים את תוכן הקובץ, ולכן כתיבה למגזרים תהיה מהירה בעתיד.

    במילים אחרות, אם אתה לא משתמש TRIM, SSD שלך יאט לאורך זמן. לכן מערכות הפעלה מודרניות, כולל Windows 7+, Mac OS X 10.6.8+ ו- Android 4.3+ משתמשות ב- TRIM. TRIM יושמה ב- Linux בדצמבר 2008, אך אובונטו אינה משתמשת בו כברירת מחדל.

    למה לא אובונטו TRIM על ידי ברירת מחדל?

    הסיבה האמיתית לכך שאובונטו אינה מסירה את SSD כברירת מחדל היא כי יישום הליבה של הלינוקס ב- TRIM הוא איטי ומביא לביצועים ירודים בשימוש רגיל.

    ב- Windows 7 וב- Windows 8, Windows שולח פקודת TRIM בכל פעם שהוא מוחק קובץ, אומר לכונן למחוק מיד את סיביות הקובץ. לינוקס תומכת בכך כאשר מערכות הקבצים מותקנות עם האפשרות "מחק". עם זאת, אובונטו - והפצות אחרות - לא עושים זאת כברירת מחדל מסיבות ביצועים.

    הוויקי של OpenSUSE מכיל מידע מפורט ממפתח שמכיר יותר את הקרנל של לינוקס מאשר אנחנו. זה קצת מתוארך, אבל סביר עדיין עדיין כשמדובר בביצועים:

    "יישום הקרנל של לקצץ בזמן אמת ב 11.2, 11.3, ו 11.4 אינו מותאם. המפרט. קורא לקצץ תמיכה רשימה וקטורית של טווחים לקצץ, אבל כמו הקרנל 3.0 לקצץ הוא מופעל רק על ידי הקרנל עם טווח יחיד / להשליך טווח עם הנוכחי באמצע 2011 SSDs זה הוכיח לגרום לביצועים ביצועים במקום להגדיל את הביצועים. יש כמה סיבות להשתמש הקרנל בזמן אמת לבטל תמיכה עם pre-3.1 גרעינים. זה לא ידוע כאשר הגרעינים להשליך פונקציונליות יהיה מותאם לעבוד בצורה מיטבית עם הדור הנוכחי SSDs. "[מקור]

    במילים אחרות, הליבה של לינוקס מטפלת בפקודות TRIM בזמן אמת באופן איטי ולא מאופנן. הפעלת TRIM דומה לאופן שבו Windows עושה - כלומר, באמצעות האפשרות "להתעלם" - תוצאות המערכת למעשה הופך לאט יותר מאשר אם TRIM לא היו בשימוש בכלל. אובונטו והפצות לינוקס אחרות אינן מאפשרות "למחוק" כברירת מחדל עבור מערכות הקבצים שלך, וגם אתה לא צריך.

    יש דרך אחרת

    מכיוון שמדובר בזמן אמת במחקרי TRIM של לינוקס, "רוב הפצות הלינוקס - כולל אובונטו - אינן משתמשות ב- TRIM באופן אוטומטי. Android גם לא השתמש ב- TRIM עד 4.3 של Android.

    אבל יש דרך אחרת להשתמש TRIM. במקום פשוט להנפיק את הפקודה TRIM בכל פעם הקובץ נמחק, תכונה FITRIM ניתן להשתמש. זה קורה דרך הפקודה fstrim. בעיקרו של דבר, הפקודה fstrim מנתחת את מערכת הקבצים ומודעת את הכונן שבו בלוקים הם כבר לא נחוץ, ולכן הכונן יכול להשליך אותם. פעולה זו הופכת את TRIM לפעולה בזמן אמת למשימה מתוזמנת. במילים אחרות, fstrim יכול לבצע TRIM כמו עבודה cron. אין שום סיבה שלא לעשות את זה. זה לא יאט שום דבר; זה רק עוד משימה housecaning המערכת יש לבצע על לוח זמנים.

    למעשה, זוהי הגישה שבה נקטה Google עם Android 4.3. אנדרואיד פשוט מפעיל משימה fstrim מדי פעם כדי TRIM את מערכת הקבצים, לתקן את הבעיה כי הואט את כל אלה Nexus 7s המקורי.

    אובונטו גם בוחנת את הפעלת TRIM באופן אוטומטי על ידי כך שהמערכת מפעילה באופן קבוע fstrim. זה יהיה בתקווה להיות חלק Ubuntu 14.04 אז משתמשים אובונטו לא ייאלצו להתמודד עם הביצועים SSD השפלה או לרוץ fstrim על שלהם.

    כיצד להפעיל TRIM

    אנחנו לא ממליצים הרכבה של מערכות הקבצים שלך עם הפעולה "להשליך", שכן זה צפוי לגרום ביצועים איטיים יותר בשימוש רגיל. עם זאת, אתה יכול להשתמש TRIM עצמך על ידי הפעלת מדי פעם את הפקודה fstrim או יצירת cronjob שלך שפועל fstrim על לוח זמנים.

    כדי לסדר את SSD על אובונטו, פשוט לפתוח מסוף ולהפעיל את הפקודה הבאה:

    sudo fstrim -v /

    ניתן להפעיל את הפקודה לעיל מדי פעם כדי למנוע השפלה בביצועים על SSD. כמה פעמים אתה צריך להפעיל את זה תלוי כמה פעמים קבצים נמחקים SSD שלך. תראה שגיאה אם ​​תנסה להפעיל את הפקודה באמצעות כונן שאינו תומך ב- TRIM.

    אם אתה רוצה להפעיל TRIM באופן קבוע, אתה יכול פשוט ליצור cronjob שמפעיל את הפקודה fstrim בשבילך. הנה איך לעשות עבודה cron עצמות כי יעשה את זה באופן אוטומטי.

    ראשית, הפעל את הפקודה הבאה כדי לפתוח את עורך הטקסט nano עם הרשאות root:

    sudo nano /etc/cron.daily/fstrim

    הקלד את הקוד הבא לקובץ:

    #! / bin / sh

    fstrim /

    שמור את הקובץ על ידי הקשה על Ctrl + O והקש על Enter כדי לאשר. הקש Ctrl + X כדי לסגור את nano לאחר שמירת הקובץ.

    לבסוף, הפעל את הפקודה הבאה כדי להפעיל את קובץ ה- script:

    sudo chmod + x /etc/cron.daily/fstrim

    אובונטו תפעיל את fstrim על לוח זמנים, בדיוק כפי שהיא עושה משימות אחרות של תחזוקת המערכת.


    שים לב כי TRIM נתמך רק על מערכות קבצים מודרניים, אז תצטרך משהו כמו ext4 ולא ext3 או ext2. אם אינך יודע איזו מערכת קבצים אתה משתמש, אל תדאג - ext4 מסומנת כברירת מחדל.

    חלק גדול מעצה זו חל גם על הפצות לינוקס אחרות. בעוד ש- Linux אכן יישמה את תמיכת ה- TRIM בקרנל לפני זמן רב, נראה שתמיכה ב- TRIM מעולם לא הופעלה כברירת מחדל עבור משתמשים טיפוסיים בהפצות לינוקס.

    אשראי תמונה: Mace Ojala על Flickr (קצוץ)