Содержание статьи
Современные популярные дистрибутивы предъявляют нескромные требования к
железу. И на стандартных компьютерах 7-10-летней давности если и заведутся, то
летать точно не будут. А такие динозавры еще сохранились в большом количестве в
госконторах, образовательных учреждениях, в кладовках у гиков. Жизнь таких
компов продлят правильный выбор и настройка ОС.
Чтобы получить линукс, шустро работающий на оборудовании почтенного возраста,
есть два пути: использовать существующий дистрибутив с низкими системными
требованиями, либо допилить любимый дистр до нужной кондиции. У каждого пути
свои плюсы и минусы. Первый путь более быстрый, зато второй дает большую свободу
действий и экспу :). Как правило, современным дистрибутивам нужно от 384 Мб ОЗУ
для нормальной работы частота CPU не настолько критична, хватит и 400 МГц). Но
надо понимать, что стоит запустить Firefox — и система с 384 Мб оперативки сразу
уйдет в своп. Так что для нормальной работы с браузером, почтой и IM желательно
512 Мб — 1024 Мб. Я же попробую подобрать ОС для "сферической конфигурации"
начала XXI века:
- Процессор: Intel Pentium-III 800 МГц;
- ОЗУ: 128 Мб SDRAM;
- Видеокарта: встроенная или дискретная с 8 Мб памяти;
- HDD: 20 Гб.
Готовые решения
Дистрибутивы, созданные для работы на старом оборудовании, появляются чуть ли
не каждый день. К сожалению, в большинстве случаев исчезают они так же быстро,
как и появляются. Долгожителей в этой нише совсем немного. Обычно это респины
популярных дистрибутивов с "легким" DE и набором прог.
Пожалуй, самый известный легкий дистрибутив — DSL (Damn Small Linux). В
журнале писали о нем уже не раз, поэтому повторяться не буду. Но долгое
отсутствие новых релизов и старое ядро ветки 2.4 делают его не самым лучшим
выбором. У самого популярного дистрибутива есть целых два варианта для старого
железа: xubuntu (по современным меркам — дистрибутив-долгожитель) и новичок
lubuntu.
Xubuntu — официальный вариант Ubuntu с Xfce вместо Gnome и несколько другим
набором ПО (Abiword+Gnumeric вместо Openoffice, Thunderbird вместо Evolution, и
так далее). Назвать xubuntu "легким" дистрибутивом можно лишь условно —
минимальные требования включают в себя 192 Мб ОЗУ (но очень рекомендуют хотя бы
256 Мб). Однако практика показала, что на 128 Мб (со свопом) xubuntu все-таки
запускается (но не в Live-режиме) и даже пытается работать, но очень задумчиво.
Запускать какие-либо приложения не рекомендуется :). Размер образа дистрибутива
— 681 Мб, а полная установка занимает около 2 Гб. Зато в плюсах у дистрибутива
огромная пакетная база Ubuntu и хорошая локализация.
Lubuntu — неофициальный дистрибутив на базе Ubuntu с LXDE вместо Gnome и
существенно пересмотренным набором ПО. Кроме стандартной замены прожорливого
OpenOffice на Abiword+Gnumeric, Firefox заменен на Chromium (в плане потребления
ОЗУ — достаточно удачная замена, в Xubuntu следовало бы сделать так же).
Дистрибутив на момент написания статьи все еще носил статус beta, релиз запланирован на октябрь 2010
(вместе с релизом Ubuntu 10.10). Lubuntu уже можно назвать "легким"
дистрибутивом, так как он более-менее работоспособен на 128 Мб ОЗУ (и даже
запускается в Live-режиме, хотя при таком количестве ОЗУ приходится извращаться
с инсталляцией). Размер дистрибутива — 521 Мб, а полная установка занимает около
1,5 Гб.
Antix — еще один дериватив на этот раз не очень известного у нас дистрибутива
SimplyMEPIS с добавлением пакетов из Debian Testing. В минимальных требованиях
заявлены PII 266 и 64 Мб ОЗУ (со свопом минимум в 128 Мб). Правда, рекомендуется
все же 128 Мб ОЗУ. Есть две версии: full (485 Мб) и base (264 Мб). Полная
установка full-версии занимает около 1,5 Гб. Последний релиз — 8.5, вышел в
апреле этого года. В качестве DE используется IceWM (хотя fluxbox, wmii и dwm
также установлены). Русификация дистрибутива весьма условна, включается
нетривиально и изобилует перлами вроде "оффис". Зато из коробки присутствует
(благодаря репозиторию debian-multimedia) большинство необходимых для комфортной
жизни кодеков.
Еще один достаточно известный дистрибутив для старых компов — puppy
(постоянно висит в top10 на distrowatch). Хотя в мае этого года вышел новый
релиз Lucid Puppy 5.0 (основанный на бинарниках Ubuntu Lucid Lynx), ветка 4.x (с
последним стабильным релизом 4.3.1) еще поддерживается и скоро планируется выход
4.4. Установочный ISO’шник версии 5.0.1 занимает всего около 130 Мб, а ОС в
установленном виде — чуть больше 500 Мб. Несмотря на малый размер, содержит
немалое количество прикладного ПО: abiword, sylpheed, inkscape, gxine (а также
все нужные кодеки), geany и многое другое. При запуске браузера выскакивает
окошко с вопросом, какой браузер вы хотите установить (прямо как в винде :)).
Хотя можно запустить и предустановленный PuppyBrowser, созданный на базе Firefox.
Вообще дистрибутив пытается максимально походить на мелкомягкую ОС, причем не
только оформлением, но и принципами работы (например, работать по умолчанию
предлагается от рута). ОС отлично работает на 128 Мб ОЗУ как после установки,
так и в Live-режиме, практически не задействуя swap. В качестве менеджера окон
используется написанный на C и имеющий минимум зависимостей JWM. Еще одна
интересная возможность puppy — при завершении работы LiveCD сохранять измененные
данные на внешний носитель.
Slitaz — относительно молодой дистрибутив. Релиз 1.0 вышел в марте 2008. С
тех пор выходит по релизу раз в год, актуальный на данный момент — 3.0. Удивляет
размер ISO-образа: всего 30 Мб (меньше, чем DSL!). Кроме самого дистрибутива с
офсайта можно скачать отдельный образ диска со всеми доступными пакетами (меньше
1,5 Гб). В качестве менеджера окон используется Openbox, панель — LXPanel. На
30-мегабайтный LiveCD уместились Firefox, gFTP, transmission, mplayer, leafpad и
еще много всякой приятной мелочи. В наличии даже встроенный HTTP (lighttpd) и
SSH (dropbear) сервера. Русская локализация есть, но не полная (инсталлятор,
например, совсем не русифицирован). Для запуска стандартной версии в режиме
LiveCD рекомендуется минимум 192 Мб ОЗУ, на 128 Мб запускаться отказывается
категорически. Для тех несчастных, у кого столько памяти нету, разработчики
выпустили специальные версии LiveCD: slitaz-loram (достаточно 80 Мб ОЗУ для
запуска) и slitaz-loram-cdrom (хватит всего 16 Мб).
Tiny Core Linux — самый удивительный из "легких" линуксов. Разработчики
умудрились запихнуть полноценную ОС с иксами в 10-мегабайтный образ. За графику
отвечают менеджер окон FLWM и тулкит FLTK. Неудивительно, что набор ПО
минимален: нет ни браузера, ни какого-либо текстового редактора. Зато их можно
буквально парой кликов мышки поставить. Инсталлятора, как такового, тоже нет —
предлагает ся разбивать диск с помощью cfdisk, форматировать разделы, вручную
переносить файлы и ставить grub. Tiny core умудряется неплохо работать на 64 Мб
ОЗУ. К сожалению, столь небольшой размер дистрибутива был достигну не только за
счет выкидывания практически всех приложений. Исключили также многие драйвера.
Например, за бортом остались многие дрова для беспроводных карточек. Поэтому я
бы стал использовать данный дистрибутив только в том случае, если никакой другой
больше не запускается.
Hand made
Для быстрой работы старого ПК необязательно устанавливать отдельный
дистрибутив — всегда можно допилить свой любимый до нужного состояния. Тут опять
есть два пути: использовать готовые DE или собирать свое окружение по частям.
Первый путь проще, второй — интереснее :).
Среди легких DE можно отметить LXDE и Enlightenment (да, Xfce уже не тот…)
LXDE есть в репозиториях большинства дистрибутивов. Например, на Ubuntu LXDE
ставится так:
$ sudo apt-get install lxde
Таким образом, мы практически получим lubuntu (практически, потому что
все-таки у lubuntu есть собственный дополнительный ppa-репозиторий).
Enlightenment тоже есть в репозиториях Ubuntu (в 10.04 — только E16, в 10.10 —
как E16, так и разрабатываемый E17) и ставится соответственно:
$ sudo apt-get install e16
или
$ sudo apt-get install e17
После установки загружаемый DE можно будет выбирать при логине в GDM. Если же
собирать свою графическую среду, то количество возможных решений может быть
ограничено только фантазией. Условно графическую среду можно составить из
следующих компонентов:
- Менеджер окон;
- Менеджер сессий;
- Рабочий стол и файловый менеджер;
- Панель;
- Некоторое полезное ПО, вроде эмулятора терминала, архиватора и тому
подобного.
Муки выбора
Менеджер окон отвечает за интерфейс окон графической среды и за их поведение.
Выбор менеджера окон очень широк: от всем известных metacity, compiz и kwin до
"легких" openbox, fluxbox, IceWM и JWM. Я остановил свой выбор на openbox —
из-за скорости, удобного конфигуратора (ObConf) и привычки :). К тому же, в
отличие от многих других оконных менеджеров, openbox активно развивается.
Есть ли жизнь в консоли
Далеко не на последнем месте в списке пожирателей ОЗУ в легких
дистрибутивах стоят иксы. В некоторых случаях отказ от иксов будет хорошим
решением, а иногда и единственным выходом. Конечно, жизнь в голой консоли
требует некоторой подготовки и адаптации. Но не стоит думать, что все совсем
печально — существуют десятки отличных консольных приложений на все случаи
жизни. С помощью framebuffer'а можно даже просматривать изображения и видео,
а с помощью gpm — использовать мышь. Вот небольшой список хороших консольных
программ:
- Браузеры: lynx (дедушка текстовых браузеров), w3m (есть поддержка
мыши, cookie и еще нескольких полезностей), links (в версии 2
поддерживает показ графики через framebuffer);- Почтовый клиент: mutt, alpine;
- IM: finch (мультипротокольный клиент, "консольная версия Pidgin"),
CenterIM (еще один мультипротокольный клиент. С версии 5.0 тоже будет
базироваться на libpurple), irssi (IRC-клиент), mcabber (jabber-клиент);- RSS-ридеры: newsbeuter, snownews;
- Просмотр изображений: fbi (и fbgs — обертка к нему, позволяющая
просматривать PDF и PostScript), fbv, zgv;- Музыкальные проигрыватели: ogg123, mpg123, mpg321, mpd, moc,
mp3blaster;- Видеопроигрыватели: mplayer, vlc.
Следующий компонент-менеджер сессий. Это такая штука, которая отвечает за
старт других программ (в том числе, оконного менеджера), их перезапуск в случае
краха, а также предоставляет возможность сохранения списка запущенных
приложений. Элемент, в принципе, необязательный, но достаточно приятный. Как
правило, у каждого DE есть свой менеджер сессий: gnome-session, lxsession,
xfce-session. Несколько особняком стоит staybox, предназначенный для запуска
openbox (и других *box менеджеров окон). Но его нет в репозитории, и неизвестно,
будет ли он в дальнейшем развиваться. В принципе, особых отличий между этими
решениями нет, поэтому я выбрал lxsession (часть проекта LXDE). Ненастроенный
Openbox может показаться несколько аскетичным — черный фон, отсутствие панелей,
единственное меню по правой кнопке. Выбор панелей, наверное, шире, чем выбор
менеджеров окон: tint2, pypanel, fbpanel, lxpanel и многие другие. Требования к
панели у меня простые: нетребовательность к ресурсам, наличие переключателя
виртуальных столов, меню с приложениями, часов, переключателя раскладки
клавиатуры. Остановился на LXPanel. Из приятных бонусов: поддержка апплетов
(раскладка клавиатуры, часы, меню…), возможность запуска нескольких копий (если
хочется, как в Gnome — сверху и снизу), простой графический конфигуратор.
Как правило, за отрисовку иконок (а иногда и фонового изображения) на рабочем
столе отвечает специализированная утилита (наподобие
iDesk), либо файловый
менеджер. Использование стандартного гномовского наутилуса не вписывается в
общую концепцию легкого окружения. Подходящих "легких" вариантов не так уж и
много: pcmanfm, thunar, rox-filer, emelfm2, xfe, gentoo (не путать с
дистрибутивом :)). Мне больше всего нравится pcmanfm за наличие закладок и табов,
автомонтирование флешек, поддержку ассоциаций типов файлов (приложений по
умолчанию), да и в целом, за приятный интерфейс. Под новое окружение следует
подобрать сопутствующее ПО с низкими системными требованиями.
Gnome-terminal лучше сменить на что-нибудь полегче: terminator, termit,
lxterminal, sakura. Хочу я от эмулятора терминала немного: поддержку UTF8
и табов. Под эти требования вполне подходит lxterminal. Браузер, наравне с
терминалом — мой основной рабочий инструмент. Хотя есть "легкие" браузеры,
например, dillo, midory или arora — все они не устраивают меня в качестве
инструмента для повседневной работы по тем или иным причинам: отсутствие нужных
технологий или нестабильность работы. Поэтому в качестве браузера пока оставил
chromium.
От текстового редактора мне много не надо — чтобы он только был (все равно
конфиги, в основном, правлю в nano или mc). Поставлю leafpad для текстовых
файликов, abiword — для odt и doc, gnumeric — для ods или xls. На случай
необходимости подсветки синтаксиса может пригодиться geany. В качестве
просмотрщика изображений вполне можно использовать Eye of GNOME, а можно
подобрать альтернативу полегче, благо, вариантов много: geeqie (форк gqview),
ristretto, mirage и другие — на любой вкус и цвет. Я выбрал geeqie.
Осталось заменить network-manager на wicd, а file-roller на xarchiver, и
получим законченную графическую среду. Правда, несколько инородно в таком
легковесном окружении будет смотреться gdm. Поэтому его тоже лучше заменить на
что-нибудь попроще, например, slim (Simple Login Manager) — так уменьшим время
загрузки.
Легкий монитор
Неплохим дополнением к легкому дистрибутиву будет системный монитор conky.
Он способен мониторить любой параметр системы (в том числе и с помощью
вызова внешнего скрипта), при этом потребляя минимум ресурсов. Устанавливать
просто:
$ sudo apt-get install conky
Потом надо создать файл ~/.conkyrc. У программы очень много параметров,
поэтому проще взять готовый .conkyrc и отредактировать его под свои нужды.
Примеры файлов .conkyrc со скриншотами можно взять на официальном сайте:
http://conky.sourceforge.net/screenshots.html.
Инсталлинг и напиллинг
Теперь все компоненты системы выбраны. Можно ставить и настраивать. Все
перечисленное есть в репозиториях практически любого дистрибутива. Я буду
описывать на примере Ubuntu, но, думаю, для других дистрибутивов значительных
отличий не предвидится. Итак, ставим:
$ sudo apt-get install slim openbox obconf lxpanel pcmanfm lxterminal
chromium-browser leafpad abiword gnumeric geany geeqie wicd xarchiver
В процессе установки спросится, какой login manager использовать. Выбираем
slim.
Раз уж взялись за apt-get, можно по пути вычистить из системы все лишнее,
например, удалить avahi-daemon и kerneloops-daemon. Sane и cups используются (по
крайней мере, мною) не очень часто — их можно убрать из автозагрузки для
уменьшения потребления ОЗУ и времени старта системы:
$ sudo /etc/init.d/cups stop
$ sudo update-rc.d -f cups remove
Но вернемся к настройке. Сначала нужно научить login manager запускать
правильный менеджер сессий. Slim умеет работать с разными сессиями (за выбор
сессии отвечает клавиша <F1> в окне логина), но как-то странно: мне так и не
удалось его заставить корректно запускать openbox как дефолтную сессию. Проще
прописать запуск lxsession в ~/.xsession:
$ nano ~/.xsession lxsession -session default
Чтобы lxsession знал, какой менеджер окон ему запускать, создадим файл /etc/xdg/lxsession/default/desktop.conf
со следующим содержимым:
$ sudo nano /etc/xdg/lxsession/default/desktop.conf
[Session]
window_manager=openbox-session
Проги, которые lxsession должен запускать при логине, прописываются в файле /etc/xdg/lxsession/default/autostart:
$ sudo nano /etc/xdg/lxsession/default/autostart @lxpanel @pcmanfm --desktop
Значок "@" указывает на то, что lxsession будет отслеживать состояние
запущенной проги и перезапускать ее в случае падения. Опция '--desktop'
указывает на то, что отрисовкой рабочего стола (иконки и обои) будет заниматься
pcmanfm. Указать путь к картинке, которая будет служить обоями, можно либо через
GUI:
$ pcmanfm --desktop-pref
либо в конфиге .config/pcmanfm/pcmanfm.conf. Рекомендую также указать pcmanfm
отображать меню менеджера окон вместо своего собственного.
Чтобы lxterminal открывался из меню openbox вместо gnome-terminal, надо
ввести:
$ sudo update-alternatives --config x-terminal-emulator
И выбрать lxterminal в появившемся списке.
Заключение
Сегодня, когда количество ОЗУ в новых компах измеряется гигабайтами, а
одноядерные процессоры — уже моветон, современная ОС, способная работать на
компе с конфигурацией начала века, кажется фантастикой. И тем не менее, это
вполне реально.
WWW