Ubuntu 8.04 on eee pc: различия между версиями
God007 (обсуждение | вклад) |
Vovan (обсуждение | вклад) (→Горячие клавиши управления Wifi) |
||
Строка 234: | Строка 234: | ||
Создайте скрипт /etc/acpi/actions/wireless-toggle.sh со следующим содержимым | Создайте скрипт /etc/acpi/actions/wireless-toggle.sh со следующим содержимым | ||
− | + | #!/bin/sh | |
− | + | wlan_control=/proc/acpi/asus/wlan | |
− | + | WLANSTATE=$(cat $wlan_control) | |
− | + | case $WLANSTATE in | |
− | + | 1) | |
− | + | ifconfig ath0 down | |
− | + | modprobe -r ath_pci | |
− | + | echo 0 > $wlan_control | |
− | + | modprobe -r pciehp | |
− | + | ;; | |
− | + | 0) | |
− | + | modprobe pciehp pciehp_force=1 pciehp_debug=1 | |
− | + | echo 1 > $wlan_control | |
− | + | modprobe ath_pci | |
− | + | echo 0 > $wlan_control | |
− | + | echo 1 > $wlan_control | |
− | + | ;; | |
− | + | esac | |
− | |||
− | |||
− | |||
− | |||
и сделайте его исполняемым, выполнив команду | и сделайте его исполняемым, выполнив команду | ||
− | + | chmod a+x /etc/acpi/actions/wireless-toggle.sh | |
− | |||
==ACPI - настройка горячих клавиш, камеры и т.д.== | ==ACPI - настройка горячих клавиш, камеры и т.д.== |
Версия 15:58, 19 декабря 2008
Содержание
- 1 Сетевой интерфейс не работает
- 2 Ядро ARRAY.ORG
- 3 Инструкция по установке ядра от ArrayOrg
- 4 Включение WiFi
- 5 Корректное выключение
- 6 ubuntueeetweak
- 7 RiceeeyTweak
- 8 Включение управления частотой процессора
- 9 Горячие клавиши управления Wifi
- 10 ACPI - настройка горячих клавиш, камеры и т.д.
- 11 Загрузка
- 12 Горячие клавиши
- 13 Открытие evolution при включении адаптера питания
- 14 Освобождаем место: сжатие раздела /usr
Сетевой интерфейс не работает
Проблема: сетевой адаптер отключился. Я установил закрытый драйвер, но это не помогло: светодиод линка на роутере не загорается при включении eeePC.
Очень похоже, что проблема в состоянии электропитания адаптера, в который тот переводится при завершении работы в оригинальном дистрибутиве Xandros: замечено, что такая проблема (с пропаданием линка) наблюдается при «двойной» загрузке: всякий раз после завершения работы Xandros и загрузке в Ubuntu сетевой адаптер не функционирует.
Решение: Отсоедините eeePC и выньте из него батарею, а затем подключите её снова. Каким-то образом это «сбрасывает» что-то внутри eeePC, и это всегда восстанавливает работоспособность проводного сетевого адаптера всегда восстанавливается.
Ещё вариант: если вы хотите удалить Xandros и полностью перейти на Ubuntu - вы можете завершить последний сеанс работы в нём через «жёсткое» отключение: нажмите и удерживайте нажатой кнопку отключения питания в течение примерно 5 секунд.
Ядро ARRAY.ORG
Адам (также участник сообщества eeeusers.com) создал специальное ядро. В нём решены проблемы с Wifi, микрофоном, а также реализованы некоторые другие возможности. Установка ядра состоит из двух основных шагов:
1. Прочтите: эту страницу http://array.org/ubuntu/index.html 2. Следуйте этим инструкциям http://array.org/ubuntu/setup.html
Многие пользователи протестировали это ядро и остались довольны.
Вот вкратце список включенных особенностей оптимизированного ядра:
Ядро linux-image-2.6.24-20-eeepc:
* Оптимизировано для процессоров Pentium-M. * Применён патч 40-жильного UDMA для увеличения скорости ввода/вывода. * USB_PERSIST через патч от timauton (ВНИМАНИЕ! помимо ядра нужен ещё дополнительный скрипт. См. об этом в последнем разделе на странице http://array.org/ubuntu/post-install.html (по-английски)).
Пакет linux-ubuntu-modules-2.6.24-20-eeepc:
* Модуль eeepc-acpi * Модуль madwifi wireless (из ветки madwifi-hal-0.10.5.6, svn r3745) * Модуль для разгона eeepc-linux (v0.2) * Модуль uvcvideo (для камеры) (svn r233) * Поправлен модуль snd_hda_intel - для верной работы микрофона на EeePC 900 * Обновлён драйвер-порт Elantech touchpad (чтобы его можно было выбирать).
Если вы решили поставить это ядро - смотрите внимательно следующие разделы, поскольку многие из них вам не потребуются.
Инструкция по установке ядра от ArrayOrg
Setup the Repository
1. Install Ubuntu v8.04. Make sure your EeePC can boot into Ubuntu without the aid of a USB Stick or external CD-ROM drive. 2. Setup the Array.org repository. This will add the following line to your APT Sources list.
deb http://www.array.org/ubuntu hardy eeepc
wget http://www.array.org/ubuntu/array-hardy.list sudo mv -v array-hardy.list /etc/apt/sources.list.d/
3. Install the Array.org repository public key.
wget http://www.array.org/ubuntu/array-apt-key.asc sudo apt-key add array-apt-key.asc
4. Update your local apt cache
sudo apt-get update
Download the EeePC Kernel
1. Install the EeePC-optimized kernel.
sudo apt-get install linux-eeepc
2. Reboot. 3. During GRUB's initialization, press ESC to open the boot options menu. The new kernel is labelled "2.6.24-21-eeepc".
If it is not at the top of the boot list, scroll down to it and hit enter.
Включение WiFi
Встроенный беспроводной адаптер Eee не работает «из коробки». Для устранения этой проблемы необходимо обновить драйвер. Откройте окно консоли (Приложения>Стандартные>Терминал) и введите следующие команды:
sudo apt-get update sudo apt-get install build-essential wget 'http://snapshots.madwifi.org/special/madwifi-ng-r3366+ar5007.tar.gz' tar zxvf madwifi-ng-r3366+ar5007.tar.gz cd madwifi-ng-r3366+ar5007 make clean make sudo make install sudo reboot
Обновления системы (в особенности новые ядра) приведут к тому, что обновлённый таким образом драйвер снова «сломается»; в этом случае просто повторите вышеуказанные действия, чтобы вновь восстановить работу wifi.
У кого ядро от ArrayOrg тому это не надо!
Корректное выключение
Ubuntu «из коробки» не умеет корректно выключать Eee. Завершение работы приводит к тому, что экран гаснет, однако питание не отключается, и для полного выключения вам нужно вынуть батарею.
Для полного корректного отключения Eee добавьте следующую строку:
rmmod snd-hda-intel
в конец скрипта /etc/default/halt .
ubuntueeetweak
Скрипт, находящийся здесь http://www.x2on.de/eeepc/ubuntueeetweak.sh прекрасно работает и позволяет выполнить большинство задач, перечисленных в дальнейших разделах. Вы также легко можете отредактировать этот скрипт чтобы предотвратить изменения, которые вы не хотите вносить. Данный скрипт выполнит следующие настройки:
* Установит меньший размер шрифтов, * Уменьшит панели инструментов (только значки), * Выключит звуки UI, * Починит кнопку выключения звука, * Разрешит полноэкранный режим нажатием <Alt>-F11, * Установит переход в ждущий режим при закрытии крышки и очистку экрана, * Позаботится о предупреждении о неисправной батарее, которое постоянно отображается при запуске, * Настроит Compiz, так чтобы окна можно было перетаскивать (удерживая <Alt>, кликните левой кнопкой на окне и тащите) за пределы верха экрана, * Установит модули ACPI (в результате чего смогут работать «горячие» клавиши), * Установит драйвер madwifi, что восстановит работоспособность встроенного wifi, * Установит окна уведомлений OSD для горячих клавиш (переключение wifi, приглушение, яркость, громкость и т.д.), и наконец * Настроит звук.
* Владельцам Eee PC 900 необходимо закомментировать строки 60-62, чтобы этот скрипт не сломал звук. * Строку 51 следует отредактировать так, чтобы получилось «cd madwifi-ng-r3366+ar5007»
RiceeeyTweak
Другой скрипт: http://eee.ricey.co.uk/files/eee/RiceeeyTweak.sh, включает вышеупомянутый, а также добавляет следующие возможности:
* Собирает драйвер для оверклокинга Eee, * Устанавливает модули и дравер (для оверклокинга), * Устанавливает утилиты для оверклокинга, * Уменьшает обращение к дискам, и * Устраняет проблему с завершением работы
Я не тестировал этот скрипт и ничего не могу сказать о его эффективности и работоспособности
(Спасибо http://eee.ricey.co.uk!!!)
Включение управления частотой процессора
Примечание: на основании реальных изменений энергопотребления никаких особых преимуществ во включении управления частотой процессора не отмечено. Прочтите Power consumption of the Eee PC. Если это вас не убедило, двигаемся дальше.
После установки Ubuntu не может управлять частотой процессора (впрочем, как и Xandros). Если вы держите компьютер включенным в розетку весь день, то никаких проблем с этим не; однако если вы работаете от батареи, вы можете заметить, что её хватает не на столь длительный срок, как хотелось бы. К тому же при этом она нагревается.
К счастью, это можно исправить: можно уменьшить частоту процессора, если вы, например, просто печатаете (и тем самым увеличить время работы от батареи); данная настройка также увеличивает частоту процессора, если вы запускаете какую-нибудь ресурсоёмкую задачу.
В первую очередь кликните правой кнопкой на дальшем левом углу панели вверху экрана, и запустите команду «добавить на панель». Наберите в поиске «монитор», и добавьте «Монитор изменения частоты процессора». Вы увидите сообщение об ошибке, что изменение частоты процессора не поддерживается на вашей машине (нажмите Ок), и этот апплет покажет, что ваш процессор работает на частоте 630MHz.
Запустите терминал и выполните следующее:
sudo apt-get remove powernowd sudo apt-get install cpufrequtils sysfsutils sudo modprobe p4_clockmod
В этот момент вы можете заметить, что ваш процессор стал работать медленнее. Поздравляем! Вы только что включили управление частотой процессора! Теперь нужно написать несколько скриптов, чтобы всё это происходило автоматически:
sudo nano /etc/sysfs.conf
…добавьте следующую строку:
devices/system/cpu/cpu0/cpufreq/scaling_governor = ondemand
…затем откройте другой файл конфигурации:
sudo nano /etc/modules
…и добавьте две строки:
p4_clockmod cpufreq_ondemand
…создайте два файла для ACPI, чтобы автоматически переключаться в режим полной частоты, когда вы подключаете адаптер переменного тока:
sudo echo > /etc/acpi/ac.d/90-cpufreq.sh '#!/bin/sh' sudo echo >> /etc/acpi/ac.d/90-cpufreq.sh '/usr/bin/cpufreq-selector -g performance' sudo echo > /etc/acpi/battery.d/90-cpufreq.sh '#!/bin/sh' sudo echo >> /etc/acpi/battery.d/90-cpufreq.sh '/usr/bin/cpufreq-selector -g ondemand' sudo chmod +x /etc/acpi/ac.d/90-cpufreq.sh sudo chmod +x /etc/acpi/battery.d/90-cpufreq.sh
…наконец, перезагрузите машину - просто, чтобы убедиться, что всё работает, набрав в консоли
sudo reboot
Апплет частоты процессора должен теперь сказать, что последний работает очень медленно (125MHz на моей машине), однако запуск любых интенсивных вычислительных задач вновь поднимет частоту и переключит процессор на полную скорость. Вы можете отметить, что компьютер стал менее «отзывчивым» - ему может потребоваться несколько секунд на то, чтобы решить увеличить частоту.
Вы можете задать минимальную частоту для модуля governor с помощью следующей строки в /etc/sysfs.conf:
devices/system/cpu/cpu0/cpufreq/scaling_min_freq = 337000
Это немного ухудшит параметры модуля за счёт более высокой начальной частоты.
Примечание: с загруженным модулем p4_clockmod EEEPC скажет, что он работает на частоте 900MHz - в целом это на 33% быстрее, чем на самом деле. К несчастью, это не так. Бенчмарки покажут ту же производительность, которая была без модуля, т.е. как на частоте 630 Mhz. Более детальное объяснение этому можно найти в других статьях wiki (например, Overclocking the Front Side Bus (FSB) to 100 MHz with a Linux kernel module - упомянутый выше скрипт RiceeeyTweak как раз использует этот модуль) - включая специальные модули ядра для EEE, которые помогут вам включить полноценные 900Mhz.
- Я заметил, что включение управления частотой процессора в действительности существенно замедлил работу моего Eee (4GB Surf 701 w/2GB ram) - главное меню стало вызываться намного медленнее, а также появились артефакты в отображении графики при отрисовке значков в главном меню. Если вы хотите «разогнать» процессор, я бы порекомендовал поискать на форумах информацию о том, как это сделать через прошивку специальной версии BIOS, котороая позволит вам включить режим оптимизации по производительности (900Mhz). Если я верно понял, после включения режима 900Mhz вы можете затем прошить любую другую, новую или более стабильную версию BIOS, а изменения частоты процессора останутся даже после установки нового BIOS.
Пользователи с обычными правами не могут изменять частоту процессора с помощью апплета изменения скорости. Если хотите рискнуть, вы можете дать им возможность это делать, выполнив команду
sudo chmod +s /usr/bin/cpufreq-selector
… и с этого момента вы можете просто кликать мышью по апплету скорости и изменять частоту на своё усмотрение.
Горячие клавиши управления Wifi
Для включения горячих клавиш wifi добавьте
pciehp pciehp_debug=1 pciehp_force=1
в файл /etc/modules
Создайте скрипт /etc/acpi/actions/wireless-toggle.sh со следующим содержимым
#!/bin/sh wlan_control=/proc/acpi/asus/wlan WLANSTATE=$(cat $wlan_control) case $WLANSTATE in 1) ifconfig ath0 down modprobe -r ath_pci echo 0 > $wlan_control modprobe -r pciehp ;; 0) modprobe pciehp pciehp_force=1 pciehp_debug=1 echo 1 > $wlan_control modprobe ath_pci echo 0 > $wlan_control echo 1 > $wlan_control ;; esac
и сделайте его исполняемым, выполнив команду
chmod a+x /etc/acpi/actions/wireless-toggle.sh
ACPI - настройка горячих клавиш, камеры и т.д.
Для полной поддержки горячих клавиш, включения/выключения камеры и т.д. вам нужно установить модуль eeepc-acpi.
Установите его командами:
sudo apt-get install module-assistant eeepc-acpi-source sudo m-a a-i eeepc-acpi sudo sh -c 'echo eeepc-acpi >> /etc/modules'
Эти команды скачают исходник модуля и соберут его для вашего текущего ядра. Всякий раз после обновления ядра вам нужно выполнить m-a a-i eeepc-acpi (независимо от способа обновления ядра - либо с помощью apt-get, либо с помощью dist-upgrade)
Примечание: Этот модуль уже включен в специальное ядро ARRAY.ORG, упомянутое в начале данного руководства.
Загрузка
Многие жалуются на слишком медленную загрузку системы, которая, похоже, сводится к проблеме в определении источника времени (таймера). Чтобы проверить это, прервите grub при загрузке (во время обратного отсчёта), нажав esc. Затем нажмите 'e' на пункте загрузки по умолчанию, чтобы отредактировать параметры загрузки. Переместите стрелками курсор на строку с ядром и снова нажмите 'e'. В конце строки (после параметров «quiet» и «splash»), добавьте:
clocksource=hpet
Нажмите Enter, затем нажмите 'b' для продолжения загрузки. Это может ускорить загрузку примерно на 40 секунд (при установке системы на SSD).
Чтобы сделать эти изменения постоянными, после загрузки системы отредактируйте файл /boot/grub/menu.lst (потребуются права рута, либо sudo). Найдите строку:
# defoptions=quiet splash
и исправьте её, чтобы получилось вот так:
# defoptions=quiet splash clocksource=hpet
(Примечание: defoptions изменяет лишь параметры ядра для загрузки по умолчанию, оставляя всё остальное без изменений. Если вы хотите внести эти изменения для всех остальных пунктов загрузки, включая режим восстановления, используйте вместо этого параметр kopt, который находится несколькими разделами выше defoptions.)
Сохраните menu.lst и выйдите из редактора, затем из консоли выполните
sudo update-grub
Чтобы ваши новые настройки вступили в силу, перезагрузитесь.
Горячие клавиши
Чтобы задействовать клавиши управления звуком и wifi создайте новый файл /etc/acpi/eeepc-hotkeys.sh и вставьте в него следующий текст:
#!/bin/sh
code=$3
case $code in
# Fn+F2 -- enable/disable wifi 0000001[01]) /etc/acpi/actions/wireless-toggle.sh ;; # Fn+F7 -- mute/unmute speakers 00000013) acpi_fakekey 113 ;; # Fn+F8 -- decrease volume 00000014) acpi_fakekey 114 ;; # Fn+F9 -- increase volume 00000015) acpi_fakekey 115 ;;
esac
Сделайте этот скрипт исполняемым с помощью
chmod a+x /etc/acpi/eeepc-hotkeys.sh
Измените /etc/acpi/events/hotkey на
event=hotkey ATKD action=/etc/acpi/eeepc-hotkeys.sh %e
В дистрибутиве Ubuntu 8.04 Final нет файла горячих клавиш! Создайте его.
Перезагрузитесь - и клавиши управления громкостью должны заработать (однако, для этого нужна ещё поддержка ACPI).
Открытие evolution при включении адаптера питания
Для того чтобы исправить эту оплошность необходимо удалить файл /etc/acpi/events/asus-mail командой
rm /etc/acpi/events/asus-mail
Освобождаем место: сжатие раздела /usr
Сжав папку /usr вы можете освободить около 1Гб места на диске. Основная идея состоит в том, чтобы сжать содержимое папки с помощью squashfs. Однако система на squashfs работает в режиме только-чтение. Поэтому поверх неё необходимо разместить другую файловую систему, например, unionfs или aufs - чтобы иметь возможность сохранять изменения.
1. Устанавливаем пару пакетов:
sudo apt-get install squashfs-tools aufs-tools
2. Создаём папку, где будет лежать сжатый образ файловой системы и оверлей:
sudo mkdir -p /usrsquash/overlay
3. Сжимаем файловую систему:
sudo mksquashfs /usr /usrsquash/usr.sqfs
4. Добавляем эти строки в файл /etc/modules:
aufs squashfs loop
5. Добавляем эти строки в файл /etc/fstab:
/usrsquash/usr.sqfs /usr squashfs ro,loop,nodev 0 0 aufs /usr aufs nodev,noatime,dirs=/usrsquash/overlay=rw:/usr=ro 0 0
6. Переключаемся на runlevel 1:
sudo init 1
(Ubuntu спросит вас, что делать - выберите запуск root-шелла)
7. Переименовываем старую папку /usr и создаём новую пустую папку для точки монтирования:
mv /usr /usr.old mkdir /usr
8. Проверяем, работает ли новая (сжатая) конфигурация. Наберите:
mount -a
Если в результате этого вы увидите сообщения об ошибках, а папка /usr окажется пустой, то вам нужно исправить fstab, либо отменить все внесённые изменения ДО перезагрузки.
9. Переключаемся снова в многопользовательский режим:
init 3
… или просто перезагрузите компьютер:
reboot
Всё в порядке? В таком случае вы можете удалить папку /usr.old чтобы освободить занятое ею место.
Когда в процессе установки приложений / обновлений папка /usrsquash/overlay станет занимать достаточно много (на ваш взгляд) места вы можете обновить сжатый образ.
Для этого создайте «свежий» образ командой
sudo mksquashfs /usr /usrsquash/usr1.sqfs
Затем перейдите в runlevel 1:
sudo init 1
Там замените старый образ новым, а затем очистите папку /usrsquash/overlay
cd /usrsquash mv usr1.sqfs usr.sqfs rm -R overlay/*
и переключаемся снова в пользовательский режим (init 3)
Примечание: последовательность команд обновления можно оформить в виде скрипта и запускать его в runlevel 1.
Источник: http://po-ru.com/diary/linux-liposuction-or-xubuntu-in-under-a-gig-on-the-eee-pc/
Вопрос: Как можно пересжать? Не лучше ли, и в чём, если сжать всю файловую систему целиком? Не лучше ли воспользоваться cloop + aufs (и если лучше, то в чём именно)?
Примечание: Сжатый раздел с папкой /usr отлично работает на пару с шифрованным корневым разделом (смотри выше; сжатый образ это часть корневой файловой системы, а потому также является зашифрованным).