воскресенье, 14 сентября 2008 г.

оптимизация загрузки ubuntu 8.04

Отсюда
linux @ 25 августа 2008,

Вчера собрался ускорить работу(получилось достаточно ощутимо) и загрузку системы(30 секунд, против полутора минут), почитал многие how-to.
Опишу что и где я улучшал. Итак о способах, по порядку:
1. Прописываем hostname.

sudo vim /etc/hosts
Было:
127.0.0.1 localhost
127.0.1.1 lib

Стало:
127.0.0.1 localhost lib
127.0.1.1 lib

Подписываем то, что справа от вызова консоли находится, например: lib@laptop:~$, то вписываем laptop.
Это несколько ускоряет загрузку системы, и ускоряет запуск некоторых программ.

2. Использование ядра, сконфигурированного под Вашу систему, подробнее как можно собрать ядро в Ubuntu. По ссылке написано, как собирается ядро для 6.10, однако советы справедливы и для 8.04.

3. Несколько ускоряем работу ext3 файловой системы:

sudo vim /boot/grub/menu.lst
Добавляем в существующие строки:
# defoptions=quiet splash rootflags=data=writeback
# altoptions=(recovery mode) single rootflags=data=writeback
У меня в defoptions убран quiet и splash дополнительно, и добавлен vga=0×324, для framebuffer.


Обновляем grub.

sudo update-grub
Правим fstab:
sudo vim /etc/fstab
В моём случае, добавляем data=writeback:
UUID=32903d9a-98a8-4048-8472-a0896b81b3fa / ext3 relatime,errors=remount-ro,noatime,data=writeback 0 1
Выполняем:
sudo tune2fs -o journal_data_writeback /dev/sda1
/dev/sda1 это имя раздела, на котором лежит /
Проверяем:
sudo tune2fs -l /dev/sda1
Этот метод череват тем, что можете потерять некоторые данные при неожиданном выключении системы, например если у вас неожиданно отключилось питание(мне это не грозит, поскольку у меня ещё батарея есть)

4. Несколько ускоряем сеть(отключаем IPv6):

sudo vim /etc/modprobe.d/bad_list
Добавляем:
alias net-pf-10 off

В about:config в Firefox отключаем

network.dns.disableIPv6
, ставим true.

Там же:

network.http.pipelining true
network.http.pipelining.firstrequest true
network.http.pipelining.maxrequests 8
network.http.proxy.pipelining true
nglayout.initialpaint.delay 0
browser.turbo.enabled true
network.http.max-connections-per-server 8
network.http.max-persistent-connections-per-proxy 8
network.http.max-persistent-connections-per-server 8

Это ускорит загрузку страниц.
Добавляем в /etc/environment:
MOZ_DISABLE_PANGO=1
Это позволит ускорить отрисовку страниц в Firefox.

5. Убираем ненужные консоли(которые вызываются по Ctrl+Alt+F1..8):

sudo rm /etc/event.d/tty[3-6]
6. Ускоряем загрузку системы:
sudo vim /etc/init.d/rc
Выставляем:

CONCURRENCY=shell
Это устанавливает множественную загрузку в одно и то же время, особенно хороший эффект имеет, если у Вас многоядерная система.

7. Удаляем ненужные сервисы из загрузки:

sudo aptitude install sysv-rc-conf
sudo sysv-rc-conf

Подробно о сервисах написано на ubuntuforums.org
Дополнительно я отключал apache и mysql, я их запускаю непосредственно, когда хочу поработать с локальным вебсервером.

8. Если у Вас постоянное подключение к интернету, добавляем в /etc/sysctl.conf.

# Tweaks for faster broadband...
net.core.rmem_default = 524288
net.core.rmem_max = 524288
net.core.wmem_default = 524288
net.core.wmem_max = 524288
net.ipv4.tcp_wmem = 4096 87380 524288
net.ipv4.tcp_rmem = 4096 87380 524288
net.ipv4.tcp_mem = 524288 524288 524288
net.ipv4.tcp_rfc1337 = 1
net.ipv4.ip_no_pmtu_disc = 0
net.ipv4.tcp_sack = 1
net.ipv4.tcp_fack = 1
net.ipv4.tcp_window_scaling = 1
net.ipv4.tcp_timestamps = 1
net.ipv4.tcp_ecn = 0
net.ipv4.route.flush = 1

Всё это позволило мне ускорить работу системы на порядок, однако есть ещё пара способов, которые я рекомендовать не могу, поскольку не совсем понимаю как они работают, а именно:
установленный пакет preload(sudo aptitude install preload), prelink(sudo aptitude install prelink)
Подробнее о prelink здесь.

Удачного использования!

Комментариев нет: