CFA LogoCFA Logo Computer
Новости Статьи Магазин Драйвера Контакты
Новости
RSS канал новостей
В конце марта компания ASRock анонсировала фирменную линейку графических ускорителей Phantom Gaming. ...
Компания Huawei продолжает заниматься расширением фирменной линейки смартфонов Y Series. Очередное ...
Компания Antec в своем очередном пресс-релизе анонсировала поставки фирменной серии блоков питания ...
Компания Thermalright отчиталась о готовности нового высокопроизводительного процессорного кулера ...
Компания Biostar сообщает в официальном пресс-релизе о готовности флагманской материнской платы ...
Самое интересное
Программаторы 25 SPI FLASH Адаптеры Optibay HDD Caddy Драйвера nVidia GeForce Драйвера AMD Radeon HD Игры на DVD Сравнение видеокарт Сравнение процессоров

АРХИВ СТАТЕЙ ЖУРНАЛА «МОЙ КОМПЬЮТЕР» ЗА 2003 ГОД

Препарируем пингвина

Сергей А.ЯРЕМЧУК grinder@ua.fm

Мне давно хотелось познакомиться с одним из дистрибутивов Linux, который не требует установки, а работает прямо с CD-ROM. Речь идет о так называемых Live CD. Вопрос меня этот интересовал не столько из-за желания поюзать такую ОС, сколько из чисто практического интереса — пошарить по скриптам, посмотреть, как они автоматически все настраивают. Ведь иногда неделями приходится биться, чтобы заставить работать какое-то новое оборудование.

Linux не догма, а руководство к действию

Начинающему пользователю Linux дистрибутив на Live CD будет в самый раз: диск размечать не надо, поработал, надоело — перезагрузился в родную Windows как ни в чем не бывало. Самым популярным дистрибутивом из этой группы является KNOPPIX, базирующийся на Debian. Описания его работы можно найти практически на каждом сайте, так или иначе связанном с Linux, но вот его размер лично мне, например, не позволяет вытащить из Интернета. Можно, конечно, попробовать купить его в каком-нибудь интернет-магазине, которых развелось уже великое множество, но по своему опыту могу сказать, что заказанного через Интернет ждать приходится добрых полтора месяца, а это, прямо скажем, многовато.

Наверное, в сходную ситуацию попал и создатель дистрибутива Damn Small Linux (http://www.damnsmalllinux.org) — терпения на закачку у него хватило ровно на 33 Мб, ибо примерно сколько занимала 0.1.0-версия этого дистрибутива. Нынешняя же версия 0.3.3 выросла в объеме до 50 Мб, которые по крайней мере я могу себе позволить скачать. А учитывая, что во многих городах появились интернет-кафе с достаточно хорошим доступом, то и большинство читателей. Единственное, на что я хочу обратить внимание при походе на сайт — там под ну очень большим рисунком есть маленькие навигационные ссылки по ресурсу, которые не сразу и в глаза бросаются, особенно когда зрение уже далеко не 100%. Теперь тут же по ссылке скачиваем образ, записываем на диск и загружаемся. В принципе, ничего необычного — после появления приглашения к загрузке, нажав клавишу F2, можно получить подсказку о режимах загрузки. В первую очередь нас интересует KNOPPIX lang=ru, и еще, в случае, когда не удастся запустить X-Window, может прийти на выручку KNOPPIX 2 — режим, позволяющий работать в консоли. У меня лично с ходу обнаружились и активировались все устройства, кроме взятого на время TV-тюнера. Далее автоматически запускается редактор vi, и система предлагает выбрать разрешение, с которым будем работать — для этого необходимо просто раскомментировать соответствующую строчку. Для выхода из редактора жмем Esc для перевода его в командный режим, затем набираем :wq (двоеточие обязательно), и далее система грузится как ни в чем не бывало. Интересно, что все дисковые разделы, имеющиеся на жестком диске, были правильно прописаны в /etc/fstab, и чтобы примонтировать их, достаточно было ввести команду # mount /mnt/hda#.

Надо отдать должное, что создателю все-таки удалось запихать в дистрибутив все необходимое. Так, имеется оконный менеджер fluxbox, по популярности, кажется, начавший обходить своего прародителя blackbox, проигрыватели XMMS (с примочками для разных оконных менеджеров —gnomexmms, wmxmms), mpg321 (он же mpg123), а также полный комплект для работы с OggVorbis; из браузеров нашлось место консольному links и его версии для X-Window на библиотеках Gtk gLinks, для скачивания файлов припасен все тот же wget, а для дозвона к провайдеру — пакет wvdial. Текст можно набить либо в vi, либо в более удобных nedit, GNU/nano (которые все можно запустить через скрипт sensible-editor), хоть есть и что-то наподобие легкого текстового процессора —flwriter (Рис. 1), понимающий формат .rtf, и табличного процессора —ABS spreadsheet (Рис. 2), этого достаточно для непрофессионального использования. И конечно же, неизменные sed, awk и emacs. Из командных интерпретаторов доступны заслуженный bash (он же /bin/sh), csh и простенький ash. Интересно, что в этот объем поместился и gcc 2.95 со всеми сопутствующими программами, в том числе make, так что при необходимости можно смело устанавливать программы из исходников. Из других языков программирования обнаружились интерпретаторы Perl и Python.

Рис. 1. Flwriter   Рис. 2. ABS spreadsheet

По большому счету, на этом можно было бы и закончить, если бы не сколько маленьких но. Во-первых, я не нашел ни одного нормального файлового менеджера, что не смертельно, но неудобно; далее, не хватает некоторых привычных приложений; наконец, самое главное, на что уж точно можно обидеться — на lang=ru система абсолютно не реагирует. Порыскав по каталогам, удивленный пользователь обнаруживает полное отсутствие необходимых шрифтов, клавиатурных раскладок и вообще намеков на другие локали, что сводит к нулю результативность попыток запуска их вручную. А если бы даже таковые и нашлись, не пингвинье это дело — ручная работа. Значит, будем резать, заодно и миф о неделимости дистрибутивов развеем. Кстати, все нижесказанное касается и родительского дистрибутива. Итак, начнем. Скальпель, зажим, спирт, огурец… Загружаемся с диска, как обычно. При помощи fdisc или cfdisc создаем раздел, куда будут распаковываться файлы с диска, дополнительно, особенно если мало оперативной памяти, может понадобится раздел подкачки. Создаем файловую систему на диске:

и монтируем:

Аналогично поступаем со своп-разделом. Создаем, если его если еще нет, и затем монтируем:

На этом подготовительный этап можно считать законченным. Вся файловая система дистрибутива упакована на CD в файл /KNOPPIX/KNOPPIX, который занимает как раз почти 50 Мб. При загрузке он автоматически распаковывается в каталог /KNOPPIX. Изменять там что-либо не имеет никакого смысла, так как при перезагрузке все изменения улетучатся вместе с многочасовыми трудами; для правки необходимо скопировать весь каталог на подготовленный раздел жесткого диска:

Вот теперь у нас есть два варианта работы. Если необходимо просто изменить конфигурационные файлы или добавить недостающие пакеты при помощи простого копирования, это можно проделать либо непосредственно из загруженного Damn Small или из уже установленного Linux'a, при наличии последнего. Если имеются .deb-пакеты, традиционно используемые в Debian, или программы в исходниках, тогда лучше всего будет смонтировать данный раздел в качестве корневого:

С этого момента каталог /mnt/hda5/KNOPPIX является корневым, т.е. /, поэтому все пути к необходимым файлам я буду приводить исходя из этого. Теперь желательно дополнительно смонтировать файловую систему proc. Сделать это опять же очень просто:

Все. Теперь можно работать здесь как в полноценном дистрибутиве, т.е. удалять, устанавливать, обновлять программы и, конечно же, править конфигурационные файлы. Кроме непосредственно компиляции вам подвластна установка и удаление любого программного обеспечения при помощи пакета программ APT (Advanced Packaging Tool). В файле /etc/apt/sources.list, в котором содержится список источников, содержится вот такая запись, указывающая на место, где можно взять пакеты, специально собранные для этого дистрибутива:

Для установки необходимо ввести:

и программа будет искать его в указанных в файле ресурсах. Аналогично, для пополнения программных запасов можно воспользоваться аналогом RedHat'овского rpm-менеджера —dpkg. Для установки нового пакета в таком случае достаточно набрать:

После установки нужных программ приступаем к локализации. Спешу заметить, в скриптах полный бардак, по крайней мере в вопросах локализации: некоторые программы лежат не там, где указаны (например, в /bin вместо прописанных /usr/bin) и поэтому, естественно, не работают, а некоторых вообще нет, хотя упоминаются. Но так как текущий релиз на окончательный, судя по номеру, не претендует, пожалуй, сильно ругаться не будем.

Для начала займемся консолью. В каталогах /usr/share/consolefonts никаких шрифтов не обнаружилось, те, у кого их нет, могут взять на http://www.kiarchive.ru, сгодятся и шрифты Андрея Лукьянова: http://stgazeta.chat.ru/download/eurorus.tar.gz. Аналогично, в соседний каталог consoletrans при использовании альтернативной кодировки нужно положить файл карты соответствия (все эти файлы можно найти в пакете console-tools или kbd). Кстати, это наиболее хаотический эпизод для всех дистрибутивов. Так, например, RedHat'овцы почему-то решили, что данные каталоги непременно должны лежать в /lib/kbd, и нигде более. Помню, как, перейдя к Красной Шапке с Mandrake (там они находились в /usr/lib/kbd), я долго не мог их найти — это при том, что стартовые скрипты просматривают также /usr/lib/kbd/consolefonts/ и /etc/sysconfig/console/ в поисках нужного шрифта. Как видите, три дистрибутива — и три разных каталога для хранения. Поэтому пользователи, как правило, остаются верны одному дистрибутиву, ведь приходится переучиваться. В Debian для установки необходимого экранного шрифта и клавиатурной раскладки по традиции используется пакет console-tools, и потому здесь условия локализации немного отличаются от принятой в RedHat и К. Но все попытки установить экранный шрифт посредством переменных (SCREEN_FONT и APP_CHARSET_MAP), которые приписываются в файле /etc/console-tools/config, переименованном из шаблона config.dpkg-new, успешных попыток не возымели.

Но и это еще не все — оказалось, что программы consolechars, устанавливающей шрифты, нет и в помине, поэтому придется устанавливать полный пакет console-tools (впрочем, я просто скопировал ее из своего RedHat'a в каталог /usr/bin, на который указывают скрипты). Ладно, займемся этим позже. Для того чтобы иметь возможность набирать русский текст, подменяем файл /etc/console/boottime.kmap.gz на свой с нужной раскладкой, который можно отыскать в /usr/share/keymaps/i386/qwerty/. Я взял ru4.kmap.gz, остальные каталоги и файлы с раскладками можно смело удалить чтобы место зря не занимали. Другой способ — просто прописать путь к нужному файлу вместе с командой в конце /etc/init.d/keymap.sh. Перезапускаем скрипт —# /etc/init.d/keymap.sh restart, и можно работать.

Следующий этап — локализация. Для начала в скрипте /etc/environment заменяем имеющуюся там строку на LANG="ru_RU.KOI8-R". Пробуем # locale, если не помогло, лезем внутрь скриптов. Чтобы не искать по всем скриптам, запускаем команду # grep -R LANG /etc и узнаем таким образом, что нам просто необходимо заглянуть в /etc/knoppix-autoconfig. В нем обнаруживаются две интересные функции, обрабатывающие параметры, передаваемые ядру при загрузке —getbootparam и checkbootparam. Кто интересуется, посмотрите. Далее искомая строка [ -n "$LANGUAGE" ] || LANGUAGE="en", т.е. если строка содержит значение (не нулевая) то локаль берется по ней, если же нет, то по умолчанию принимается английская локаль. Изменяем значение en на ru или, если не предвидится использование другой локали, строку комментируем и с новой пишем просто LANGUAGE="ru" (чтобы системе меньше думать). Через пару строк при помощи конструкции case "$LANGUAGE" in устанавливаются все необходимые переменные и заносятся в соответствующие файлы в каталоге /etc/sysconfig/*. Строка для ru выглядит так .

По умолчанию (т.е. *) case опять же устанавливает английскую локаль; для подстраховки я дополнительно перенес все данные с сектора ru в *.

(Продолжение следует)

Рекомендуем ещё прочитать:






Данную страницу никто не комментировал. Вы можете стать первым.

Ваше имя:
Ваша почта:

RSS
Комментарий:
Введите символы или вычислите пример: *
captcha
Обновить





Хостинг на серверах в Украине, США и Германии. © sector.biz.ua 2006-2015 design by Vadim Popov