Новости:

Форуму исполнилось 12 лет!

Мы в матрице .
Мы в телеге .

Главное меню

Ускорение загрузки ОС

Автор Anton, 04 мая 2012, 09:59:09

« назад - далее »

0 Пользователи и 1 гость просматривают эту тему.

Anton

Система стартует довольно долго. Как можно сократить время?

PS в какой раздел писать не знаю
Мне сказали, Слака — кака, пояснили, что я лох. Всё равно её не брошу, потому что на всех пох!

bormant

Долго -- это на каком этапе?
Если при "Loading kernel ..." до портянки сообщений ядра -- дописать в общую секцию /etc/lilo.conf строчку compact, выполнить lilo.
Если при пробе различных устройств и накопителей -- перевести систему на использование -generic- ядра.
Если при получении параметров сети по DHCP -- привести в порядок сеть.
Если при загрузке KDE -- добавить памяти или перейти на менее прожорливое DE/WM.

Anton

Generic это монолитное ядро?
Как сеть в порядок привести? Я только eth0 юзаю (wifi)
Мне сказали, Слака — кака, пояснили, что я лох. Всё равно её не брошу, потому что на всех пох!

bormant

#3
Вопрос про этапы, на которых имеются задержки, так и остался без ответа ;-)

Монолитные стоковые ядра -- это -huge-.
-generic- -- это в которых модулями собрано всё, что только можно, включая файловые системы. Поэтому используется только с initrd. Читать /boot/README.initrd.
Можно собрать своё, исключив всё ненужное и включив всё нужное.

Время ожидания сети видно в логе загрузки по выводу "/etc/rc.d/rc.inet1:" на консоль. Тут значительные задержки?
По поводу сети в вашем случае WiFi других способов, кроме перехода на wicd/networkmanager не знаю, может ещё кто-то подскажет. Ускорение тут может быть только от переноса инициализации сети с момента выполнения /etc/rc.d/rc.init1 "на попозже", если правильно путаю, оставив на текстовую фазу загрузки только время старта демона wicd/nm, без ожидания установки соединения.

Отключение ненужных сетевых (и не только) сервисов также способствует сокращению времени. Читать Слакбук про rc.d, смотреть pkgtool --> Setup -> [x] services, или ls -l /etc/rc.d.

Остальное без ответа на вопрос о том, где тормозит, сложно советовать.

Anton

#4
ЦитироватьВопрос про этапы, на которых имеются задержки, так и остался без ответа ;-)
Ща исправим.

На этапе, когда список оборудования или т.п. (ну там мелькают строчки всякие :) после точек короче)
P.S. Трудно быть нубом  ;D

ЦитироватьПо поводу сети в вашем случае WiFi других способов, кроме перехода на wicd/networkmanager
не,не,не... памяти мало. я ручками нормально настраивать научился. ifconfig eth0 => wpa_supplicant => dhcpcd eth0 и всё 0к =)
Мне сказали, Слака — кака, пояснили, что я лох. Всё равно её не брошу, потому что на всех пох!

bormant

Точки -- это загрузчик lilo загружает ядро в память.
Последующий вывод до "Mounting root filesystem" -- ядро.
Затем стартует init, исполняет, что заказано в /etc/inittab.
А там: /etc/rc.d/rc.S, /etc/rc.d/rc.M и 6 терминалов.
rc.S и rc.M в свою очередь дёргают много чего в /etc/rc.d...

Хм, похоже я уже зачем-то пересказываю слакбук ;-)

Anton

=) и правда спасибо, понял.

bormant, на досуге у тебя случаем не может родиться статья по пересборки ядра или хотяб по выкидыванию лишних модулей из загрузки :-[
Мне сказали, Слака — кака, пояснили, что я лох. Всё равно её не брошу, потому что на всех пох!

bormant

#7
Переход на -generic-smp в общем случае довольно прост.
1) убеждаемся, что установлены kernel-generic-smp, kernel-modules-smp (не путать с kernel-generic и kernel-modules).

2) читаем /boot/README.initrd

3) выполняем
# /usr/share/mkinitrd/mkinitrd_command_generator.sh

4) выполняем предложенную им команду для создания образа initrd.

5) переключаем ссылки в /boot на -generic-smp ядро с помощью его установочного скрипта
# cd / ; /var/log/scripts/kernel-generic-smp-[0-9]*

6) дописываем в /etc/lilo.conf initrd и на случай ремонтных работ -hige-smp ядро (имя посмотреть в ls /boot), например,
было:
image = /boot/vmlinuz
  root = /dev/sda2
  label = Linux
  read-only

стало:
image = /boot/vmlinuz
  root = /dev/sda2
  initrd = /boot/initrd.gz
  label = Linux
  read-only

image = /boot/vmlinuz-huge-smp-2.6.37.6-smp
  root = /dev/sda2
  label = LinuxHS
  read-only

7) выполняем
# lilo

8) перезагружаемся.

9) При обновлениях ядра/модулей не забывать обновлять initrd и звать lilo.


ps. К необщим случаям относятся RAID, LVM, CRYPT и их комбинации, но обычно не намного сложнее.
pps. В Slackware64 не-SMP ядер не бывает, пакеты ядра/модулей звать kernel-huge, kernel-generic, kernel-modules. В Slackware 32-бит в пакетах с такими именами лежат не-SMP ядра (только для однопроцессорных одноядерных систем). Чтобы использовать стоковые не-SMP ядра и иметь возможность собирать под них модули/драйверы, нужно доставить из /extra/linux-2.6.37.6-nosmp-sdk/, там есть README.TXT.

bormant

#8
По пересборке -- могу перевести http://alien.slackbook.org/dokuwiki/doku.php?id=linux:kernelbuilding
По загружаемым модулям -- после перехода на -generic- смотреть в /etc/modprobe.d/, /etc/rc.d/rc.modules --> /etc/rc.d/rc.modules-$(uname -r)

Anton

#9
Цитироватьдописать в общую секцию /etc/lilo.conf строчку compact, выполнить lilo.
Стало интереснее.
ЦитироватьЕсли при получении параметров сети по DHCP -- привести в порядок сеть.
Разобрался наконец с /etc/rc.d/rc.inet1.conf

Осталось с ядром разобраться


будем жать перевод =)
Мне сказали, Слака — кака, пояснили, что я лох. Всё равно её не брошу, потому что на всех пох!

bormant


Anton

Мне сказали, Слака — кака, пояснили, что я лох. Всё равно её не брошу, потому что на всех пох!