Kraplax 14.03.2009 23:32
How-to`s — Установка и настройка Arch Linux на Eee PC 900
Этот пост является описанием моего опыта по установке и настройке Arch Linux на нетбук Eee PC 900. Эта инструкция теоретически должна подходить и к моделям 700 серии, однако это не проверялось. Установка ArchLinux на модели Eee PC 900A, 901, 904 и другие сильно отличаются! Советую посмотреть здесь во избежании излишних вопросов. Сама инструкция была по большей части взята отсюда. По сути я перевел эту вики, плюс испробовал варианты описанные в ней, а также "подложил соломку", чтобы вам было мягче падать.В этом дистрибутиве работают:
Тачпад с мультитачем (один палец - левый клик, два пальца - средний клик, три - правый) и скроллом (скролл двумя пальцами вверх/вниз)
Ethernet - работает отлично уже в установщике
Веб камера - работает через интерфейс v4l (корректно работает в Skype, VLC, MPlayer)
Wi-fi - работает
Звук - работает
Горячие клавиши Fn+F* - работают следующие:
-- спящий режим
-- Wi-Fi
-- Яркость +/-
-- Все обычные клавиатурные сочетания
Кнопка выключения питания
Что не работает:
кнопка переключения режимов дисплея Fn+F5
кнопка запуска менеджера задач Fn+F6
Что не проверялось:
микрофон
Внимание! Для меня данная ситуация вполне нормальна и я вполне доволен тем, что сейчас работает. Я не пользуюсь Fn+(F1,F5,F6) и встроенным микрофоном, поэтому не задавался целью настроить и их тоже, однако, думаю что все это можно настроить при желании.
Выбор и загрузка образа
Итак, для установки я использовал образ .img. Его можно найти на одном из зеркал. На момент установки самой свежей версией дистрибутива была 2009.02. Существует два типа установочных образов - ftp и core. Первый весит всего 160 MiB, но все пакеты системы будут загружаться по сети с выбранного вами зеркала. Core версия содержит в себе все необзодимые для базовой системы пакеты. Так как Eee система довольно нестандартная (как и любой ноут-/нетбук) то я решил, что будет лучше, если иметь все самые свежие пакеты из репозитория. Поэтому я качал версию ftp. В ней содержались необходимые драйвера на ethernet моего Eee PC (не смейтесь, в Kubuntu при определенных условиях ethernet карта не определялась), поэтому загрузка в общем-то не составила трудности.
Так как у меня не было USB-CD/DVD привода, то я решил устанавливать с флэшки, поэтому качал образ с расширением .img
После того, как образ был слит с зеркала, необходимо его правильно залить на флэшку. Для установки необходимо использовать USB флэшку, так как SD карта для этого не подходит.
Заливаем образ на flash-накопитель
Из Linux:
Убедитесь, что флэшка размонтирована и от рута введите следующую команду:
1 |
|
где image.img - это путь к файлу образа, а /dev/sdx - это путь к устройству флэшки (у меня это был /dev/sdd).
Внимание! Необходимо указывать путь к устройству, а не к одному из его разделов! То есть правильно будет /dev/sdd, а не /dev/sdd1 !
Из Mac OS X:
Для мака использование dd потребует некоторых предварительных действий. Вставьте флэшку и система автоматически подмонтирует ее. В терминале выполните:
1 |
|
и найдите свою флэшку. Выполните следующее:
1 |
|
для того, чтобы размонтировать все разделы на вашей флэшке /dev/diskX, но само устройство - оставить. После этого действуйте в соответствии с инструкцией для Linux.
Из Windows:
Можно попытаться найти утилиту dd для Windows, однако, в ней указание пути к флэшке может быть довольно неудобным (что-то вроде \\.\Volume{c18588c0-02e9-11d8-853f-00902758442b} или \\?\Device\Harddisk1\Partition0). Однако, можно воспользоваться утилитой flashnul отечественного производства. Для того чтобы правильно залить образ на диск выполните следующее:
1 |
|
Эта команда выдаст список дисков. Найдите среди них свою флэшку и введите следующую команду:
1 |
|
где X - Это либо номер диска в том списке, который выдала предыдущая команда, либо буква диска вашей флэшки (например, E:). Если указывается буква диска, то не забудьте поставить после нее знак двоеточия ('Z:', а не 'Z'!).
Установка Arch Linux на Eee Pc
Вставьте флэшку в порт нетбука и перезагрузитесь. Во время инициализации BIOS нажмите Esc - появится меню выбора устроства загрузки. Выберите вашу флэшку.
Когда система полностью загрузится, то появится приглашение логина. Войдите как root и запустите /arch/setup
Теперь перед вами будет текстовое меню. Первый пункт - настройка сети и зеркала. Заходим туда, настраиваем как нам нужно сеть (у меня заработал только ethernet, вайфай не смог), затем вторым пунктом - выберите удобное вам зеркало. Я выбирал яндексовское, но на самом деле для моих 128kbps это неважно - лишь бы работало и все.
Теперь возвращаемся в главное меню и идем в третий пункт - разметка диска (второй пункт можно в общем-то пропустить - это настройка часов). Ну, тут хозяин - барин. Размечаете как хотите. На вики Arch'а говорится о том, что для продления срока службы SSD (Solid state disk - флэшэк-винтов) лучше делать следующее:
Не используйте журналируемую файловую систему на разделах SSD
Не делайте свопов на SSD
Отредактируйте ваш fstab чтобы монтировать разделы на SSD в режиме 'noatime'
Не ведите запись логов и сообщений на SSD
Конкретно по двум последним мы еще пройдемся, а сейчас самое время учесть первые два пожелания. При ручной разметке будут по очереди появляться диалоги настройки разделов. Первым вам предложат создать своп. Выберите NONE из списка разделов для свопа. Вторым выбирать придется /. Тут уж сами - как разметили, так и монтируете. Интерфейс не очень интуитивный, но вполне понятный.
Вернемся теперь в главное меню. Под цифрой 3 найдем немаловажный пункт - выбор пакетов. Он разбит в два этапа - сначала вам дадут выбрать группы пакетов, а затем уже каждый пакет в отдельности. Групп всего две - Base и Devel, тут я бы посоветовал брать обе - в конце концов, все мы знаем, эти три волшебные команды ./configure, make и make install. В выборе отдельных пакетов окажется, что нам не показали еще одну группу, дополнительную. В ней мы найдем несколько важных нам пакетов. Для Eee PC 900 это, например, пакет wireless_tools, который понадобится для настройки wifi. Если знаете свои желания лучше меня - выбирайте пакеты дальше, я же на этом в общем-то ограничился.
Теперь в главном меню выбираем пункт под цифрой 4 - установка пакетов. Ну, тут можете отвлечься на чашечку чая, выпиливание лобзиком или выращивание дерева - зависит от пропускной способности канала, так как теперь все выбранные вами пакеты будут скчиваться и в конце концов установятся. Хочу предупредить - желательно ноут тыкать в любые клавиши чтобы он не "гасил свет" - при выключении дисплея, конечно, сразу не происходит отключения системы, но при длительных паузах у меня пропадал коннект. Может быть из-за провайдера, может быть из-за плохой линии, но может все же стоило будить время от времени малыша..? В общем, раза с четвертого, когда я будил Eee каждые 5 минут - все установилось благополучно :)
Остальные пункты - настройка системы и установка загрузчика не должны вызвать проблем.
Базовая настройка
Сначала - те моменты которые мы были не в силах разрешить при установке. Во-первых, ко всем разделам на SSD добавьте опцию noatime в /etc/fstab. Это позволит уменьшить количество обращений к диску и продлить срок его службы. Также, если вы не особо интересуетесь логами, то стоит добавить следующую строку:
1 |
|
в тот же /etc/fstab. Это так же сократит количество записей на диск.
А теперь обустроим сеть. Вообще, Ethernet уже должен быть настроен и работать. До того как вы продолжите - убедитесь что Wireless у вас включен в BIOS'е, потому как дефолтный Xandros игнорировал это и пользовал WiFi даже когда он был отключен (воистину, шайтан-машина). То же самое относится и камере.
Если вы этого еще не сделали, установите пакет wireless_tools. Местный менеджер пакетов Pacman делает это так:
1 |
|
Ключ S для установки, y - для обновления списка пакетов перед установкой. Если не хотите обновлять список пакетов - можно просто -S. Еще один полезный ключ - u. pacman -Syu полностью обновит все установленные в системе пакеты. Для более полной справки по pacman лучше всего читать Arch вики
Для настройки беспроводной сети без удобного некоторым из вас менеджера сетей введите следующие команды от рута:
1 |
|
Конечно же, вместо MyWiFi ставите свое название сети, ключ WEP тоже свой (я не спец в Wifi и незнаю как настроить WPA, мне оно и не нужно в общем-то), вместо 192.168.0.2 - желаемый адрес вашего ноутбука, вместо 192.168.0.1 - адрес компьютера, который будет раздавать вам интернет. Еще в /etc/resolv.conf пропишите адрес DNS - если не знаете как и что это, то добавьте просто
1 |
|
Теперь насчет ядра. Вообще, для модели EeePC 900 лучше использовать стандартное ядро. Есть еще вариант заточенный под Eee, но в нем используются устаревшие (однако, не менее работоспособные, имхо) драйвера madwifi и есть проблемы с запуском Wine.
Важный момент - если вы хотите установить какой-либо бутсплэш, например Splashy или Bootsplash, то очень советую сделать это до внесения изменений в свой rc.local, inittab и другие важные файлы настройки системы. При установке пакетов бутсплэшей эти файлы заменяются на чистые файлы с необходимыми бутсплэшам настройками, а старые версии будут сохранены с расширением .pacsav.
Установка и настройка X сервера
Начнем с установки самого сервера X:
1 |
|
А к нему дрова на видео и для тачпада:
1 |
|
Теперь немаловажный момент - настройка иксов. Вообще, можно настроить с помощью xorgconfig, но меня заинтересовал результат еще одного способа - через утилиту hwd. Установим одноименный пакет и выполним следующее:
1 |
|
Это сгенерирует файл xorg.conf по вашему железу и установит его куда нужно. Здесь в любом случае появятся загвоздки и вам придется редактировать файл вручную. Во-первых, в нем по-дефолту хоть и будет вписан драйвер synaptics, но будет закомментирован. Во-вторых, мы ставим свежий дистрибутив, в котором будет свежий Xorg. А для него понадобится добавить три строчки, которые позволят включить использование функции "мультитач", то есть один палец на тачпаде - левый клик мышью, два - средний, три - правый. Это место я пометил в своем примере конфига. Кстати, если неудобно, думаю можно и назначить два польца правому клику, хотя я не пробовал. Также по умолчанию используется метод ускорения EXA. Понятия не имею что это, но как факт он слишком сырой и вызывает множественные глюки: например, в трее KDE4 полностью пропали все иконки (а я еще жаловался на мусор!), а в огнелисе прокрутка была медленной.
Так как все модели 900 одинаковы - можете смело копировать этот конфиг себе. У меня пока что с ним не было замечено никаких проблем. Пользователи 700х моделей захотят сменить разрешение в секции "Monitor". Хотя, если честно, я тоже не большой гуру xorg.conf, может быть какие-то параметры будут игнорироваться при использовании HAL.
Звук, камера и микрофон
Начнем со звука. Вообще-то необходимые модули должны подгружаться автоматически. Проверим:
1 |
|
Если вывод показал, что модуль есть, а также есть зависимые от него - все в порядке. Однако, может случиться так, что модуль не подгружается при старте автоматически. Тогда открываем /etc/modprobe.conf и добавляем следующую строку:
options snd-hda-intel model=auto
Владельцы 701ой модели должны будут вписать следующее:
options snd-hda-intel model=3stack-dig
До сих пор нет звука? Проверьте установили ли вы ALSA. Да-да, бывает и такое. Если нет, то ставим:
1 |
|
Теперь необходимо добавить alsa в список демонов в rc.conf. Открываем файл /etc/rc.conf и ищем строчку, начинающуюся с DAEMONS=( и вписываем в скобки alsa:
1 |
|
После этого систему желательно перезагрузить. Затем запускаем:
1 |
|
и после того, как была настроена звуковая карта, запустим
1 |
|
и настроим громкости до нужного уровня.
Чтобы включать камеру при запуске системы добавим в /etc/rc.local следующую строку:
1 |
|
Если вам очень хочется то приложение, которое было в дефолтном Xandros'е, то установите ucview из AUR.
Теперь у вас есть девайс /dev/video0, который собственно и представляет собой веб-камеру. С ним может работать последняя версия Skype. Для просмотра в MPlayer:
1 |
|
Вариант с MPlayer я сам не пробовал, но зато через VLC работает нормально - просто в меню "Медиа" -> "Открыть устройство" и в появившемся окне вписываем путь к устройству /dev/video0
Замечение: удостоверьтесь, что опция BIOS'а "OS Installation" выставлена в "finished", иначе камер может неработать в некоторых приложениях (например Skype).
Внимание! Мне для работы микрофон был ненужен, поэтому я могу лишь привести оригинальную инструкцию с вики ArchLinux! Работоспособность я не проверял!
Для работы микрофона:
Установите i-Mic как Input source в alsamixer
Настройте Capture и i-Mic Boost по вашим нуждам
Отредактируйте /etc/asound.state так, чтобы в секции, содержащей name 'Capture Switch' (для меня это была секция control.11) значения value.0 и value.1 были "true":
От рута запустите следующее:
1 |
|
Теперь микрофон должен работать.
Настройка горячих клавиш
Начнем с того, что нам понадобится последняя версия пакета acpi-eee, которую можно скачать отсюда. Установим пакет:
1 |
|
Pacman сам разрешит зависимости и установит пакет acpi. После этого необходимо добавить acpid в список демонов в rc.conf(см. пункт настройки звука).
Для настройки горячих клавиш открываем файл /etc/acpi/events/anything в текстовом редакторе и убеждаемся, что action указывает на /etc/acpi/handler.sh (в инструкции по настройке говорилось о handler-disabled.sh, однако такого файла я не нашел).
Далее, открываем /etc/acpi/eee.conf и настраиваем значения переменных под свои нужды:
XUSER - Пользователь, от имени которого выполнить действие если автоматическое определение на сработает
POWER_BUTTON_COMMAND - команда, выполняемая при нажатии на кнопку питания
AP_COMMAND - команда, выполняемая при нажатии на кнопку диспетчера задач (Fn+F6)
OUTPUT_DISPLAY_MODE - режим вывода монитора при нажатии на кнопку переключения режимов монитора. Может принимать значения: clone, left-of, above, below, right-of. Для более подробной информации см. англоязычный ресурс автора скриптов
COMMAND_ON_LID_CLOSE - установить в "yes", чтобы использовать следующие два параметра, либо в "no" в противном случае.
ON_AC_LID_CLOSE_ACTION - действие при закрытии крышки нетбука при питании от сети
ON_BATTERY_LID_CLOSE_ACTION - действие при закрытии крышки нетбука при питании от батареи
NETWORK_UP_COMMAND - команда, выполняемая после включения WiFi
NETWORK_DOWN_COMMAND - команда, выполняемая после выключения WiFi
AC_PLUGGED_COMMAND - команда, выполняемая при подключении к заряднику
AC_UNPLUGGED_COMMAND - команда, выполняемая при отключении от зарядника
ASUSOSD_XPOS - Если установлен asusosd, указать позицию OSD на экране по оси X
ASUSOSD_YPOS - указать позицию OSD на экране по оси Y
Внимание! Если вы собираетесь пользоваться сочетанием Fn+F2 для отключения WiFi, то необходимо указать в переменных NETWORK_UP_COMMAND и NETWORK_DOWN_COMMAND команды для освобождения сетевого интерфейса, чтобы он не был занят при включении и не возникало проблем. Например, при использовании netcfg2 переменная NETWORK_UP_COMMAND='netcfg2 -a', что позволит освободить интерфейс, чтобы netcfg не думала что уже подключена.
Так как предидущий абзац не вполне логичен в оригинале (зачем освобождать интерфейс в команде включения сети?), а также ввиду того, что после отключения у меня работоспособность WiFi не восстанавливается до перезагрузки, то я предлагаю вам пропустить эти две переменные, если, конечно, вы не знаете точно что вы делаете. Мои же переменные выглядят следующим образом:
NETWORK_UP_COMMAND="ifconfig wlan0 up"
NETWORK_DOWN_COMMAND="ifconfig wlan0 down"
Чтобы настроить выключение по кнопке питания (да, даже это необходимо настраивать), нам придется установить sudo:
1 |
|
и от рута запустив
1 |
|
сы откроем файл /etc/sudoers в редакторе vi. Дело в том, что если редактировать файл напрямую, то велик риск ошибки синтаксиса или неправильно установленных прав доступа к файлу. Команда visudo позволяет отследить ошибки, однако для новичков будет довольно сложно работать в vi. Поэтому, следующий шаг я распишу по клавишам. Вообще нам нужно добавить строку:
1 |
|
в любом месте этого файла. При этом вместо USER - имя пользователя, которому вы хотите разрешить выключение кнопкой питания. Вместо HOST - имя компьютера (оно задано значением переменной HOSTNAME в файле /etc/rc.conf). Вместо HOST можно использовать ключевое слово ALL, тогда разрешение не будет ограничено только одним компьютером (что бы это ни значило). Для этого:
переместите курсор в начало пустой строки
нажмите один раз i (появится надпись --INSERT-- или --ВСТАВКА-- внизу слева)
введите необходимую строку USER HOST = NOPASSWD: /sbin/poweroff
нажмите Esc
Если вам с первого раза удалось набрать строку без ошибок и документ готов к сохранению - наберите :wq и нажмите Enter. Если вы сильно запутались и не можете даже выйти из редактора - нажмите пару-тройку раз на Esc, а затем наберите :q! - это позволит выйти без сохранения изменений. Просто повторите аккуратно шаги сначала.
Теперь создайте файл /etc/acpi/events/power в любом текстовом редакторе и впишите в него:
1 |
# /etc/acpi/events/power
|
Пользователи и группы
По умолчанию создаваемые пользователи принаждежат только группе users и она является и основной группой. Однако для работоспособности звука или каких-то других важных компонент (особенно в тяжелых DE), простых пользователей лучше было бы добавить в соответствующие группы. Для этого от рута введем команду:
1 |
usermod -aG tty,disk,wheel,lp,log,video,audio,optical,storage,scanner,camera,power,locate your_username
|
Естественно, вместо your_username вы пишете имя пользователя, которого хотите добавить в эти группы.
Внимание! Не меняйте порядок следования ключей команды usermod! Ключ -Ga не будет работать так же, как -aG! После ключа -G должны быть перечислены все группы, поэтому ключ -a будет воспринят как еще одна группа и будет выдана ошибка о несуществующей группе.
Также, если вы при выполнении этой команды получите ошибку об отсутствии в системе какой-либо из групп в списке, то просто удалите эту группу из этой команды.
Настройка русского языка в консоли
Знаю, многое было уже сказано, но раз уж мы здесь и до этого дошло дело - читаем.
На дворе 21 век, поэтому мы будем использовать UTF-8 юникод. Открываем файл /etc/rc.conf и ищем ближе к началу строку
1 |
|
и меняем ее на
1 |
|
Но этого недостаточно. Спускаемся немного ниже и видим пустую переменную CONSOLEFONT=. В ней должен быть записан русский шрифт для консоли. Если не знаете какой шрифт сюда вписать, то выполните следующую команду:
1 |
|
Она перечислит все шрифты, которые содержат в названии Cyr (сркпащение от Cyrrilic - кириллический). Берем от названий файлов шрифтов все, кроме двух расширений. То есть если вам приглянулся вариант Cyr_a8x14.psfu.gz, то в CONSOLEFONT впишем Cyr_a8x14. Здесь главное запомнить то, что нужно соблюдать регистр и желательно выбирать размер шрифта 8x16, хотя, если вас устроит 8x8 - ваше дело :D
Ну, вот теперь все, основы настройки железа и даже немного софта - изложил. Если что-то забыл или у вас какие-то трудности - пишите сюда. Но! ввиду отвратительной работы уведомлений, и большого количества новых постов в единицу времени на этом ресурсе я буду следить за этой темой около двух-четырех дней! После этого каменты я уже вряд ли ваши прочитаю, поэтому пишите мне в личку или ищите меня в Jabber'е.
Kraplax 14.03.2009 23:34 #
+ 0 -
Сразу прошу прощения за казус - забыл вставить cut и этот монстр попал на главную страницу целиком :/
Ну наконец то! как я долго ждал :)
спасибо за познавательную инструкцию.. как будто вернулся лет на 5 (или больше?) назад. теперь я точно не буду пробовать арч =) тем более я представляю какое это изнасилование проделать все это на маленькой клавиатуре моего 701-го
Воля твоя =)
Мое дело - описать процесс и постараться сделать чтобы грабли были выше пояса и рассказать где лежат :P
Мое дело - описать процесс и постараться сделать чтобы грабли были выше пояса и рассказать где лежат :P
Почитаю чисто из любопытства, ибо буквально час назад закончил устанавливать и настраивать арч в качестве основной системы )
А еще: ну ты реально монстр столько текста накатать. Мне со своим "Ionize It!" даже стыдно как-то стало.
Да ладно =)
Кстати, именно из-за таких объемов я и просил когда-то функцию черновика в который можно сохранить недоделанный пост. А то по памяти вставлять теги в N++ и потом копировать и проверять с помощью предпросмотра, чтобы в случае ошибки или массового переименования тегов - назад в N++ и тд - это все же неудобно. Да и иногда есть возможность в дороге пописать, вдали от оригинального файла черновика статьи. Может все же сделаете?
Кстати, именно из-за таких объемов я и просил когда-то функцию черновика в который можно сохранить недоделанный пост. А то по памяти вставлять теги в N++ и потом копировать и проверять с помощью предпросмотра, чтобы в случае ошибки или массового переименования тегов - назад в N++ и тд - это все же неудобно. Да и иногда есть возможность в дороге пописать, вдали от оригинального файла черновика статьи. Может все же сделаете?
Еще в /etc/resolv.conf пропишите адрес DNS - если не знаете как и что это, то добавьте просто
nameserver=IP_адрес_компа_раздающего_инет
nameserver=IP_адрес_компа_раздающего_инет
замечание. в строке с nameserver не нужно равно:
nameserver IP_адрес_компа_раздающего_инет
http://wiki.archlinux.org/index.php/Installing_Arch_Linux_on_the_Asus_EEE_PC
тут тоже есть про установку арча на ииписи.
тут тоже есть про установку арча на ииписи.
Вообще-то отсюда была вщята большая часть материалов. Просто я забыл как-то в тексте упомянуть откуда и слинковать забыл. Моя беда, извините. Спасибо за напоминание :) Сейчас пофиксим.
Осталось тебе только ее еще в саму арчевую вики засунуть ;) Думаю ее там с радостью примут.
Ее придется сильно поправить. Да и вики на английском не мешало бы подновить. Пусть берут и переписывают, я не против. Но инициатива наказуема, поэтому я пожалуй ограничусь на этом. Вот сейчас думаю что насчет поста про KDE4 и его настройку (если нужна) делать, а также про настройку звука в KDE4. Как-то там все странно...
Поставил сегодня, иксы без конфига не увидели устройства ввода. Завтра попробую сделать по статье, а пока в любом случае - огромное спасибо =)
Пожалуйста =)
Если где-то находил ошибки или опечатки - пиши, поправим.
Если где-то находил ошибки или опечатки - пиши, поправим.
Поборол Xorg своими силами. Оказалось, что из-за глюка файловой системы не загружался модуль evdev и не находились устройства. Переустановил - все пашет как часы и без конфига ксорга. Дополнительно пришлось попилить только файл халовских настроек синаптика.
Кстати, после eeebuntu и gnome - arch+kdemod субъективно быстрее. Переход i386 -> i686 определенно оказал положительное влияние =)
Кстати, после eeebuntu и gnome - arch+kdemod субъективно быстрее. Переход i386 -> i686 определенно оказал положительное влияние =)