Лучшие настройки / etc / fstab для улучшения SSD / HDD


12

Я знаю, что EXT4 является самым быстрым из 3-х, уже проверяющих тестовые сообщения в блогах от разных авторов, но есть и другие настройки, которые ускоряют работу SSD, я нашел в http://www.howtogeek.com/62761/how-to-tweak-your-ssd- в-убунту-для-лучшей производительности /

sudo gedit /etc/fstab
add to / partition <options> noatime,nodiratime,
and also if kernel is >2.6.33 also add discard,
tmpfs /tmp tmpfs defaults,noatime,mode=1777 0 0

И https://wiki.ubuntu.com/MagicFab/SSDchecklist

sudo gedit /etc/fstab
add to / partition <options> noatime, and thats it
and data=writeback mounting option if you formatted the disk without journaling. Otherwise add data=ordered which sould be a good compromise between full journaling and none at all.
tmpfs   /tmp  tmpfs  nodev,nosuid,noexec,mode=1777  0 0

почему только noatime? А как узнать, есть ли диск без журналирования с установки? А что быстрее? Нет Jornaling или наоборот? И diff нет данных журнала = обратная запись или данные в журнале = заказано?

И почему tmpfs / tmp отличается в обоих арктиках и как они лучше и почему лучше и почему?

Все это о SSD, но я могу использовать те же настройки в HDD? Я хочу найти ответ для жесткого диска и твердотельного накопителя, так как я сделал один раз сценарии для его настройки в моем https://wiki.ubuntu.com/Kangarooo/AfterCleanInstallation

Ответы:


10

Сайт howtogeek является более ответственным из двух упомянутых вами сайтов. Atime-твики - это просто оптимизация метаданных, которые передаются, когда файл получит определенное обновление метки времени. Он применим независимо от того, какой носитель вы используете, а также от того, насколько чувствительно ваше приложение к согласованности этих метаданных. Большинство пользователей настольных компьютеров не пропустят это.

Что касается отключения журналирования ... это просто безумие. В этом весь смысл использования этих передовых файловых систем: повышение производительности при сохранении целостности данных. Поймите, что если вы совершаете эту сделку, вы обмениваетесь своими личными данными для небольшого увеличения скорости. Я лично не рекомендовал бы это. Большинство людей не имеют хороших резервных копий, чтобы компенсировать этот риск.

Выравнивание разделов имеет значение, но не изменяя этот бит, вы тоже не убьете. Это действительно зависит от того, насколько интенсивно осуществляется доступ к диску. Предполагая, что он не выровнен, если бы у вас было много операций ввода-вывода на регулярной основе (сервер), вы бы увидели улучшение. В среднем использование рабочего стола, кто знает, вероятно, не заметно.

Я бы не стал обращать внимание на ту вики Ubuntu, о которой вы упоминали, за исключением того, что выравнивание разделов является ценным. Вот более ответственная ссылка:

http://www.ibm.com/developerworks/linux/library/l-4kb-sector-disks/index.html?ca=dgr-lnxw074KB-Disksdth-LX

Некоторые из рекомендаций в этой вики Ubuntu просто неверны, например, реконфигурация tmpfs с использованием "nodev". Это уже RAMFS!

Перемещение кеша Firefox в / tmp может увеличить скорость вашего текущего сеанса. Хотя это может быть угрозой безопасности (больше не защищено в вашем доме), и оно будет перестраиваться при каждой загрузке, поскольку tmpfs не является постоянным.

Резюме:

Добавление discardк ext4 является благоразумным, обратная запись является режимом по умолчанию, оставьте настройки журналирования в покое, настройки времени вполне подойдут, и переключение на планировщик дедлайн или nop также может быть полезным, выравнивание разделов необязательно. Остальное нары.


Atime-твики хороши, но в конечном итоге бессмысленны. relaytime - это большой компромисс, который вызовет запись atime, только если файл был изменен с момента последнего обращения к нему. Это значительно сокращает время записи atime без полной потери функциональности atime.
Цезий

1
Я согласен, что relatimeэто лучший компромисс, однако я ограничил свой анализ представленными фактами. Многие из этих настроек действительно не имеют значения, если у вас нет серверных рабочих нагрузок. Я говорю о производительности, а не о выравнивании одежды. Самое важное, что может сделать этот пользователь, - включить discardподдержку. Я владею твердотельным накопителем уже 1,5 года и никогда не настраивал его, прекрасно работает, сам управляю своими сбрасываниями.
ппетраки

1
Почему nodevглупо? Это не дает системе понять, что файловая система является устройством, но предотвращает обработку файлов устройств как устройств. Вы можете протестировать различное использование sudo mknod -m666 test c 1 3(которое создает файл, testкоторый действует как записываемое нулевое устройство, т.е. /dev/null). В файловой системе установлен nodev, echo > testи cat testвыходит из строя, независимо , если вы запустите его как корень или нет.
Лекенстейн

Я знаю, что написано на странице руководства. Не могли бы вы объяснить, как это влияет на производительность, особенно в контексте SSD?
ппетраки

4

Этот discardпараметр больше не предлагается для файловых систем, размещаемых на SSD, поскольку он замедляет работу, поскольку ядро ​​Linux имеет неоптимизированную реализацию команды. (IIRC, запросы TRIM одновременно используют только один сектор ATA, что делает его медленным.)

Вместо этого создайте ежедневное задание cron, которое запускается fstrim -v /(или какими бы ни были ваши разделы SSD). Это решение, которое будет поставляться с Ubuntu 14.04 LTS.


"вариант сброса больше не предлагается" - источник, пожалуйста?
eMPee584

1
… Нашел этот пост от разработчика XFS marc.info/?l=linux-xfs&m=133047907914622&w=2 : «онлайн- сброс не очень хорошая вещь для использования на потребительских твердотельных накопителях […] именно потому, что сброс является очень медленным и не работа с очередями на большинстве аппаратных средств, которые его поддерживают ». Так systemctl enable fstrim.timerоно и есть ..
eMPee584

1

Не включайте noexec в / tmp, иначе вы столкнетесь с проблемой с некоторыми драйверами 3D, которые требуют выполнения из / tmp. Это требование предъявляется к драйверам NVIDIA для современного оборудования. Любое приложение, которое у вас есть, будет иметь ошибку по умолчанию (например, xscreensaver glmatrix), если у вас включена опция noexec.


Так я могу добавить строку без noexec? Как это? tmpfs / tmp tmpfs nodev, nosuid, mode = 1777 0 0
Кенгуру

0

В дополнение к ответу ppetraki , если проблема с износом флэш-памяти, вы должны смонтировать файловую систему RAM для вашей /tmpпапки.

tmpfs /tmp tmpfs defaults,size=15%,mode=1777 0 0
tmpfs /var/tmp tmpfs defaults,size=10%,mode=1777 0 0

Но не перемещайте свои /var/logфайлы в оперативную память, если вы не уверены, что не потерпите крах;) И вы уже установили все свои серверные пакеты, которые создают новые /var/logкаталоги (например, apache), и не хотите, чтобы они исчезали между загрузками :

tmpfs /var/log tmpfs defaults,mode=0755 0 0 
tmpfs /var/log/apt tmpfs defaults 0 0
none /var/cache unionfs dirs=/tmp:/var/cache=ro 0 0

Это смесь ответа JR0cket и других статей в блоге на эту тему.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.