… а может хочешь ее ускорить?, а как определить что дольше загружается, а вот сделать это поможет интересная утилитка - bootchart
настройка ядра
прежде чем установить ее, я рекомендую пересобрать с двумя некоторыми изменениями, а именно, включить следующие ключи:
# zcat /proc/config.gz |grep -E 'CONFIG_PRINTK_TIME|CONFIG_BSD_PROCESS_ACCT'
CONFIG_BSD_PROCESS_ACCT=y
CONFIG_BSD_PROCESS_ACCT_V3=y
CONFIG_PRINTK_TIME=y
для этого выполняем:
cl-kernel -mo --no-clean
и ищем расположение этих ключей нажав /, описание можно почитать там же
Теперь устанавливаем программу
для начала указываем пару USE ключей с которыми соберем пакет
echo "app-benchmarks/bootchart acct" >>/etc/portage/package.use/using
## этот ключ вместе с ключем CONFIG_BSD_PROCESS_ACCT_V3 в ядре позволяет, если верить документации,
## ... получить расширенную информацию о пакете
echo "app-benchmarks/bootchart java" >>/etc/portage/package.use/using
## этот ключ устанавливает java апликуху рисующую из лога - график.
## Графики рисовать совcем не обязательно,
## можно файлы лога сливать на единый сервак, и там уже рисовать картинки
emerge -avt app-benchmarks/bootchart
дело за малым - убедиться, что конфиг сгенерен корректно, файл /etc/bootchartd.conf должен содержать следующие строки:
PROCESS_ACCOUNTING="yes"
BOOTLOG_DEST=/var/log/bootchart.tgz
AUTO_RENDER="yes"
AUTO_RENDER_FORMAT="svg"
AUTO_RENDER_DIR="/var/log"
теперь прописываем bootchartd в параметры ядру.
Еслиб initrd не использовался, в параметры ядра надо было бы дописать init=/sbin/bootchartd, но поскольку в calculate используется initrd, дописываем real_init=/sbin/bootchartd
Благодаря этой утилите, я смог ускорить загрузку системы на ЦЕЛЫХ 2 секунды :-), обратив внимание на драйвер usb, и пересобрав его модулем.
Конечно совершенству нет предела, но я думаю и этих показателей мне пока хватает.
для примера прицепляю картинки
PS
Когдато, когда я еще использовал baselayout-1*, эта утилита имела больший смысл, ибо система грузилась порой по полторы минуты, сейчас же ее можно использовать, к примеру чтоб наглядно смотреть - что за чем грузится.
PPS я совсем забыл разьяснить смысл ключа CONFIG_PRINTK_TIME=y - этот ключ добавляет штамп времени в dmesg, что порой очень помогает при отладке. пример:
# dmesg |tail -n3
[ 19.092620] it87: in3 is VCC (+5V)
[ 32.198632] tun: Universal TUN/TAP device driver, 1.6
[ 32.198634] tun: (C) 1999-2004 Max Krasnyansky <maxk@qualcomm.com>