Установка Ubuntu Linux на Acer Aspire One

Неделю назад я стал обладателем нетбука Acer Aspire One.

Предлагаю вам свой опыт в установке Ubuntu Linux на этой машине.

Коротко о его достоинствах и недостатках.

Достоинства: маленькие размеры, маленький вес.

Недостатки: очень малая скорость записи на SSD-накопитель (могли поставить устройство и с лучшими характеристиками).

Установка Ubuntu Linux 8.04

Первым делом нам необходимо подключить внешний USB-DVD-привод или подготовить загрузочную флешку. Так как у меня небыло внешнего DVD-привода, то пришлось идти путем загрузочной флешки, которая была подготовлена на другой машине.

Внимание: используем дистрибутив Ubuntu Linux 8.04.1 Desktop Edition.

Итак, вставляем флешку в USB-порт, включаем нетбук и жмем F12. Выбираем загрузку с USB HDD (это наша флешка). При установке создаем swap-раздел размером в 1 Гб, все остальное под корень. Файловую систему рекомендую выбирать нежурналируемую, например, ext2. Выбор такой файловой системы увеличит быстродействие и срок жизни SSD-накопителя.

Установка с флешки будет проходить довольно долго – около 1,5 часа. Причина – низкая скорость записи на SSD-накопитель (смю выше недостатки).

Итак, система установлена, но нужно еще ее “обпилять напильником” под оптимальную работу на Acer Aspire One.

Сначала обновим систему (дл этого надо воткнуть нетбук в проводную сеть):

sudo apt-get updatesudo apt-get upgrade

Перезагружаемся после установки всех обновлений.

Доставляем локализацию. Если, не ошибаюсь, после этого шага тоже надо перезагрузиться.

Переходим к установке устройств.

Беспроводная сеть

Рекомендуется сначала отключить драйвера, которые предлагает Ubuntu, но я этого не делал – у меня заработало все без этого шага. Вам рекомендую все-таки отключить их.

Для отключения идем в меню “Система” – “Администрирование” – “Hardware drivers” и в открывшемся окне снимаем галочки со всех элементов.

Откроем терминал и создадим папку для драйверов:

mkdir sourcecd source

скачаем последние исходники:

wget http://snapshots.madwifi.org/madwifi-hal-0.10.5.6/madwifi-hal-0.10.5.6-r3861-20080903.tar.gz

распакуем их:

tar -xzvf madwifi-hal-0.10.5.6-r3861-20080903.tar.gz

установим пакеты, необходимые для компиляции драйвера:

cd madwifi-hal-0.10.5.6-r3861-20080903sudo apt-get install build-essential linux-headers-$(uname -r)

Все, мы готовы для сборки и установки драйвера:

makesudo make installsudo modprobe ath_pci

Добавим модуль в автозагрузку, дабы он поднимался каждый раз при включении системы:

gksudo gedit /etc/modules

В текст открывшегося файла добавляем строчку:

ath_pci

Откроем редактором файл /etc/default/linux-restricted-modules-common:

gksudo gedit /etc/default/linux-restricted-modules-common

Добавим в него строчку:

ath_hal

Все, мы имеем работающую беспроводную связь. Осталось только подключиться к работающей точке доступа. Все легко настраивается через аплет NetworkManager.

Если мы обновим ядро, то нам необходимо будет заново собрать wifi-драйвера. Для этого нужно открыть терминал и набрать следующие команды:

cd source/madwifi-hal-0.10.5.6-r3861-20080903make cleanmake

sudo make install

sudo modprobe ath_pci

И беспроводная сеть снова заработает.

Индикаторы беспроводной сети

Для включения индикаторов беспроводной сети необходимо открыть файл /etc/rc.local:

gksudo gedit /etc/rc.local

и добавить в него 2 строчки (над строчкой exit 0):

sysctl -w dev.wifi0.ledpin=3
sysctl -w dev.wifi0.softled=1

Сохраним файл. На всякий пожарный сделаем его исполняемым:

sudo chmod a+x /etc/rc.local

После перезагрузки индикаторы будут работать на отлично.

Веб-камера

Установим пакет luvcview:

sudo apt-get install luvcview

Проверим распознана ли наша камера:

dmesg |grep -i “uvc”

Если получили что-то вроде:

[   29.601485] uvcvideo: Found UVC 1.00 device USB 2.0 Camera (0c45:62c0)
[   29.617301] usbcore: registered new interface driver uvcvideo

значит все отлично.

Для тестирования можем запустить:

luvcview -f yuv

Картридер

С картридером промучался больше всего. В результате удалось запустить со скрипом и некоторыми глюками (карты памяти обнаруживались только если они были вставлены в разьемы еще до загрузки Ubuntu Linux). Хотя у вас, возможно, это заработает и без этих “приколов”.

Итак, рецепт запуска картридера.

Создаем файл /etc/modprobe.d/aspireone

sudo gedit /etc/modprobe.d/aspireone

В этот файл пишем следующие строчки:

options pciehp pciehp_force=1
install sdhci for i in 2381 2382 2383 2384; do /usr/bin/setpci -d 197b:$i AE=47; done; /sbin/modprobe --ignore-install sdhci

В файл /etc/modules добавляем строчку:

pciehp

После перезагрузки карты памяти заработают.

Для энергосбережения можно еще поставить один скрипт. Скачаем его:

wget http://petaramesh.org/public/arc/projects/AcerOne_Ubuntu/jmb38x_d3e.sh

Установим права на скрипт:

sudo chmod 754 jmb38x_d3e.sh

Переместим его в более подходящее место:

sudo mv jmb38x_d3e.sh /usr/local/sbin/

или вместо mv используйте команду cp (копировать), если хотите сделать копию этого скрипта.

Теперь сделаем автоматический запуск скрипта при загрузке Ubuntu Linux. откроем файл /etc/rc.local

sudo gedit /etc/rc.local

И добавим в него следующую строчку (добавлять над строчкой exit 0):

/usr/local/sbin/jmb38x_d3e.sh &>/var/log/jmb38x_d3e.log &

После перезагрузки скрипт будет каждых 5 минут управлять питанием USB-устройств.

USB-флешки

Если вы устанавливали Ubuntu Linux с флешки, то вы столкнетесь с проблемой, что не монтируются USB-флешки. Решить ее довольно просто: достаточно открыть в редакторе файл /etc/fstab:

gksudo gedit /etc/fstab

найти строчку похожую на:

/dev/sdb        /media/cdrom0   udf,iso9660 user,noauto,exec 0       0

и удалить ее или поставить перед ней символ “#” (без кавычек).

После перезагрузки монтирование флешек будет проходить без проблем.

Управление вентилятором

По умолчанию скоростью вентилятора ничто (или никто) не управляет. Результат: довольно ощутимый шум. Исправим:

Скачаем два скриптика:

wget http://aceracpi.googlecode.com/svn/trunk/acer_ec/acer_ec.plwget http://electronpusher.org/~rachel/acerfand

Поместим их в нужные места и дадим право на исполнение:

chmod a+x acerfandsudo cp acer_ec.pl acerfand /usr/local/bin/

Запустим его:

sudo acerfand

Проверим, работает ли он (хотя вы сразу услышите это по исчезновению шума):

sudo tail -f /var/log/syslog

Если результатом у вас будет что-то вроде этого (у меня этой проблемы небыло):

Oct  9 02:04:36 lilput acerfand: acerfand 0.03 starting
Oct  9 02:04:36 lilput acerfand: Detected bios version v0.3301
Oct  9 02:04:36 lilput acerfand: Unsupported bios version v0.3301 found. Aborting.

Значит вам надо обновить BIOS на нетбуке. Инструкции вы можете найти здесь.

Сделаем автозапуск этого скрипта: откроем файл /etc/rc.local:

gksudo gedit /etc/rc.local

И добавим в него строчку (над строчкой exit 0):

/usr/local/bin/acerfand

Создадим файл конфигурации /etc/acerfand.conf. В него напишем следующее:

INTERVAL=5
FANOFF=60
FANAUTO=70

, где INTERVAL – интервал между проверками температуры в секундах;

FANOFF – температура в градусах Цельсия ниже которой вентилятор выключается при условии, что он был включен;

FANAUTO – температура в градусах Цельсия выше которой вентилятор включается при условии, что он был выключен;

Оптимизация работы с SSD-накопителем

Изменим опцию монтирования файловой системы с “relatime” на “noatime”. Откроем файл /etc/fstab:

gksudo gedit /etc/fstab

У вас должна получиться строчка вроде этой:

UUID=f0ae2c59-83d2-42e7-81c4-2e870b6b255d / ext2 noatime,errors=remount-ro 0 1

Теперь к фалам не будет дописываться время их последнего открытия, что конечно-же повысит скорость работы SSD.

Используем самый менее требовательный планировщик для доступа к диску. Для этого откроем файл /boot/grub/menu.lst:

gksudo gedit /boot/grub/menu.lst

ищем конфигурацию ядра по-умолчанию и дописываем в него опцию “elevator=noop”. Должно получится что-то вроде:

title           Ubuntu 8.04.1, kernel 2.6.24-19-generic
root            (hd0,0)
kernel          /boot/vmlinuz-2.6.24-19-generic root=UUID=f0ae2c59-83d2-42e7-81c4-2e870b6b255d ro quiet splash elevator=noop
initrd          /boot/initrd.img-2.6.24-19-generic
quiet

Включение этой опции позволит использовать планировщик доступа к диску, который работает по методу FIFO, что приведет к уменьшению количества обращений к диску.

Уберем лишние логи.

На нашей переносной машине вести логи более чем неразумно. Во первых – занимают место, которого и так мало, второе – в 99% они нам не нужны. Логично, что убрав их мы получим выигрыш в уменьшении количества обращений к диску.

Откроем файл /etc/fstab:

gksudo gedit /etc/fstab

tmpfs      /var/log/apt    tmpfs        defaults           0    0
tmpfs      /var/log        tmpfs        defaults           0    0
tmpfs      /tmp            tmpfs        defaults           0    0
tmpfs      /var/tmp        tmpfs        defaults           0    0

Если логи случайно станут нужны, то поставив в этом файле перед каждой из приведенных строчек символ “#” и перезагрузившись мы снова сможем нормально их использовать.

Внимание: Отключение логов может привести к тому, что некоторые программы будут вести себя странно при попытке доступа к логам. Хотя у меня еще такой ситуации небыло.

Настройка звука

Сначала пересоберем ALSA. Просто выполните эти команды:

sudo apt-get install module-assistantsudo m-a updatesudo m-a prepare

sudo m-a a-i alsa

sudo alsa force-unload

sudo depmod -ae

sudo modprobe snd-hda-intel

Откроем файл /etc/modules:

gksudo gedit /etc/modules

и добавим в него:

snd-hda-intel

Дальше мы должны сделать выбор из двух вариантов:

  1. Внутренний микрофон останется нерабочим (подключенный через разъем будет работать), но звук будет работать после засыпания-восстановления нетбука.
  2. Внутренний микрофон будет работать, но не будет звука после засыпания-восстановления нетбука (я выбрал этот вариант).

Для первого варианта открываем файл /etc/modprobe.d/alsa-base:

gksudo gedit /etc/modprobe.d/alsa-base

и пишем в него:

options snd-hda-intel model=toshiba

Для второго варианта в тот-же файл пишем:

options snd-hda-intel model=auto

Если не работает (у меня не заработал звук при просмотре фильма, хотя при старте системы начальный звук был проигран), то пробуем:

options snd-hda-intel model=acer

Перезагружаемся, чтобы услышать звук. Если у вас к звуку примешиваются лишние шумы (у меня такое было), то правим файл /etc/modprobe.d/blacklist и добавляем в него строчку:

blacklist snd_pcsp

После перезагрузки этот “звуковой глюк” должен исчезнуть.

Увеличиваем скорость загрузки

Откроем файл /etc/init.d/rc:

ищем в нем строчку:

CONCURRENCY=none

и заменим ее на:

CONCURRENCY=shell

Уменьшаем энергопотребление

Откроем файл /etc/rc.local и добавим в него следующие строки:

# Economize the SSD
sysctl -w vm.swappiness=1               # Strongly discourage swapping
sysctl -w vm.vfs_cache_pressure=50      # Don't shrink the inode cache aggressively

# As in the rc.last.ctrl of Linpus
echo ondemand > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor
echo ondemand > /sys/devices/system/cpu/cpu1/cpufreq/scaling_governor
cat /sys/devices/system/cpu/cpu0/cpufreq/ondemand/sampling_rate_max > /sys/devices/system/cpu/cpu0/cpufreq/ondemand/sampling_rate

echo 1500 > /proc/sys/vm/dirty_writeback_centisecs
echo 20 > /proc/sys/vm/dirty_ratio
echo 10 > /proc/sys/vm/dirty_background_ratio

echo 1 > /sys/devices/system/cpu/sched_smt_power_savings
echo 10 > /sys/module/snd_hda_intel/parameters/power_save
echo 5 > /proc/sys/vm/laptop_mode

#Decrease power usage of USB while idle
[ -L /sys/bus/usb/devices/1-5/power/level ] && echo auto > /sys/bus/usb/devices/1-5/power/level
[ -L /sys/bus/usb/devices/5-5/power/level ] && echo auto > /sys/bus/usb/devices/5-5/power/level

Настраиваем Firefox

Установите тему Classic Compact – она позволит сэкономить место на экране и будет выглядеть на нетбуке гораздо симпатичнее.

По желанию можете установить плагин AutoHideStatusBar, который будет автоматически скрывать строку статуса, когда в ней не будет необходимости.

Уберем кэш Firefox-а в каталог /tmp (место нам все-еще дорого). Для этого наберите в строке адреса “about:config”, потом нажмите правую кнопку “мышки” и добавьте новый строковой параметр “browser.cache.disk.parent_directory”. Присвойте ему значение “/tmp/firefox” (все без кавычек).

Установка Ubuntu Linux 8.10

Установка Ubuntu Linux 8.10 будет описана после выхода финальной версии.

Источники: при написании статьи использовались такие материалы:

https://help.ubuntu.com/community/AspireOne http://eee-pc.ru/wiki/ и многие другие (извините, но уже не помню).

Позначки: