|
Есть ли жизнь в консоли?
Есть линуксоиды, которые по разным причинам не хотят или не могут пользоваться X-Window в ОС Linux, например, владельцы очень старых компов, любители оптимизации, администраторы Linux-серверов, которым Иксы просто не нужны. Среди этих людей есть и такие, которые принципиально не используют графическую оболочку, предпочитая работу в «голой» консоли.
Чудаки они, подумаете вы. А вот и неверно. В консоли можно слушать музыку, наслаждаться DVD- и MPEG4-фильмами, читать почту и серфить веб, работать с графическими файлами и PDF-документами, причем при определенной сноровке это получается намного быстрее и проще, чем в графической среде. К тому же мы можем эффективно использовать старые компьютеры, ведь консольные программы, представленные в статье, потребляют очень мало системных ресурсов. Например, оживить старый 486-й ноутбук, приспособив его для хождения по вебу, работе с электронной почтой и прослушивания музыки в формате mp3. Добиться этого можно, отказавшись от использования X-сервера и ограничившись только консольными программами.
Небольшое вынужденное примечание. Эта статья не предназначена для начинающих пользователей Linux. Это я могу объяснить тем, что консольные программы обычно сложнее в настройке, чем программы с графическим интерфейсом. К тому же цель этой статьи ознакомить читателя с возможностями командной строки *nix-систем, а не досконально описывать настройки конкретных программ. Если вы не новичок в Linux, если консоль вас не пугает эта статья для вас.
Раздуваем буфера
Для эффективной работы в консоли стандартного разрешения 25 строк на 80 столбцов явно недостаточно. К тому же простаивают мощности вашей видеокарты, ведь с консолью может справиться любая старая видеокарта с поддержкой VGA. Что делать и как заставить Linux использовать все возможности? Для этого необходимо настроить
Frame buffer.
Фреймбуфер позволяет проделывать удивительные вещи с консолью. На первый взгляд данный модуль не представляется чем-то особенно необходимым, без него можно прекрасно работать. Но как только вы начнете интенсивно взаимодействовать с консолью, вы захотите иметь в распоряжении более чем 25 строк и 80 столбцов. На помощь приходит frame buffer, давая возможность работать с консолью как подобает заправскому юзеру.
Чтобы заставить все заработать, возможно, вам придется перекомпилировать ядро. Сейчас это не просто легко очень легко, и об этом не раз писал наш журнал. В принципе, в вашем ядре, скорее всего, уже есть поддержка Frame buffer, и ядро не нужно будет перекомпилировать. Если же поддержки Frame buffer в ядре нет, добавим ее следующим образом: водите в каталог, где у вас хранятся исходники ядра, и дайте команду:
Через несколько секунд перед вами уже вся конфигурация ядра. Нам необходимо вкомпилить в ядро (модулем собирать нежелательно) следующие параметры:
Пересоберите и установите новое ядро.
Теперь, когда ядро поддерживает fb, займемся
lilo. Открываем в любом текстовом редакторе файл /etc/lilo.conf и добавляем в него строчку:
Если при конфигурировании ядра вы выбрали VESA VGA graphics support вместо специфического видеодрайвера, то эту строку указывать не нужно, вместо нее пропишем следующее:
Видеорежим Frame buffer выбирайте из
таблицы 1. Если от обилия вариантов у вас разбегаются глаза, и вы не можете определиться :-), пропишите в lilo.conf строку vga=ask. В этом случае при загрузке система будет спрашивать у вас код видеорежима.
Разобравшись в видеорежимами (советую попробовать разные варианты, обращая внимание в первую очередь на частоту обновления экрана. Она должна быть такой, чтобы не уставали глаза), пропишите выбранный в конфиге Лило. Не забудьте после правки lilo.conf выполнить команду lilo. Теперь консоль выглядит гораздо привлекательней (
рис. 1).
Ставим DirectFB
По мнению авторов этой библиотеки (и я с ними полностью согласен),
DirectFB должна перевернуть все представления о графических возможностях Linux. DirectFB это надстройка над стандартным Frame buffer, добавляющая множество новых замечательных возможностей поддержка OpenGL, современных 3D-ускорителей и даже звуковых карт. Что немаловажно, библиотека обладает удобным программным интерфейсом и минимально загружает систему при максимальной отдаче видеоподсистемы. Но это еще не все! DirectFB позволяет одновременно запускать несколько приложений, каждое в своем окне. Для этого на ядро необходимо наложить патч и собрать DirectFB с опцией enable-multi.
Однако это уже совсем другая история…
Cайт проекта:
http://www.directfb.org. Последняя версия на момент написания статьи
0.9.20. Скачать ее можно по ссылке
http://www.directfb.org/downloads/Core/DirectFB-0.9.20.tar.gz, размер 1.2 Мб.
Для установки этой библиотеки необходимо удовлетворить следующие зависимости:
freetype (версия не ниже 2.0.1),
libjpeg62,
libpng2/3,
zlib и
libmpeg3. Теперь распаковываем архив и собираем библиотеку:
После успешной установки настроим DirectFB, написав небольшой конфиг. Создадим в любом текстовом редакторе файл /etc/directfbrc и пропишем там следующее:
Для того чтобы можно было запускать DirectFB-приложения, необходимо установить suid-бит на бинарники этих приложений, либо же для соответствующих пользователей назначить корректные права доступа (разрешение на чтение и запись) для файлов устройств /dev/fb0, /dev/tty[0..6].
Lets music!
Какую программу первым делом запускает линуксоид после загрузки? Правильно XMMS. А виндузятник? Снова правильно WinAmp. Не знаю как вам, но мне просто некомфортно работать на компьютере без музыки, играющей в фоне. Вот этим мы сейчас и займемся.
Самым распространенным плейером для прослушивания музыки в командной строке является
mpg123. Сайт проекта
http://www.mpg123.org. Ссылка на закачку
http://www.mpg123.de/mpg123/mpg123-pre0.59s.tar.gz. Размер 240 Кб. Последняя версия на момент написания статьи pre0.59s. Программа очень нетребовательна к ресурсам, что позволяет использовать ее на слабых машинах и обеспечивает хорошее качество звучания. Далее будем предполагать, что ваша звуковая карта уже установлена и настроена.
Послушать mp3’шку очень просто:
Некоторые полезные опции mpg123 перечислены в
табл. 2.
Фильм в консоли
Чтобы иметь возможность смотреть свежие DVD- и MPEG4-фильмы прямо в консоли, займемся пересборкой
MPlayer’a. Для тех немногих линуксоидов, которые не знают об этой программе, я скажу о ней несколько слов. Mplayer это проигрыватель, ставший стандартом для *nix-систем и опережающий по возможностям большинство своих платных аналогов. Широкий спектр поддерживаемых кодеков, разнообразные режимы вывода видео (через framebuffer, vesa, Xv, GL, DGA), поддержка подсистемы lirc, качественные OSD для отображения субтитров, текущей позиции и.т.д, постоянно расширяющийся благодаря активной разработке набор возможностей все это позволяет просматривать огромное количество форматов видео и аудио. К тому же этот плейер очень нетребователен к ресурсам: можно спокойно смотреть все MPEG- и DivX-фильмы без дополнительных кодеков даже на P-1200 МГц! Домашняя страница этого проекта
http://www.mplayerhq.hu. Последняя версия на момент написания статьи
v1.0pre5try2. Ссылка на закачку:
http://www.mplayerhq.hu/homepage/design7/dload.html. На этой же странице можно скачать комплект кодеков
essential codecs package. При его наличии MPlayer будет работать с любыми форматами.
MPlayer на этапе компиляции тесно привязывается к типу процессора и имеющимся у вас библиотекам. К процессору для оптимизации. MPlayer собирается таким образом, что под Athlon он компилируется с инструкциями 3DNow! всех уровней; под новый «пень», а также если предполагается работа с MMX SSE2. В итоге плейер оказывается очень шустрым и ресурсов потребляет по минимуму. Вот почему MPlayer нужно устанавливать только из исходников чтобы при компиляции его можно было оптимизировать конкретно под вашу машину.
Давайте посмотрим, что нам понадобится для успешной компиляции плейера, что придется скачать и откуда именно. Первое удовлетворить зависимости, то есть обеспечить наличие необходимых утилит и библиотек. По идее, все это имеется в вашем дистрибутиве Линукса (только он должен быть не очень старым :-)). Мне еще не встречался дистрибутив, в котором бы MPlayer не собирался из-за неудовлетворенных зависимостей. Если все-таки нужных библиотек нет или дистрибутив древний придется качать свежие версии. Гугл вам в помощь :-).
Итак, берем последнюю стабильную версию с сайта разработчиков, распаковываем архив, конфигурируем для работы в консоли, собираем и устанавливаем:
Теперь попробуем что-нибудь посмотреть:
Если плейер начал показывать фильм, поздравляю! Если же есть какие либо проблемы, попробуйте покрутить опции. Опция -vo задает видеодрайвер (-vo help выведет все доступные варианты), -ао аудиодрайвер (-ао help работает так же, как в случае с -vo), -framedrop означает, что кадры, которые не успевают обрабатываться, будут выбрасываться.
Обычно необходимо подобрать видеодрайвер. В любом случае читайте вывод MPlayer’a. Там подробно описывается процесс открытия файла и загрузки необходимых компонентов; если возникают какие-либо сбои, это будет видно в отчете MPlayer’a. Подобрав оптимальные для вашей системы опции, пропишем алиас в ~/.bashrc для запуска Mplayer с нужными опциями:
Теперь по команде player будет запускаться Mplayer с нужными параметрами.
(Продолжение следует)
|