Данная статья - вольный перевод англоязычной HowTo: Speed up ubuntu boot process - the way you can feel it с урезаниями, изменениями и добавлениями.
Эта инструкция предназначена для тех, кто считает скорость загрузки Ubuntu недостаточно быстрой, но не хочет устанавливать никакие приложения и утилиты для её ускорения. Метод, который я использую, не является исчерпывающим руководством, но он действительно работает и приводит к ощутимому результату. Всё описанное ниже происходит путём настройки процесса загрузки непосредственно, и из-за отличия разных компьютеров есть небольшой риск, что что-то может вывести вашу систему из строя. Вы берёте на себя всю ответственность за последствия использования данной инструкции. Также было бы неплохо перед изменениями всегда иметь резервную копию каталога /etc.
Эта инструкция предназначена для ноутбуков и рабочих станций, не для серверов.
Советы
- Я надеюсь, что вы чему-нибудь здесь научитесь, а не просто повторите действия. Поэтому, пожалуйста, НЕ делайте всё в точности как я. Читайте описания служб и решайте сами, какую из них оставить включённой, а какую выключить. Например, для себя я выключил GDM, чтобы загружаться прямо в консоль. Если вы в консоли работать не умеете или хотите загружаться в графику - оставьте службу GDM (или KDM) включённой.
- Если у вас возникли вопросы по загружаемой службе и вы не вполне уверены что она делает - оставьте вопрос в комментариях или найдите информацию в поисковиках. Разбирайтесь в том, что вы делаете, до того, как сделаете это. Если вы не понимаете для чего нужна та или иная служба - оставьте её значение по умолчанию, вместо того, чтобы выключать.
- Если у вас в списке есть служба, описания которой нет здесь - оставьте её имя и описание в комментариях, статья будет постоянно обновляться.
Подготовка
I. Устанавливаем утилиту sysv-rc-conf. Она написана на перле и нужна для управления службами при загрузке.
Она упростит настройку процесса загрузки и настройку уровней запуска служб.
II. Это всё, что нам нужно. Теперь запускаем утилиту
и исследуем службы одну за другой. Некоторых служб, которые есть у меня, у вас может не быть - ну и хорошо. Если наоборот, у вас есть служба, которой нет здесь - разберитесь с ней самостоятельно или спросите в комментариях.

Уровни выполнения процессов
Немножко об уровнях выполнения, прежде чем мы начнём их править.
Скрипты запускаемых служб в Ubuntu Linux располагаются в каталогах /etc/rcN.d/, где N - уровень выполнения. Уровни выполнения - это варианты загрузки или выключения системы, в соответствии со следующей таблицей:
Уровень | Описание |
---|---|
1 | Однопользовательский режим работы. Система инициализирует минимум служб и даёт единственному пользователю (как правило, суперпользователю) без проведения аутентификации командную строку. Как правило, этот режим используется для восстановления системы. Запускаются все процессы из /etc/rc1.d |
2 | Многопользовательский режим. Пользователи могут работать на разных терминалах, вход в систему с процессом аутентификации |
3 | Многопользовательский сетевой режим. В отличие от предыдущего уровня, осуществляется настройка сети и запускаются различные сетевые службы |
4 | Не имеет стандартного толкования и практически не используется |
5 | Запуск графической подсистемы. По сравнению с уровнем 3 производится также старт графической подсистемы X11. Вход в систему осуществляется уже в графическом режиме |
6 | Перезагрузка системы. При включении этого режима останавливаются все запущенные программы и производится перезагрузка |
0 | Остановка системы (halt). Работа системы должна быть прекращена |
S | Первый уровень в процессе загрузки. Будет запущен скрипт /etc/init.d/rcS и все процессы в /etc/rcS.d. |
Ну что же, теперь мы готовы вернуться к использованию утилиты sysv-rc-conf.
Настройка
Цветовая дифференциация: включенные службы; выключенные службы.
- acpi-support - Лучше оставить уровень по умолчанию. То есть: 2,3,4,5.
- acpid - Демон acpi. Этот и предыдущий процессы отвечают за управление питанием и очень важны и для ноутбуков, и для рабочих станций, так что лучше оставить их включенными. По умолчанию: 2,3,4,5.
- adjtimex - Инструмент для тонкой подстройки часов в ядре. Обычно в списке загрузки его нет. В исключительных случаях, если он всё же находится в этом списке, значит тому были веские причины и лучше оставить его включенным.
- alsa - Если используется звуковая подсистема alsa, то да, запуск надо оставить. Но если у вас есть служба alsa-utils, то эту можно отключить. По умолчанию: выключена, если включена alsa-utils.
- alsa-utils - В моей системе эта служба заменяет alsa, так что я выключил alsa и включил эту на уровне S. -Примечание- Говоря «Выключил» я подразумеваю - снял все «X» со всех уровней выполнения. Если у вас их и не было - замечательно. Продолжаем настройку. По умолчанию: уровень выполнения S.
- anacron - Подсистема cron, которая выполняет любую его задачу, которая не была выполнена вовремя. Чаще всего такое случается, если в момент наступления задачи по cron ваш компьютер был выключен. Например, updatedb запланирован каждый день на 2 часа ночи, но в это время компьютер не работал. При запуске компьютера anacron попытается определить пропущенные задачи и выполнит их. Я убрал эту службу, поскольку не так часто выключаю свой ноутбук, но в большинстве случаев она должна быть включена. По умолчанию: 2,3,4,5.
- apmd - Эта служба меня немного смутила. У меня уже включен acpid, так зачем мне включать ещё и apmd? Если ваш компьютер не настолько старый, чтоб даже не поддерживать acpi, попробуйте отключить эту службу. Я отключил. По умолчанию: 2,3,4,5.
- atd - Планировщик, наподобие cron. Я отключил. По умолчанию: 2,3,4,5.
- binfmt-support - Поддержка ядром других форматов бинарников. Я оставил. По умолчанию: 2,3,4,5.
- bluez-utiles - Я выключил. У меня нет устройств bluetooth. По умолчанию: 2,3,4,5.
- bootlogd - Оставьте запускаться. По умолчанию: S.
- cron - Тоже надо оставить. По умолчанию: 2,3,4,5.
- cupsys - Подсистема для управления принтером. У меня принтера нет, так что я смело отключил, но вы смотрите по обстоятельствам. По умолчанию: 2,3,4,5.
- dbus - Система сообщений (Message bus system). Очень важна, оставьте включённой. По умолчанию: 2,3,4,5.
- dirmngr - Утилита управления списками сертификатов. Работает заодно с gnupg. По умолчанию: 2,3,4,5.
- dns-clean - В основном служит для очистки DNS при использовании соединений dial-up. У меня нет dial-up, так что я выключил. По умолчанию: S.
- evms - (Enterprise Volume Management System) - система управления томами для ОС Linux. EVMS предлагает единые унифицированные механизмы для управления дисками, дисковыми разделами, файловыми системами, физическими томами LVM ит.д. Я выключил. По умолчанию: S.
- fetchmail - Демон доставки электронной почты. Я выключил. По умолчанию: 2,3,4,5.
- gdm - Менеджер рабочего стола (Gnome Desktop Manager). Я его в любом случае уже выключил, когда решил загружаться в консоль. В данном случае - дело предпочтений, так что решать вам, хотите ли вы загружаться напрямую в GUI. По умолчанию: 2,3,4,5.
- gdomap - Я понятия не имею, зачем этот процесс должен запускаться. Я не видел этого демона больше ни в одной системе, так что я его выключил и не чувствую какой-либо утраты. Есть какие-нибудь причины для его использования на ноутбуках или рабочих станциях? По умолчанию: 2,3,4,5.
- gpm - Поддержка мыши для консоли. Если вы чувствуете, что не можете обойтись без мыши в консоли - поставьте уровень выполнения 1 и 2. Это всё, что нужно. По умолчанию: 2,3,4,5.
- halt - Не менять. По умолчанию: 0.
- hdparm - Скрипт для подстройки жёсткого диска. Я отключил уровни 2,3,4,5, но установил уровень S. Я полагаю, что открытие DMA, 32-битного ввода-вывода и т.д. принесёт пользу остальным процессам. Также я сменил родной скрипт на очень простой, который сделал самостоятельно. Я думаю, не стоит производить все эти избыточные проверки, если я сам знаю, что делаю. Файл конфигурации - /etc/hdparm.conf. По умолчанию: 2,3,4,5.
- hibernate - Если ваша система поддерживает спящий режим - оставьте службу работать. В противном случае она бесполезна. По умолчанию: S.
- hotkey-setup - Этот демон включает некоторые специфические горячие клавиши в ноутбуках. Есть заводская поддержка: HP, Acer, ASUS, Sony, Dell, и IBM. Если у вас ноутбук этих производителей, можно оставить службу запускаться, в противном случае её запуск будет бесполезен. По умолчанию: 2,3,4,5.
- hotplug и hotplug-net - Включение подсистем hotplug занимает время. Я бы задумался, включать ли их вообще. Я сделал несколько изменений в своём файле /etc/network/interfaces. Вместо того, чтобы адресовать свою беспроводную карту в процессе hotplug, я включил её в автоматический режим. Таким образом, я могу отключить эти процессы. Я удостоверился, что даже при их отключении, ubuntu находит драйверы usb, цифровой камеры и так далее. Так что, думаю, отключение этих процессов достаточно безопасно. -Примечание- Если после отключения hotplug ваша звуковая карта перестала работать, можно включить его обратно. Или можно отредактировать файл /etc/modules, чтобы добавить модуль драйвера звуковой карты. Более поздние работают быстрее, проверено. По умолчанию: S.
- hplip - Подсистема печати и обработки изображений HP. Я отключил. По умолчанию: S.
- hwtools - Утилита для оптимизации irq.
- ifrename - Скрипт по именованию сетевых интерфейсов. Звучит красиво, но я отключил. Нужен, в основном, для управления именами нескольких сетевых интерфейсов. С тех пор, как у меня две сетевые карты - беспроводная и проводная - они обозначены ядром как eth0 и ath0, так что процесс для меня бесполезен. По умолчанию: S.
- ifupdown и ifupdown-clean - Не отключайте. Это скрипты для включения сетевых интерфейсов при загрузке. По умолчанию: ifupdown - 0,6,S и ifupdown-clean - S.
- inetd или inetd.real - Посмотрите в файл /etc/inetd.conf и закомментируйте все службы, которые вам не нужны. Если активных служб после этого не осталось - демон можно смело убирать из запуска. По умолчанию: 2,3,4,5.
- klogd - Не выключать. По умолчанию: 2,3,4,5.
- laptop-mode - Служба для проверки в ноутбуке: не пора ли выкинуть батарею. Бесполезна для стационарного компьютера. По умолчанию: 2,3,4,5.
- libpam-devperm - Демон для восстановления прав доступа к файлам-устройствам после сбоя системы.
- linux-restricted-modules-common - Нужно посмотреть, не загружены ли несвободные модули в систему. Эти модули можно найти в /lib/linux-restricted-modules. Если такие модули не используются - можно смело отключать демона. По умолчанию: 0,6,S.
- lm-sensors - Если материнская плата поддерживает сенсорные чипы, можно посмотреть их состояние.
- lvm - Я не использую, потому отключил. Оставьте, если у вас есть lvm. По умолчанию: S.
- makedev - Не отключать. По умолчанию: 2,3,4,5.
- mdamd - Инструмент для управления устройствами RAID. В большинстве случаев можно отключить. По умолчанию: 2,3,4,5.
- mdamd-raid - Инструмент RAID. По умолчанию: S.
- module-init-tools - Загружает дополнительные модули из файла /etc/modules. Можно посмотреть его содержимое на наличие ненужных модулей. Обычно включен. По умолчанию: S.
- mountvirtfs - Монтирование виртуальных файловых систем. Не отключать. По умолчанию: S.
- networking - Поднимает сетевые интерфейсы и конфигурирует DNS при загрузке, путём сканирования файла /etc/network/interfaces. Отключать не стоит. По умолчанию: 0,6,S.
- ntpdate - Синхронизирует время с сервером времени ubuntu (или заданным другим). По умолчанию: S. -Примечание- Если второй системой стоит Windows, лучше оставить процесс включённым. Windows хранит в биосе не универсальное (по гринвичу), а локальное время и при перезагрузке из одной системы в другую они будут пытаться корректировать друг друга. В последних версиях эта проблема вроде бы исправлена.
- nvidia-kernel - Я собирал драйвер nvidia самостоятельно, поэтому мне служба не нужна. Если используете несвободный драйвер nvidia - оставьте службу включённой. По умолчанию: 1,2,3,4,5.
- pcmcia - Активирует устройство PCMCIA. Я поставил уровень выполнения в 0,6,S вместо умолчательных 2,3,4,5, поскольку, по моему мнению, оборудование надо подключать в первую очередь. С другой стороны, если устройства PCMCIA не используются, то и службу можно отключать.
- portmap - Демон для управления такими службами, как nis, nfs, и т.д. По умолчанию: 2,3,4,5,0,6,S.
- powernowd - Клиент для управления cpufreq. Нужен в основном для ноутбуков с поддержкой технологиии изменения частоты процессора. Полезен для ноутбуков и наоборот для стационарных компьютеров. По умолчанию: 2,3,4,5.
- ppp и ppp-dns - Мне не нужно. У меня нет dial-up. По умолчанию: ppp - 2,3,4,5 и pppd-dns - S.
- readahead - Похоже, readahead это разновидность «предзагрузчика». Загружает при старте несколько библиотек в оперативную память, что позволяет некоторым программам быстрее стартовать. Но увеличивает время загрузки системы на 3-4 секунды. По умолчанию: S.
- reboot - Не менять. По умолчанию: 6.
- resolvconf - Автоматически настраивает DNS в соответствии со статусом сети. По умолчанию: S.
- rmnologin - Убирает nologin, если находит. У меня такого не будет, я убрал. По умолчанию: 2,3,4,5.
- rsync - Демон rsync. Можно убрать, если не уверены, что он вам нужен. По умолчанию: 2,3,4,5.
- screen-cleanup - Скрипт для очистки экрана при загрузке. По умолчанию: S.
- sendsigs - Посылает сигналы в процессе перезагрузки и выключения. Оставьте как есть. По умолчанию: 0,6.
- single - Активирует однопользовательский режим. Не отключать. По умолчанию: 1.
- ssh - Демон ssh. Лучше выключить, если не уверены в обратном. По умолчанию: 2,3,4,5.
- stop-bootlogd - Останавливает bootlogd с уровней выполнения 2,3,4,5. Оставьте как есть. По умолчанию: 2,3,4,5.
- sudo - Проверяет состояние sudo. Я не вижу причин этому демону быть запущенным ни на ноутбуке, ни на стационарной машине. По умолчанию: S.
- sysklogd - Оставьте как есть. По умолчанию: 2,3,4,5.
- udev и udev-mab - Пользовательская файловая система. По умолчанию: S.
- umountfs - Оставьте как есть. По умолчанию: 0,6.
- urandom - Генератор случайных чисел. Нельзя угадать какому приложению, особенно в графике, может понадобиться. По умолчанию: 0,6,S.
- usplash - Картинка при загрузке системы, с индикатором загрузки. Для полного отключения надо редактировать файл /boot/grub/menu.lst: закомментировать строку splashimage и убрать опцию splash из строки загрузки ядра. По умолчанию: 2,3,4,5.
- vbesave - Утилита для настройки BIOS видеокарты. По умолчанию: 2,3,4,5.
- xinetd - Сверхдемон inetd для управления другими демонами. Включать имеет смысл только в том случае, если есть демоны под его управлением.
- xorg-common - Устанавливает сокет ICE для графического сервера. По умолчанию: 2,3,4,5.
Описания процессов практически полностью взяты из англоязычной статьи, которая писалась для другой версии Ubuntu, но большая часть информация верна и для Ubuntu 9.04. Со временем я постараюсь избавиться от манеры изложения оригинала и дополню описания.
Дополнительно
Как уже было сказано, процессы, а вернее ссылки на них, лежат в папках вида /etc/rcN.d, где N может принимать значения от 0 до 6 или может быть равно S. Названия ссылок, лежащих в этих папках, имеют следующий формат: символ «S» или «K», две цифры, образующие число, и в конце - название процесса.
Ссылка, начинающаяся с «S» соответствует запуску системы, а с «K» - её остановке.
Число соответствует порядку запуска при старте (или остановке) системы. В классическом варианте, если процесс требует как процедуры запуска, так и остановки, то числа, следующие после «S» и «K» дадут для него в сумме 100. Например, ссылке S03имя_процесса для запуска будет соответствовать ссылка K97имя_процесса для остановки. Это делается для того, чтобы процессы останавливались в порядке, обратном запуску.
Парные ссылки «S» и «K» указывают на один и тот же скрипт в /etc/init.d/, который должен быть написан в определённом формате. Об этом - как-нибудь в следующий раз.
Ссылки
http://ubuntuforums.org/showthread.php?t=89491
Хитрости запуска служб в Linux
Комментарии
DwarfRka
#cid86
Ответить
а Ubuntu и на серверах крутят? (Ленинский прищур :))
#cid103
Ответить
[ржот]
В основном это для того, чтоб на медленных тачках запускать.
[задумался]
Я знаю людей, у которых шлюзы работают на винде с исой и керио.
Сервер на бубунте на этом фоне выглядит верхом стабильности.
Sweweffed
#cid641
Ответить
Должен признать, тот кто писал ништяк накропал.
Ramon
#cid700
Ответить
Интерено спасибо!
> Я понятия не имею, зачем этот процесс должен запускаться
gdomap - некий "Сопоставитель распределённых объектов GNUstep (GDOMAP)". Может какая-то фишка для программ на Objective-C? Не понятно. В нете ничего вразумительного про него не нашёл. А вот порты открывает:
~$ sudo lsof -i
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
gdomap 1052 nobody 3u IPv4 8286 0t0 UDP *:gdomap
gdomap 1052 nobody 4u IPv4 8287 0t0 TCP *:gdomap (LISTEN)
Поэтому убрал.
prairiewolf
#cid5222
Ответить
Если есть следящие за темой - не могу накопать практически ничего (вероятно, еще мало копал?) по демону dcerpcd.
Может подскажете - для чего нужен?
А то при запуске системы он, видимо, гнездится в память, а при выключении он "замораживает" корректное выключение ноута.
Спасибо за помощь, господа!
#cid5224
Ответить
Это один из демонов Likewise Open.
«Продукт призван решить проблему сетевой совместимости Windows и Linux, являясь простым решением для создания единой системы аутентификации (включая поддержку задания настроек безопасности через Active Directory)»
/opt/likewise/sbin/dcerpcd
The Likewise DCE/RPC end-point mapper. DCE/RPC stands for Distributed Computing Environment/Remote Procedure Calls. The daemon handles communication between Linux, Unix, and Mac computers and Microsoft Active Directory by mapping data to end points.
http://www.beyondtrust.com/Technical-Support/Downloads/files/PBIS/manuals/open/likewise-open-guide5.1.html
Лично я бы убрал нафик.
prairiewolf
#cid7724
Ответить
Благодарю!
Описание демона можно было не переводить - английский язык мне не чужд *улыбка*.
Но премного благодарен!
den
#cid89886
Ответить
Так те что с крестиком: это включены или отключены ?
#cid89887
Ответить
#cid89886, den
Крестик — это что-то типа галочки, псевдографика же.
Включены.
Max
#cid91561
Ответить
Не получается снять с автозагрузки gdm3. Через sysv-rc-conf снял галочки - не помогло. Через update-rc-d -f gdm remove тоже. Кто нибудь знает как это сделать?
Татьяна-чайник идиот!!!!!
#cid91657
Ответить
Я уже старенькая!Целых 47!!! Очень люблю музыку и не хватает громкости без ннаушников.Введите в курс что нужно сделать! ПЛИЗЗЗ
Prixuevich
#cid91931
Ответить
Татьяна, попробуйте ввести в консоли:
sudo amixer set Master 100%
sudo amixer set Master unmute
Завершая энтером каждую стороку.