ASUS EEE PC 701. Личный Опыт

Владимир Попов

2009-07-01

Преамбула

Практически год пребывал мой EEE PC в состоянии "перманентной перестройки". Для дела использовался эпизодически, а все "пережитые" дистрибутивы/ОС меня не устраивали. А "пережитых" было немало: исходная Win XP, RIP, EEEdora, череда Ubuntu (включая Netbook Remix и Crunchbox). Основной недостаток (являющийся, как это часто бывает, продолжением достоинств) — маленький экран. И дело даже не в физическом размере (у Palm|TX он вдвое меньше, но — устраивает), а во всеобщей тенденции "втиснуть" в него такой привычный для большинства "рабочий стол" IBM PC.

Окончательно я в этом уверился после "столкновения" с SONY VAIO VGN-P21Z. Изумительная по своей красоте и техническому совершенству игрушка сведена на нет установленной на ней Windows Vista. Раздражающая неповоротливость, неприлично мелкие иконки и фонты, безобразный рендеринг и кошмарный интерфейс, требующий практически постоянного "мышевозения". Причём "возить" предлагается даже не тачпад — микроджойстик.

Нет, 1600х800+windesktop на 10-дюймовом экране — не для моих глаз. Отказать, категорически и бесповоротно. Насколько хороша Instant Mode (встроенный в BIOS мини-Linux), настолько неприемлема Vista. Не исключаю: другие глаза — другие оценки, но у меня-то они — свои и одни. А на этом SONY я даже в очках напрягаюсь.

Предложение

Вернёмся к 701-му EEE PC, однако. 800х480 на 7-ми дюймах — чуть полегче будет, но ведь и "места" на экране почти вдвое меньше? Вот тут-то мы и подходим к главному вопросу: как этим местом распорядиться, чтобы функциональность устройства была максимальной? Для начала нужно определить, о какой функциональности речь. Весьма индивидуально, но для меня это:

  • чтение — почти исключительно html/plain text;
  • редактирование — исключительно plain text;
  • броузинг Сети;
  • e-mail.

В список не попали средства organizing-а. Все эти календари, контакты, "напоминалки" и прочая... Отнюдь не потому, что я ими не пользуюсь. Просто в этом качестве предпочитаю Palm. Синхронизацию время от времени практикую, но только для контактов. Всё остальное (слушать музыку, смотреть кино/фото, говорить по телефону и т.д.) я предпочитаю без использования IBM PC.

Итак, предложение сводится к следующему:

  • загрузить на EEE PC Linux, поскольку "выпиливать" что-то из windows разумным не представляется: слишком многое там жёстко навязано производителем, и то, что навязано, одобрения не заслуживает;
  • добиться от инсталляции Linux максимальной компактности, исходя из перечисленных выше функций;
  • использовать, по возможности, консоль как предпочитаемый (для глаз) и более экономичный (с точки зрения площади экрана) режим.

Реализация

Задуманное можно сделать в рамках любого дистрибутива или даже какого-нибудь livecd. Вопрос только в количестве телодвижений. После знакомства с Crunchbox (в EEE PC варианте) я выбрал Ubuntu. Никогда не был большим поклонником Debian, но работе, проделанной сообществом над EEE PC, нужно отдать должное: зачем возиться с его [EEE PC]"нюансами", если это уже проделали до тебя? Поскольку интересовал, прежде всего, учёт аппаратных особенностей нетбука и только потом поражающие воображение своим размером репозитории, то предпочтение было отдано Eeebuntu Base.

Инсталляцию не описываю — достаточно сказано и без меня. Не упоминаю также о sudo и средствах пакетного менеджмента. Предпочитаете вы synaptic, apt-get или aptitude — ваше личное дело. То есть далее следует только перечень инсталлируемых пакетов, благо каталог /var/cache/apt/archives существенно облегчает процесс воспоминаний. Итак...

Устанавливаемый дистрибутив "сходу" поддерживает все устройства (не хватало ещё, чтобы дистрибутив, ориентированный на сравнительно немногочисленное пока семейство нетбуков, этого не делал). Вот только NetManager я заменил на wicd — попытки первого самому решать, к которой из обнаруживаемых wi-fi сетей подключиться, нехорошо напомнили мне Vista.

Прежде всего, я инсталлировал mc. Хотя нужно, наверное, признать, что это — личное. Просто ни к знатокам, ни к ярым сторонникам Debian и его "потомков" я не принадлежу, а в общении с ОС предпочитаю консоль. Вот и получается, что консольный файловый менеджер для меня в данном случае — необходимость.

Из двух неизменных спутников работы в консоли фонты terminus уже присутствовали в системе, так что "добавить" потребовалось только gpm, что я и сделал.

Инсталляцию ntp и ntpdate тоже, наверное, можно считать личным пристрастием, да ещё производственной необходимостью: в моём "распорядке дня" имеют место удалённые сеансы, открываемые в определённое время.

А вот vim (для начала хотя бы common и runtime) я настоятельно рекомендую: подсветка синтаксиса при редактировании конфигурационных файлов не слишком знакомого дистрибутива — весьма облегчает жизнь.

Добившись должной "вооружённости" консоли, я захотел видеть её [консоль] в более подобающем виде. А именно: framebuffer 800х480. Сделать это можно несколькими способами, один из которых я уже описывал здесь. Суть — в подмене разрешения видеорежима, используемого uvesafb по умолчанию. Подмена выполняется, естественно, перед загрузкой uvesafb. Для работы последней, кстати, потребуется инсталлировать ещё и v86d (помимо 915resolution, которая, собственно, и позволяет осуществить ту самую "подмену" разрешения).

Описанный способ, дающий сравнительно небольшой (но приятный) эффект на EEE PC (всё-таки 800х480 не так уж сильно отличается от 640х480 vga, который мы имеем изначально), оказывается ну очень уместным на ноутбуках с более чем 15-ти дюймовой матрицей, а тем более на мониторах 20-ти и более дюймов. Последние, как известно, практически не выпускаются нынче с отношением сторон экрана 4:3.

"Не всё скоту масленица", однако, как любит говорить один мой знакомый. Так, ядро 2.6.29-1-netbook, появившееся в репозитории eeebuntu в сeрeдинe июня, зачем-то включает в себя лишний для нетбyков, на мой взгляд, драйвер vesafb. Как результат — отсутствие автоматической загрузки модуля fbcon после загрузки uvesafb. Решается просто: после загрузки uvesafb модуль fbcon нужно загрузить с помощью всё той же modprobe. В конечном счёте, фрагмент /etc/init.d/rc.local, включающий framebuffer с нужным разрешением, выглядит так:

	915resolution 30 800 480
	modprobe uvesafb
	modprobe fbcon
	/etc/init.d/console-setup reload

Вообще, способов получить "приличную" консоль предостаточно. Кроме способа, предлагаемого мной и описанного в упомянутой выше заметке (модификация видеорежима средствами grub2), можно использовать kexec-tools. В этом случае замысел состоит в том, чтобы запустить ядро посредством kexec уже после модификации BIOS видеоадаптера. Вот только как ни быстро стартует система, запущенная kexec, а всё равно это время не сопоставимо больше времени загрузки и рестарта пары модулей.

Универсальным решением когда-нибудь (будем надеяться) станет KMS (kernel mode setting). Для того чтобы попробовать KMS в данном частном случае, нужно:

  • отредактировать /etc/initramfs-toolsmodules, добавив туда строки:
	intel_agp
	drm
	i915 modeset=1
  • командой "update-initramfs -k `uname -r` -u" создать новый образ начальной файловой системы в памяти;
  • убрать из /etc/init.d/rc.local строки, имеющие отношение к 915resolution и uvesafb (но оставить строки, имеющие отнoшение к fbcon и console-setup);
  • перезагрузиться.

К сожалению, результат пока нельзя гарантировать. Framebuffer с нужным разрешением может появиться (причём /sys/class/graphics/fb0/name определённо укажет на его происхождение: inteldrmfb), но не запустятся Х-ы. Или наоборот. Не удивительно: в рамкаx данного дистрибyтива и с данным ядром ни ядро (<2.6.30-2), ни intel-овский драйвeр (<2.7.99.1) завeдомо нe yдовлeтворяют трeбованиям, предъявляемым на настоящий момент KMS. Так что возвращаем на место uvesafb, и борьбу за эстетику консоли на этом прекращаем.

Для оперативности доступа к административным функциям, помимо такого популярного при настройке приёма как 'sudo -i', рекомендуется в файле /etc/sudoers "раскомментировать" строку

	%sudo ALL=NOPASSWD: ALL

Для членов группы sudo это не отменяет необходимости самой команды, но избавляет от необходимости вводить пароль. Останется только редактированием файла /etc/group внести себя, любимого, в эту группу.

На этом этапе имеет смысл инсталлировать rcconf и хорошенько почистить список запускаемых при загрузке демонов. Занятие это довольно индивидуальное, хотя такие сервисы как pcmciautils (это при отсутствии-то pcmcia), apm и rsync вряд ли кому-то понадобятся на EEEPC 701. Мне также не нужны ни cups, ни avahi-daemon, ни pulseaudio, ни pppd-dns, ни usplash, ни ufw, ни ubiquity. Более того, после обновления до ядра 2.6.29-1-netbook пропала нужда в cpufrequtils и loadcpufreq — в этом ядре возможности регулировки частоты процессора отключены. Чистить список запускаемых при старте демонов можно ещё достаточно долго: многие из них запускаются только для того, чтобы убедиться, что конфигурация их использования не предполагает. Но это... скорее спорт, чем необходимость: выигрыш в сокращении времени загрузки будет пренебрежимо мал.

В своё время в графической консоли я использовал и браузер, и почтовый клиент, и медиа-проигрыватель и "просмотрщик" изображений. Сейчас же решил список консольных приложений не расширять: X Window-то — рядом. "К чему плодить сущности?". Читать/писать я действительно предпочитаю в консоли, никуда не деться от неё с используемыми в работе сетевыми утилитами, а для всего остального — можно и с gui смириться.

К нему и перейдём. Загрузить Х-ы при "очищенном" /etc/X11/default-display-manager проще всего, вызвав дисплей-менеджер: gdm. Выбор DE меня и на десктопе никогда особенно не волновал, а уж на EEEPC — и подавно. Что там предлагают, Gnome? Ну, и ладно. Ни одно приложение не захочет делить 7-ми дюймовый экран с какими бы то ни было панелями, ярлыками и т.п. Так что основной замысел: обеспечить максимально быстрый доступ к наиболее используемым приложениям, а последние использовать в полноэкранном режиме.

По моему глубокому убеждению, доступа, более быстрого, чем обеспечивают hotkeys, не бывает. К счастью, Gnome предоставляет нам возможность задать "Комбинации клавиш клавиатуры". Из того, что предложено по умолчанию, мне представляются полезными следующие:

  • Alt+W — Запустить веб-браузер;
  • Alt+H — Домашняя папка;
  • Alt+R — "Run Application";
  • Alt+A — "Main Menu";
  • Alt+T — "Run a terminal";
  • Alt+Space — "Activate the window menu";
  • Alt+Tab — Переключение между окнами;
  • Alt+1..4 — Переключение междy рабочими столами.

Кроме того, грех не воспользоваться "Пользовательскими комбинациями клавиш". Для меня это:

  • Alt+IWICD, требующийся довольно часто, если без питания от сети вы предпочитаете выключать wi-fi (что, вообще говоря, не лишнее);
  • Alt+SSynaptic, который первое время таки требуется;
  • Alt+XChromium, который я вслед за Алексеем Федорчуком весьма рекомендую именно для EEE PC/;
  • Alt+EThunderbird в качестве e-mail клиента;
  • Alt+MConky в качестве универсального средства наблюдения за состоянием системы.

Последние три комбинации в набор по умолчанию не входят и посему подлежат инсталляции. Thunderbird и Firefox привлекают абсолютной переносимостью профайлов между всеми используемыми компьютерами/ОС. Chromium — более экономно относится к памяти и пространству экрана. Знай себе переключай full screen и обратно (F11, а панель букмарков вызывай только при необходимости (Alt+B — и издержки 7-ми дюймового экрана будут минимальны. К тому же: весьма соответствует принятой манере использования hotkeys. Полный список здесь.

Conky, которую ранее я часто использовал в качестве фона рабочего стола, в таком виде на EEE PC представляется излишней: мне и Иксы-то нужны не так часто, а содержимое рабочего стола (при использовании абсолютного большинства приложений в полноэкранном режиме) и вовсе оказывается незаметным. Поэтому Conky вызываем эпизодически, только когда просыпается желание узнать, а как там у нас с температурой, памятью или местом на диске. В зависимости от направления любопытства рекомендуется редактировать /etc/conky/conky.conf, но об этом уже достаточно сказано ранее.

В отличие от консоли, для которой достаточно иметь нужное разрешение и один приличный фонт, "дизайн" Х-ов несколько более утомителен. Не чувствуя в себе желания перебирать почти два десятка ttf-фонтов, включённых в дистрибутив, я предпочёл инсталлировать cabextract, ttf-mscorefont и xfont-terminus. После чего выбрал ("Параметры -> Внешний вид -> Шрифты") полужирную Verdana, кегль 8 в качестве всех настраиваемых шрифтов, кроме моноширинного. Последним же назначил terminus bold, кегль 10. 96 точек на дюйм, без сглаживания, уточнение — полное, RGB. "О вкусах не спорят", но в данном случае мой выбор определялся не столько вкусом, сколько размером и геометрией экрана, да ещё собственным зрением.

Почти все используемые приложения предусматривают режим full-screen. Для тех же, кто такового не имеет (или путь к нему слишком долог), рекомендуется вместо двух панелей "умолчательного" Gnome-а оставить одну, расположив её справа (или слева): отношение сторон к этому подталкивает. Состав элементов панели — вопрос личных предпочтений, да и не так это важно, если основной способ запуска приложений — "комбинации клавиш". Размер панели — минимальный (20 пикселей), с кнопками скрытия и без стрелок. В обычной жизни скрытое состояние панели — норма. От фонового изображения на панели отказываемся, оставляя её почти прозрачной

Миниатюрность клавиатуры и отсутствие обычных средств индикации раскладки (стандартные светодиоды или панель) делают заманчивым использование независимого включения раскладок (когда каждая раскладка включается своей фиксированной комбинацией клавиш). Наиболее подходящим мне кажется вариант Left Win — для первой раскладки, Right Win/Menu — для второй ("Параметры -> Клавиатура -> Раскладки -> Параметры раскладки").

Такой способ переключения показался мне настолько эргономичным, что я решил перейти на него и в консоли (до этого много лет использовал в качестве переключателя раскладки Caps Lock). Запустил

	dpkg-reconfigure console-setup
...но интересующего меня варианта переключения среди предлагаемых не обнаружил. Пришлось вспомнить, что переключатель раскладок в консоли задаётся в файле /etc/default/console-setup пeрeмeнными вида XKB*, самим видом своим намекающими на сродство к /etc/X11/xorg.conf. Намёк понятен: отправляемся в каталог /usr/share/X11/xkb/rules и ищем там файл, описывающий опции вида: "grp:...". Таковым оказался файл base.lst. В этом файле потребовалось найти строку комментария "Left Win (to first layout), Right Win/Menu (to last layout)". Соответствующая ему опция именовалась как "grp:win_menu_switch". Её-то и следовало присвоить переменной XKBOPTIONS в файле /etc/default/console-setup. После перезагрузки или рестарта /etc/init.d/console-setup переключатели раскладок в консоли и Х-ах были уже идентичны.

Вообще, способ задания переключателя раскладки в Ubuntu времён 9.04 — это что-то. Х-ы нынче, как известно, не нуждаются в описании раскладок в /etc/X11/xorg.conf. Они вообще без этого файла спокойно обходятся (в полезности этого я, кстати, сильно сомневаюсь). Переключатель же раскладок в консоли задаётся опиcатeлями XKB keymap. Чудно... Это было бы ещё полбеды, если бы средства настройки клавиатуры Gnome не модифицировали переменные в /etc/default/console-setup. Но: модифицируют! В случае с описанным выше независимым включением раскладок без должного успеха, разумеется. Так что и в Ubuntu "дедовские" методы оказываются иногда не лишними.

Последним, что следует отметить (хотя, возможно, это следовало отметить первым), являются особенности использования файловых систем, что влечёт за собой редактирование файла /etc/fstab. Не вдаваясь в обсуждение особенностей эксплуатации SSD-накопителей, просто напомню о существовании опции монтирования relatime. Интересующиеся могут прочитать о ней здесь. Кроме того, сэкономив память отказом от загрузки не используемого ПО, можно создать в ней файловую систему tmpfs. Размещение в ней каталога /tmp — напрашивается:

	tmpfs  /tmp  tmpfs  defaults  0  0

Можно не останавливаться на этом и разместить в tmpfs некоторые заполняемые временными файлами подкаталоги /var. Трудно сказать, насколько это нужно, но не могу не отметить, что лучшую реактивность я наблюдал на EEE PCx при работе с RIP, который, как известно, полностью размещает свою корневую файловую систему в памяти.

Оценка

Однозначной оценки не будет. Невозможно это: разные задачи, зрение, возможности менять начинку устройства "под себя". Определённо можно сказать, что, в некотором смысле, до уровня "наладонников" EEE PC не "дорастёт" никогда. Многочасовая работа без подзарядки, мгновенная готовность к работе по включению, "карманный" формат — всё это в настоящее время трудно реализуемо как в рамках архитектуры x86, так и средствами универсальных ОС, разработанных для IBM PC.

С другой стороны, расстояние между нетбуками и настольными компьютерами будет, похоже, только увеличиваться. В борьбе за потенциального покупателя последние идут исключительно по пути увеличения вычислительной мощности, площади экрана и т.д. Каждый шаг на этом пути делает всё более проблематичным перенос "десктоп"-продукта на 7-ми..10-ти дюймовый экран. Vista от MS — лучшая (или, правильнее сказать: худшая?) тому иллюстрация.

Специализированное, "нишевое" применение нетбуков, однако, вполне оправдано. И в связи с этим стоит поблагодарить Linux-сообщество за энтузиазм в отношении устройств этого класса. Уже сейчас средствами Linux можно "подогнать" нетбук под собственные задачи или личные пожелания. Исповедующие аналогичную логику производители создают таким образом специализированные "читалки" и смартфоны. Нам же остаётся либо пользоваться их продуктами, либо (если есть желание и возможность) создавать собственные на аппаратной базе различных ASUS-ов, Acer-ов, MSI-ев и пр.

Комментарии