SDB:Оптимизация Ext3
Содержание
Стандартные настройки Ext3
Ext3 это журналируемая файловая система, которая была[1] стандартной во многих дистрибутивах Linux. Её стандартные установки, режим "Journal Ordered" и "atime" могут заставить ее работать медленнее чем XFS или ReiserFS (v3).
Включение режима Writeback
Существует три разных варианта журналирования файловой системы ext3:
- Journal Mode (самый медленный, наиболее безопасный)
- Ordered Mode (средняя скорость, очень безопасный, опция по умолчанию в openSUSE)
- Writeback Mode (наиболее быстрый, относительно безопасный)
openSUSE по умолчанию использует режим Ordered mode, т. к. он обеспечивает наилучший коэффициент скорости и безопасности. Однако, наиболее быстрый режим это режим Writeback mode т. к. он осуществляет наименьшее журналирование. В некоторых случаях это может привести к потери данных (например, при сбоях с электропитанием), но большинство людей предпочитает этот режим из-за быстрой скорости работы. Режим Journaled mode это самый медленный режим, потому что он журналирует все дважды, но в случае если необходимо одновременно писать и читать из диска, то режим journaled mode может значительно увеличить производительность.
Большинство тех людей, которые хотят увеличить производительность ext3 должны использовать режим Writeback mode, но если они уверены в том что они много пишут\читают из диска, то режим Journaled mode подойдет им больше.
Для того чтобы изменить режим журналирования раздела ext3:
1. Загрузите О.С. , откройте файл /etc/fstab в вашем любимом редакторе (рекомендуется kate или gedit). Вам не понадобятся права супер-пользователя.
2. Запишите разделы которые вы хотите оптимизировать, включая разделы содержащие файловые системы / и /home . Примеры включают /dev/hda2 и /dev/hda3, или /dev/sda2 и /dev/sda3.
3. Загрузитесь с помощью LiveCD или LiveDVD.
4. Запустите терминал, konsole или gnome-terminal.
5. Выполните команду, чтобы изменить режим журналирования, заменяя /dev/hda1 настоящей ссылкой на раздел, который вы записали в шаге 2:
- Режим Writeback mode: tune2fs -O has_journal -o journal_data_writeback /dev/hda1
- Режим Journaled mode: tune2fs -O has_journal -o journal_data /dev/hda1
6. Повторите шаг 5 для каждого раздела, который необходимо оптимизировать.
7. Как только закончите, можете перезагрузится в openSUSE Linux.
Включение индексирования директорий (Enabling Directory Indexing)
Индексирование директорий увеличивает скорость чтения и записи в и из директорий вашего жесткого диска. Поскольку они предварительно индексированы (pre-indexed), скорость чтения должна заметно возрасти. Включение директивной индексации безопасно, и рекомендовано.
Чтобы включить индексирование директорий в разделе ext3:
1. Загрузите О.С. , откройте файл /etc/fstab в вашем любимом редакторе (рекомендуется kate или gedit). Вам не понадобятся права супер-пользователя.
2. Запишите разделы которые вы хотите оптимизировать, включая разделы содержащие файловые системы / и /home . Примеры включают /dev/hda2 и /dev/hda3, или /dev/sda2 и /dev/sda3.
3. Загрузитесь с помощью LiveCD или LiveDVD.
4. Запустите терминал, konsole или gnome-terminal.
5. Выполните команду, чтобы изменить режим журналирования, заменяя /dev/hda1 настоящей ссылкой на раздел, который вы записали в шаге 2:
- tune2fs -O dir_index /dev/hda1
6. Выполните команду, чтобы включить индексацию директорий для существующих каталогов, /dev/hda1 с настоящей ссылкой на раздел, который вы записали в шаге 2:
- e2fsck -D /dev/hda1
Выполнение команды e2fsck может занять немного времени, это зависит от размера вашего раздела и количества директорий в нем.
7. Выполните шаги 5 и 6 для каждого раздела, который вы хотите оптимизировать.
8. Как только закончите, можете перезагрузится в openSUSE Linux.
Выключение atime
Каждый раз, когда осуществляется доступ к файлу, чтение или запись, опция atime записывает маленькое изменение к файлу, в котором указывается когда последний раз осуществлялся доступ к файлу. Однако, в ext3, эта опция может замедлить процесс чтения или записи на диск. Выключение atime отменяет обновление информации об последнем доступе к файлу, обновляя информацию только когда файл модифицируется (осуществляется запись). Это увеличивает скорость работы, однако может навредить программам tmpreaper и Mutt, которые используют информацию atime чтобы выполнять некоторые действия.
Если вы обнаружите что выключение этой опции вызвало ошибки, просто включите опцию atime повторно, удалив добавленные строчки в файле fstab. Выключение этой опции не требует размонтирования файловой системы.
Для того чтобы выключить опцию atime на разделе с ext3:
1. Загрузив О.С, запустите терминал.
2. Переключитесь в режим супер-пользователя используя команду su -.
3. Откройте файл /etc/fstab в любом редакторе (рекомендуется nano, kate или gedit). Можно открыть файл выполнив одну из следующих команд: nano /etc/fstab, kate /etc/fstab, или gedit /etc/fstab.
4. Запишите разделы которые вы хотите оптимизировать, включая разделы содержащие файловые системы / и /home . Примеры включают /dev/hda2 и /dev/hda3, или /dev/sda2 и /dev/sda3.
5. В четвертой секции (перед двома номерами в конце строки) вы увидите секцию опций fstab.
6. Введите ",noatime,nodiratime" после существующих опций для каждого раздела который вы хотите оптимизировать.
7. Сохраните файл fstab.
8. Перезагрузитесь.
Ссылки
Информация, которая находится в данной статье была взята из следующих источников:
Пост Codergeek42 на форумах Gentoo
Пост John Markh на форумах SUSEForums.net
Daniel Robbin's paper hosted at IBM.com
Документация FAQ.org по atime и noatime
Пост "Replacing atime with relatime" на KernelTrap.org
Примечания
- начиная с openSUSE 11.2 стандартная файловая система в openSUSE ext4 вместо использовавшейся ранее ext3, смотри: Product highlights 11.2