Чи варто налаштовувати Ext4 у режимі часу?


77

З попередніми версіями Ubuntu (використовуючи файлову систему Ext3) я використовував для настройки її для кращої продуктивності із помітними результатами, встановивши noatimeпараметр в /etc/fstab.

Чи все-таки варто це робити з файловою системою Ext4, яка зараз за замовчуванням в Ubuntu? Якщо так, чи змінилася процедура якимось чином?

Приклад такої настройки можна знайти тут.

Відповіді:


66

У Ubuntu 10.04 relatimeє частиною параметрів монтажу за замовчуванням, якщо це не перекрито в /etc/fstab. Попередні кілька випусків мали relatimeявно в /etc/fstab. relatimeдає таку ж перевагу швидкості (та збереження циклу запису флеш-пам’яті) noatime, що не викликає проблем у старомодних сповіщувачів пошти.

Стаття, яку ви цитуєте, рекомендує data=writeback. За замовчуванням Ubuntu до data=ordered. Налаштування Ubuntu повільніше у випадку великого завантаження диска, але несе в собі значно менший ризик втрати даних у разі збоїв або відключення живлення. Тому я б не рекомендував змінювати за замовчуванням Ubuntu.

Зміна commit=5до commit=100збільшує вікно часу , в протягом якого дані будуть втрачені в разі аварії, для мало користі в більшості випадків.

Підсумок: залиште настройки такими, якими вони є, вони були обрані не просто так.


ДОБАВЛЕНО: Існують інші речі, що не відповідають параметрам кріплення, ніж можуть змінити значення. Перехід від ext3до ext4себе часто є помітним покращенням. Ось ще кілька порад для користувачів ноутбуків.

  • Якщо у вас повільний SSD, перегляньте цю тему в SU . Важливі поради - використовувати tmpfsдля /tmpкеш-пам’ятника браузера та (можливо, історію).

  • Якщо у вас є жорсткий диск, і ви хочете, щоб він переставав обертатися протягом тривалого часу, то встановіть noflushd , який дозволяє диску відкручуватися, затримуючи всі записи, поки оперативна пам'ять не заповниться. (Звичайно, читання можуть спричинити закручування диска; ви захочете звикнути до запуску cat /files/I/m/likely/to/need >/dev/nullдиска.) Для того, щоб noflushd був ефективним, вимкніть всі підкачки та змонтуйте файлові системи чимось на зразок commit=3600.

    Використання noflushd ефективно означає, що ваші дані можуть залишатися неписаними на диску протягом тривалого часу. Це ризик, який слід зважити на користь того, що якийсь час від диска не надходить шум чи тепло. Не використовуйте noflushd, якщо вам це не подобається.


Я розумію небезпеку виправити подібне, деякий крок у тому підручнику, з яким я не згоден, як, comit=100як ви й згадали, теж. Але я готовий взяти на себе кілька помірних ризиків для підвищення продуктивності, оскільки використовую ноутбук і (майже) регулярно створюю резервні копії.
Decio Lira

2
@Decio: noatimevs atimeможе змінити видимість, але я би здивований, що noatimeпроти relatime. До своєї відповіді я додав кілька конкретних порад для ноутбуків; Я особисто спостерігав за цими порадами помітні поліпшення. Noflushd несе ризик, який я був готовий взяти на себе, коли використовував його.
Жиль

Так, я просто гуглив з приводу відмінностей між режимом часу та часу відпочинку, і ти маєш рацію. relatime (який зараз за замовчуванням в ubuntu) є хорошим компромісом між atime і noatime.
Decio Lira

Я читав про data=writeback- він просто записує файлові дані та метадані у випадковому порядку (на відміну від того, orderedщо завжди записує метадані після даних) . Це означає, що при відключенні електроенергії ви можете знайти свій файл α байтів довго, де насправді було записано 0 байт. Ну ... Але це абсолютно природно! Я завжди думав, що файлова система спочатку збільшує розмір файлу, а потім записує дані. Виявлення того, що це може бути в зворотному порядку, вимагає перетворення даного шаблону, щоб додати кешування в ОЗУ. Я не переконаний, чому б не використовувати, writebackякщо це може допомогти покращити затримку.
Привіт-Ангел

17

Так, використання noatimeUbuntu 12.10 все ще може мати сенс

relatimeє типовим параметром кріплення. І relatimeнабагато краще, ніж atime. Перший вимагає написання для першого читання після запису, останнє вимагає написання для кожного прочитаного. Але з noatimeкожним читанням не пишеться.

Це в основному означає, що кількість записів на диск для relatimeмонтажу близьке до подвійного відносно іншого noatimeмонтажу, рівного. Це серйозне занепокоєння розділами на пристроях флеш-пам’яті.

Детальна дискусія спільнотою ядра Linux знаходиться на веб-сайті http://kerneltrap.org/node/14148


3
Коефіцієнт два в цілому неправильний. Теоретично коефіцієнт становить між 1 (нескінченно часто використовуваний файл) і 2 (нескінченно рідко використовуваний файл). Це означає, що справжній фактор в основному дорівнює 1, оскільки рідкісні фактори, близькі до 2, не враховують в середньому.
Патрік Хекер

1 призначений лише для файлів для запису. 2 - для всіх інших. Файли лише для запису немає сенсу, але вони можуть час від часу з’являтися. Тож моя первісна оцінка повинна бути актуальною.
яничар

@yanychar: дякую, що пояснив relatimeнедоліки та ділився дискусією в ядрі, але сказати, що " немає сенсу у файлах лише для запису " - це нісенітниця: всі файли /usrта /libлише для читання. На насправді, більшість з дерева, рубаних /homeі /var, тільки для читання. Файли /etcтакож змінюються дуже рідко.
MestreLion

2
@MestreLion: Ubuntu встановлює багато пакетів. Час від часу оновлення пакетів. Якщо між часом встановлення та оновлення пакета не було прочитаних файлів, файл був "лише для запису". Немає додаткових записів у relatimeпорівнянні noatimeз файлом. Для всього іншого є додаткове записування, коли файл читається.
яничар
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.