В начало → Тюнинг Gentoo → Ускорение загрузки системы |
Ссылка на оригинал: http://ru.gentoo-wiki.com/Ускорение загрузки системы
Перенесено в: 1.5
Одно из достоинств Gentoo Linux - это возможность настроить и оптимизировать буквально ВСЮ систему, в том числе и её загрузку. Данное направление оптимизации практически неисчерпаемо. При желании (но и при большом риске убить систему) загрузку можно довести и до нескольких секунд. Здесь же мы рассмотрим некоторые наиболее простые и безопасные методы ускорения загрузки.
Первое, что может дать заметный прирост скорости загрузки, это распараллеливание запуска системных сервисов. В файле /etc/conf.d/rc
замените NO
на YES
в переменной RC_PARALLEL_STARTUP
.
Если у вас нет такой переменной, обновите пакет baselayout emerge -u baselayout.
Если эта настройка создаст проблемы при загрузке (некоторые сервисы могут пытаться загрузиться не тогда, когда это нужно),
то верните значение NO
.
Значительно был улучшен механизм параллельного запуска в новых (нестабильных) версиях baselayout echo "sys-apps/baselayout ~x86" >> /etc/portage/package.keywords emerge sync && emerge sys-apps/baselayout -u
Для совсем реактивного запуска используйте initng
#
emerge sys-apps/initng
Если вы часто работаете без подключения к локальной сети, то наверняка заметили, как много времени уходит на определение настроек сети (точнее, на определение того, что настраивать нечего). В этом случае поможет демон ifplugd, который определяет, подключен ли сетевой кабель (точнее, активна ли сеть). Итак:
#
emerge -n ifplugd
теперь добавляем ifplugd в список запускаемых сервисов:
#
rc-update add ifplugd boot
Каждый раз при загрузке Gentoo обновляет зависимости модулей и переменные окружения, разумеется, что это имеет смысл лишь тогда, когда вы действительно внесли изменения в вашу систему. Чтобы это осуществить, сделаем следующие изменения.
Меняем:
Листинг 9. Файл: /etc/init.d/modules
- оригинал
... ebegin "Calculating module dependencies" /sbin/modules-update &>/dev/null eend $? "Failed to calculate dependencies" ...
Листинг 10. Файл: /etc/init.d/modules
- замена
... if [ /etc/modules.d -nt /etc/modules.conf ] then ebegin "Calculating module dependencies" /sbin/modules-update &>/dev/null eend $? "Failed to calculate dependencies" else einfo "Module dependencies are up-to-date" fi ...
Меняем:
Листинг 11. Файл: /etc/init.d/bootmisc
- оригинал
... if [ -x /sbin/env-update.sh ] then ebegin "Updating environment" /sbin/env-update.sh >/dev/null eend 0 fi ...
Листинг 12. Файл: /etc/init.d/bootmisc
- замена
... if [ -x /sbin/env-update.sh ] then if [ /etc/env.d -nt /etc/profile.env ] then ebegin "Updating environment" /sbin/env-update.sh >/dev/null eend 0 else einfo "Environment up-to-date" fi fi ...
При использовании данного трюка следует быть внимательным при обновлении baselayout, т.к. обновление каждый раз будет пытаться вернуть изменения, сделанные вами.
Можно подправить сервис localmount
, чтобы он монтировал локальные файловые системы не одну за другой, а все сразу.
Замените:
В начало → Тюнинг Gentoo → Ускорение загрузки системы |