Экономим место
Лучше начинать с базовой установки своего дистрибутива и, в зависимости от задач, сносить одни пакеты и ставить другие. Тут главное не увлекаться и знать, что место на диске ограничено, хотя сжатие у squashfs с патчем lzma весьма сильное.
Что можно удалить из базового дистрибутива
Пример с дистрибутивным ядром показателен - его снос высвобождает целых 60Мб. Но есть куча других мелких и не очень утилит, которые не нужны в таком объёме, особенно в бездонной директории /usr. Итак:
- снос дистрибутивного ядра и замена "живым"
- aptitude purge python2.4
- удаление утилит тестирования типа reportbug, installation-report и прочих
- вырубка всяких альтернативных утилит типа dc, nano, tcsh, portmap
- прополка от python-selinux, policycoreutils и прочих параноидальных прибамбасов
- долой info, bind9, whois, finger, telnet....
- убирать документацию разработчиков из /usr/share/doc и словарей из /usr/share/dict - это не столько сокращает объём сколько уменьшает количество файлов (где-то на 10 тысяч)
- локали (/usr/share/i18n/locales), мануалы (/usr/share/man) и шрифты оставить только нужные и на тех языках, о которых вы слышали. Локали можно убрать с помощью localepurge.
У меня в итоге получилось, что базовый ISO-образ вместе с иксами, MC и IceWM занимает чуть больше 100Мб. В ходе тестирования в эмуляторе выяснилось, что загружается сие чудо в системах с более чем 64Мб ОЗУ. На ноутбуке загрузилось примерно за минуту, нашло все устройства и даже примонтировало автоматом все диски.
Что стоит установить в базовую систему
Всё сказанное ниже будет сильно зависеть от того, что вы хотите сделать из системы. Но я думаю, совсем не лишним и не обременительным будет установить:
- облегчённые утилиты для интернет: wget и elinks
- утилиты тестирования оборудования: dmidecode, lshw, hdparm, memtest86+, bonnie++
- samba для общения с оффтопичной системой
Настройки, о которых легко забыть
Их не так много, но их отсутствие приводит к досадным разочарованиям. Поэтому ниже - небольшой список того, что следует сделать в системе перед запаковыванием её в ISO-образ и на флешку.
Автоматический логин
Чтобы каждый раз не писать пароль, лучше всего настроить автоматический вход в систему. Если диск спасательный, то можно сделать так: удалить пакет xdm и поставить mingetty - так обеспечивается вход в систему пользователя без пароля и запуск иксов, когда они нужны.
Итак:
aptitude remove xdmПосле этого заходим в /etc/inittab меняем строку вида
aptitude install mingetty
1:2345:respawn:/sbin/getty 38400 tty1Заменяя имяпользователя на логин реального юзера, имеем беспарольный вход в систему (взято отсюда). Потом, если потребуются иксы, пишем startx и наслаждаемся.
на
1:2345:respawn:/sbin/mingetty --autologin имяпользователя tty1
Настройка иксов
Если вы хотите, чтобы иксы (если они есть, конечно) запускались всегда и везде, нужно прописать драйвер vesa:
Section "Device"
Identifier "Cirrus Logic GD 5446"
Driver "vesa"
BusID "PCI:0:2:0"
EndSection
И не забыть про кириллицу
Если вы эстет, то можно ещё долго изгаляться со шрифтами и прочими рюшечками. Мне и обычных шрифтов хватает - лишь бы там были русские буквы и читалось без особого напряга.
Section "InputDevice"
Identifier "Generic Keyboard"
Driver "kbd"
Option "CoreKeyboard"
Option "XkbRules" "xorg"
Option "XkbModel" "pc104"
Option "XkbLayout" "us,ru(winkeys)"
Option "XkbOptions" "grp:alt_shift_toggle"
EndSection
Так же не стоит забывать про разрешение экрана - указывайте все при конфигурации иксов:
dpkg-reconfigure xserver-xorgПовыключайте разного рода ускоряющие драйверы типа glx и dri, если вы создаёте спасательный диск. В общем, тюнинг системы - дело увлекательное...
Если ставить /базовую/ систему тогда нет нужды руками вычищать reportbug, installation-report, dc, nano, tcsh, portmap и всего прочего. Их просто не будет.
ОтветитьУдалитьНасчет локалей, есть в репозитории стандартная утилита localepurge.
2 asv комментирует...
ОтветитьУдалитьЕсли ставить /базовую/ систему тогда нет нужды руками вычищать reportbug, installation-report, dc, nano, tcsh, portmap и всего прочего. Их просто не будет.
Странно, а у меня они автоматом поставились. Но на всякий случай упомяну.
Насчет локалей, есть в репозитории стандартная утилита localepurge.
Это да, забыл совсем. Спасибо, добавил в пост.
Вот в этом месте, если убрать галки со всех пунктов, мы получим debian base system, там будет абсолютный минимум необходимый для функционирования системы. http://photos1.blogger.com/blogger/5591/3303/320/debianEtch16.0.jpg
ОтветитьУдалить2 asv комментирует...
ОтветитьУдалитьВот в этом месте, если убрать галки со всех пунктов, мы получим debian base system, там будет абсолютный минимум необходимый для функционирования системы
Это я в курсе :-) Речь идёт о системе, в которую уже поставлены иксы, icewm и другие приложения для человеческой работы.
> Автоматический логин
ОтветитьУдалитьЕсли использовать готовое решение из дебиана и для дебиана (коим
является live-helper), то об этом помнить не надо, а скрипт настроит
автологин самостоятельно.
Также live-helper настраивает беспарольный вход для пользователя user. И
всё автоматически.
> Настройка иксов
Иксы уже сто лет как настраиваются автоматически безо всякого указания
видеодрайвера.
> И не забыть про кириллицу
Нижеприведённое полезно в дальней перспективе с учётом того, что в x.org
конфигурацию через файл уже почти отломали.
$ cd ~/live/chroot/home/user
$ cat .xsession
setxkbmap us,ru\(winkeys\) -option grp:ctrl_shift_toggle -option ctrl:nocaps
xxkb &
icewm-session
$ cat .xxkbrc
XXkb.mainwindow.enable: no
XXkb.button.enable: no
> убирать документацию разработчиков из /usr/share/doc
И напороться на отсутствие необходимой в экстренный момент документации,
если live cd использовался в качестве rescue cd. Например, testdisk
хранит полезную документацию именно в /usr/share/doc.
> и словарей из /usr/share/dict - это не столько сокращает объём сколько уменьшает количество файлов (где-то на 10 тысяч)
Не легче ли удалить пакет со словарями!?
Я лично считаю совет "пройтись по /usr с rm-ом" весьма опасным. Лучше
удалять ненужные пакеты, а не экономить копейки, боясь удалить что-то
нужное. Вот я при сборке личного livecd не экономил, а всё равно в 300
мб уложился (с учётом сжатия от squashfs).
// Alexander Galanin
Да, и еще бы не мешало для нечеловеческойфайловойсистемы установить пкетик ntfs-3g.
ОтветитьУдалить// мимо проходил
> Настройка иксов
ОтветитьУдалить> И не забыть про кириллицу
man live-helper.
Настройки иксов вполне можно указать в опциях загрузки мега live-cd безо всякой дебильной правки конфигов.
ужас.
ОтветитьУдалитькаких только гамаков с лыжами не напридумывают, лишь бы live-helper не использовать.
2 samson комментирует...
ОтветитьУдалитькаких только гамаков с лыжами не напридумывают
Это потому, кто "кошерные" велосипеды хреново документированы.
лишь бы live-helper не использовать
Вот поэтому и изобретаем свои, с шахматами и поэтессами (с) :-)
Хотя да, live-helper надо было бы упомянуть. За пинок в правильном направлении спасибо. Ну и пост несколько несвежий, выложил, т.к. жалко было удалять (а мне ещё пригодится). Скоро будут веселее посты, stay tuned.