Translations of this page:
Содержание

Ubuntu 8.04 (Hardy Heron) на Asus Eee PC

Ubuntu 8.04 был выпущен в апреле 2008. Большая часть функционала на eeePC доступна «из коробки».

Если вы нуждаетесь в инструкции по установке Ubuntu, посмотрите в отдельный раздел: Установка Ubuntu 8.04

Мелочи, без которых невозможно работать

Сетевой интерфейс не работает

Проблема: сетевой адаптер отключился. Я установил закрытый драйвер, но это не помогло: светодиод линка на роутере не загорается при включении eeePC.

Очень похоже, что проблема в состоянии электропитания адаптера, в который тот переводится при завершении работы в оригинальном дистрибутиве Xandros: замечено, что такая проблема (с пропаданием линка) наблюдается при «двойной» загрузке: всякий раз после завершения работы Xandros и загрузке в Ubuntu сетевой адаптер не функционирует.

Решение: Отсоедините eeePC и выньте из него батарею, а затем подключите её снова. Каким-то образом это «сбрасывает» что-то внутри eeePC, и это всегда восстанавливает работоспособность проводного сетевого адаптера всегда восстанавливается.

Ещё вариант: если вы хотите удалить Xandros и полностью перейти на Ubuntu - вы можете завершить последний сеанс работы в нём через «жёсткое» отключение: нажмите и удерживайте нажатой кнопку отключения питания в течение примерно 5 секунд. FIXME

Ядро ARRAY.ORG

Адам (также участник сообщества eeeusers.com) создал специальное ядро. В нём решены проблемы с Wifi, микрофоном, а также реализованы некоторые другие возможности. Установка ядра состоит из двух основных шагов:

  1. Прочтите: эту страницу

Многие пользователи протестировали это ядро и остались довольны.

Вот вкратце список включенных особенностей оптимизированного ядра:

Ядро 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 (чтобы его можно было выбирать).

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

Включение 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.

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

Корректное выключение

Ubuntu «из коробки» не умеет корректно выключать Eee. Завершение работы приводит к тому, что экран гаснет, однако питание не отключается, и для полного выключения вам нужно вынуть батарею.

Для полного корректного отключения Eee добавьте следующую строку:

rmmod snd-hda-intel

в конец скрипта /etc/default/halt .

Прекратить "зависание" Firefox-а

Возможно, вы столкнётесь с тем, что Firefox регулярно «вылетает» или «зависает». Чтобы исправить это, в настоящий момент можно попробовать сделать следующее:

Зайдите в Правка>Настройки>Защита и *отключите* предупреждения о сайтах, подозреваемых в атаке или имитации других сайтов. Это полностью устранит проблему с зависанием.

Дополнительные настройки для безупречной работы

Лёгкий способ с помощью скрипта "всё-в-одном"...

ubuntueeetweak

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

  • Установит меньший размер шрифтов,
  • Уменьшит панели инструментов (только значки),
  • Выключит звуки UI,
  • Починит кнопку выключения звука,
  • Разрешит полноэкранный режим нажатием <Alt>-F11,
  • Установит переход в ждущий режим при закрытии крышки и очистку экрана,
  • Позаботится о предупреждении о неисправной батарее, которое постоянно отображается при запуске,
  • Настроит Compiz, так чтобы окна можно было перетаскивать (удерживая <Alt>, кликните левой кнопкой на окне и тащите) за пределы верха экрана,
  • Установит модули ACPI (в результате чего смогут работать «горячие» клавиши),
  • Установит драйвер madwifi, что восстановит работоспособность встроенного wifi,
  • Установит окна уведомлений OSD для горячих клавиш (переключение wifi, приглушение, яркость, громкость и т.д.), и наконец
  • Настроит звук.

(Спасибо http://www.x2on.de!!!!)

  • Владельцам 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.

[TODO: добавить ссылок]

*Я заметил, что включение управления частотой процессора в действительности существенно замедлил работу моего 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)

Примечание: На моём eeepc 900, это не исправило ситуацию с камерой…

Примечание: Этот модуль уже включен в специальное ядро ARRAY.ORG, упомянутое в начале данного руководства.

Примечание: Перед всякой вознёй с камерой на eeepc 900, зайдите в Bios и включите камеру там.

Загрузка

Многие жалуются на слишком медленную загрузку системы, которая, похоже, сводится к проблеме в определении источника времени (таймера). Чтобы проверить это, прервите 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

Чтобы ваши новые настройки вступили в силу, перезагрузитесь.

Звук

EeePc 70x

Добавьте:

options snd-hda-intel model=3stack-dig

в файл /etc/modprobe.d/snd-hda-intel (если такого файла нет, создайте его)

EeePc 90x

Добавьте:

options snd-hda-intel model=auto

в файл /etc/modprobe.d/snd-hda-intel (если такого файла нет, создайте его)

FIXME Примечание: если вы воспользовались ранее скриптом настройки «всё-в-одном» - очень вероятно, что вам нужно вручную проверить эту настройку, потому что скрипт ещё «не знает» о существовании EeePc 900 и скорее всего добавит здесь строчку такую же, как для EeePc 4G, что приведёт к «поломке» звука.

Звук после "спячки"/"пробуждения"

По некоторым причинам после пробуждения из ждущего режима звук на платформе EeePc 90x не всегда восстанавливается. Поэтому необходимо настроить звуковую систему Alsa, чтобы она особым образом приостанавливала и пробуждала свои собственные модули до того, как это сделает ОС.

(Примечание: похоже, что на EeePc 70x нет такой проблемы, также нет и на Gutsy, однако я не могу это подтвердить :)

Внимание: После применения описанного хака после пробуждения системы вы увидите предупреждение о том, что gnome-mixer неожиданно завершился. Вам нужно всякий раз нажимать кнопку «перезагрузить», или нажать однажды cancel чтобы вообще убрать этот апплет. В настоящий момент нет способов устранить эту проблему.

Примечание: Возможно, это не 100% решение. После пробуждения тесты звуковой системы работают (Система –> Параметры –> Звук), также работает звук в приложениях типа Skype, однако «системные звуки» Gnome не работают после пробуждения даже после перезагрузки микшера (т.е. нет звука при выходе из системы). Если вы завершите сеанс и снова зайдёте (перезагрузка не требуется), «системные звуки» вернутся, поэтому, возможно, для полного решения необходима перезагрузка ещё каких-то модулей Ghome.

Шаг 1: Откройте /etc/default/alsa и измените «force_unload_modules_before_suspend» на:

force_unload_modules_before_suspend="snd_hda_intel"

Шаг 2: Создайте скрипт /usr/lib/pm-utils/sleep.d/45sound

#!/bin/bash

if [ ! -x /sbin/alsa ]; then
        exit 0;
fi

case "$1" in
        hibernate|suspend)
                /sbin/alsa suspend
                ;;
        thaw|resume)
                /sbin/alsa resume
                ;;
        *)
                ;;
esac

exit $?

Шаг 3: Сделайте скрипт /usr/lib/pm-utils/sleep.d/45sound исполняемым:

$ sudo chmod +x /usr/lib/pm-utils/sleep.d/45sound

Горячие клавиши

Чтобы задействовать клавиши управления звуком и 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).

Экранные значки

Эта настройка у меня так и не сработала (впрочем, не в этом дело). Эта настройка не включит никаких «экранных надписей». Но если вы просто установите паке eee-osd-package, всё сразу заработает. Все регуляторы и специальные клавиши (кроме LED/LCD: fn+f5) будут работать. И кроме прочего вы получите замечательные экранные значки. Этот пакет разработан на основе оригинальных настроек Xandros, как они это сделали в своём коде. В этом пакете я нашёл одну небольшую ошибку: не нажимайте на кнопки слишком быстро.

Тем не менее, Adam работает над таким же пакетом. Вы можете скачать его здесь, но помните, что это всего лишь тестовая версия.

Разрешение экрана

Проблема в дистрибутиве Hardy заключается в том, что единственный доступный режим разрешения экрана это 640×480. Запуск команды

sudo apt-get install 915resolution

исправит эту проблему и позволит выбрать разрешение 800×480.

Другой вариант решения: убедитесь, что у вас установлен и задействован новый драйвер настройки режима разрешения, который называется «intel». Имя пакета, который содержит этот драйвер, начинается с «xserver-xorg-video-».

Объяснение: старый драйвер «i810» берёт установки разрешения из BIOS. Поэтому для его корректной работы нужно пропатчить образ BIOS в памяти, добавив в него недостающие режими.

Примечание: При установке на EeePC 900, в безопасном режиме драйвер X11 по умолчанию задан как Vesa, и обеспечивает только разрешения 640×480 и 800×600. Исправьте «vesa» на «intel» в файле /etc/X11/xorg.conf. Это решит проблему:

Section "Device"
      Identifier      "Configured Video Device"
      Driver          "intel"
EndSection

Для ясности: 915resolution не нужен, если вы можете успешно переключиться с драйвера «i810» на «intel».

Сверхъяркий LCD

Этот хак поможет установить любое из поддерживаемых значений яркости. По умолчанию максимальная яркость составляет около 50% от документированной яркости для дисплея eee. (Текст скопирован из http://www.ubuntu-eee.com/index.php5?title=How_to:_Ultra_Bright_LCD)

  • Откройте консоль и выполните:
sudo setpci -s 00:02.1 f4.b=ff
  • С помощью клавиш управления яркостью вы сможете вернуть это значение снова на 80% от максимальной яркости по умолчанию.

О том, насколько такой «светлячок» безопасен, ничего не известно…

Отключение внутреннего LCD

Двойное нажатие fn f5 выключает внутренний LCD на время загрузки. По завершении загрузки экран снова включается - уже на окне приветствия.

  • Откройте консоль и выполните:
/usr/bin/xrandr --output LVDS --off

Теперь в работе останется только внешний дисплей. Надеемся, что это позволит увеличить время работы от батареи. Вы можете внести это в скрипт bash, а умные люди могут использовать это для отключения экрана по нажатию fn f5.

Настройка Compiz

Разрешение окнам перемещаться вверх за пределы экрана

Возможность перемещать окна по маленькому экрану Eee, чтобы видеть разные области окна, является важной функцией. Это делается нажатием кнопки <Alt> с последующим перетаскиванием окна по рабочему столу.

Однако при установке Hardy «из коробки», Compiz, который по умолчанию включен, не позволит перемещать окна вверх за пределы рабочего стола (экрана). Устранить проблему можно двумя путями: отключить Compiz, или исправить Compiz.

Для исправления поведения Compiz откройте консоль и выполните следующую команду:

gconftool-2 --set /apps/compiz/plugins/move/allscreens/options/constrain_y --type bool 0

Примечание: Это индивидуальная настройка для текущего пользователя. Поэтому она не сработает, если вы выполните указанную команду от имени рута, дописав sudo перед началом команды (точнее, сработает, но конкретно для пользователя root).

На Kubuntu

На kubuntu нет gconftool (поскольку она основана на другой библиотеке). Если вы установили Compiz на Kubuntu, зайдите в настройки плагинов и в самом нижнем разделе списка найдите плагин Move. Снимите в настройках плагина галочку constrain_y и сохраните настройки. TODO: (наверное это можно сделать с помощью скрипта из консоли. Тот, кто может - поправьте, пожалуйста)

Запуск почтового клиента при подключении адаптера переменного тока

Удалите файл /etc/acpi/events/asus-mail и перезапустите демон acpid командой sudo /etc/init.d/acpid restart Модуль asus-acpi посылает событие о нажатой клавише при подключении внешнего питания.

USB Tethering Internet with G 3G

For some reason this seems to be more difficult to do than it should be, probably since it requires both devices to be configured correctly.

you need to build the rndis driver from svn

svn co https://synce.svn.sourceforge.net/svnroot/synce/trunk/usb-rndis-lite
cd usb-rndis-lite/
make
sudo ./clean.sh
sudo make install

edit

sudo nano /etc/networking/interfaces
# USB xda-universal tethering
auto rndis0
iface rndis0 inet dhcp

I used an xda universal and configured an internet connection on the phone (details from your provider. I started internet connection sharing on the phone which didn't seem to be connecting so i started internet explorer and made sure the connection was active.

in a terminal i typed

sudo dhclient rndis0

which got me an ip address of 169.254.2.2 the phone took 169.254.2.1 I gave the IP of the phone as an additional dns server in networking. maybe this isn't necessary.

hmm this is strange i added a network monitor to the top bar for rndis0 it says my ip is 192.168.0.102 and broadcast ip 192.168.0.255 and its ethernet.

and then connected with firefox there was a little messing connecting and disconnecting the usb cable but it now works, the connection here is quite slow however its a g signal (3 bars) not 3g so i guess equivalent to dial up. T-mobile do data for £1 a day or £7.50 a month. cheaper than an internet cafe. hope this helps a little

incidentally virtualbox manages to use the connection too.

Корневой раздел на карте SD/SDHC приводит к проблемам с хранилищем ключей Gnome

(решение предложено knox)

Тикет #218434 касается только тех систем, где корневая файловая система находится на внешнем устройстве - как например, кардридер SD-карт в eeePC. Потому я адаптировал один из предложенных обходных путей с использованием механизма политик hal:

$ sudo mousepad /etc/hal/fdi/policy/removable_root_fix.fdi
<?xml version="1.0" encoding="ISO-8859-1"?> <!-- -*- SGML -*- --> 
<deviceinfo version="0.2">

  <device>
    <match key="volume.mount_point" string="/">    
    <merge key="@block.storage_device:storage.removable" type="bool">false</merge>
    </match>
  </device>

</deviceinfo>
$ sudo invoke-rc.d hal restart

В моём случае это полностью решило проблему.

Обновление: поскольку пакет gnome-keyring был обновлён, данный хак больше не нужен.

Автомонтирование карт MMC/SD

Иногда при попытке автомонтирования карт MMC/SD возникает ошибка. (Например, это случилось у меня с моей картой на 16GB)

Чтобы исправить это поведение,

Выполните следующую команду:

   sudo mkdir /media/MMCSD

Откройте файл '/etc/fstab' в текстовом редакторе.

Исправьте строку, в которой находится текст '/dev/sdb1', чтобы получилось вот так:

    /dev/sdb1     /media/MMCSD     auto     user,auto,exec,rw     0     0

На Asus Eeepc 900 (где два встроенных диска SSD) вместо 'sdb1' нужно писать 'sdc1':

    /dev/sdc1     /media/MMCSD     auto     user,auto,exec,rw     0     0

Если вы работаете с Kubuntu, во избежание проблем с доступом к диску после перезагрузки рекомендуется добавить к опциям монтирования umask=000:

    /dev/sdc1     /media/MMCSD     auto     user,auto,exec,rw,umask=000     0     0

Выньте и снова вставьте карту, и автомонтирование снова заработает.

Настройка автомонтирования подсказана William Ruckman (http://ruckman.net)

Повреждение ФС на карте MMC/SD при выключении/перезагрузке

На Ubuntu (а также Debian и Fedora Core) замечено, что при завершении работы/перезагрузке с подмонтированной картой MMC/SD происходит повреждение файловой системы (как при извлечении без отмонтирования). В результате этого при последующей загрузке карта не монтируется, и для дальнейшей работы требуется запуск fsck. Кроме того, возможно повреждение данных. Простейший способ исправить ситуацию - извлечь карту перед завершением работы.

Можно извлечь диск по имени устройства. Например, /dev/sdc (на EeePC 900). Однако это имя не всегда такое. Например, если вы загрузите систему со вставленной флэшкой, скорее всего /dev/sdc будет вашей флэшкой, а не картой SDHC. Поэтому лучше всего найти имя устройства в одной из папок /dev/disk. Например, если вы создали файловую систему на SD-карте с меткой, (например, вот так: mkfs.ext3 -L SDHC /dev/sdc1), то вы можете обращаться к этому устройству по метке: как /dev/disk/by-label/SDHC. Это имя уже не меняется в зависимости от вставленных/извлечённых других накопителей usb. Ещё более изощрённый (и в то же время надёжный) вариант - /dev/disk/by-uuid/. Зайдите в эту папку и найдите ссылку uuid, которая ссылается на подмонтированный раздел SDHC. Наконец, ещё вариант - можно сделать аппаратную привязку по /dev/disk/by-id (серийный номер диска) или по /dev/disk/by-path (устройство на шине).

Отредактируйте файл /etc/init.d/umountfs:

Найдите следующую часть файла:

      # Unmount local filesystems
      #
      [ -z "$REG_MTPTS" ] && return
      ...
              fi
      done
      [ "$VERBOSE" = no ] && log_action_end_msg $ES2

и допишите сразу после этого следующие строки

      [ "$VERBOSE" = no ] && log_action_begin_msg "Ejecting SDHC drive"
              sync
              # далее можете по вкусу выбрать одну из строчек
              # eject /dev/sdc # <- имя устройства, где монтируется SD/MMC (может меняться, см. выше)
              # eject /dev/disk/by-label/SDHC # <- то же самое по метке раздела
              # eject /dev/disk/by-uuid/c0e409aa-af91-42da-94f0-c2ca2f03739b # <- то же самое по uuid раздела
              # eject /dev/disk/by-id/usb-USB2.0_CardReader_SD0_146030377350-0:0 # <- то же самое по серийному номеру диска
              eject /dev/disk/by-path/pci-0000:00:1d.7-usb-0:5:1.0-scsi-0:0:0:0 # <- по пути к диску на шине
              sleep 2
      [ "$VERBOSE" = no ] && log_action_end_msg $ES2

Теперь при завершении работы / перезагрузке проблема с повреждением ФС должна исчезнуть.

Шифрование корневого раздела

(Примечание: Документация основана на http://news.softpedia.com/news/Encrypted-Ubuntu-7-04-61312.shtml с помощью http://de.gentoo-wiki.com/Root-Partition_mit_dm-crypt_&_cryptsetup_verschl%C3%BCsseln_-_Die_schnelle_Version . Код поправлен для работы с 8.04 (Hardy Heron) на ядре 2.6.24-19-generic)

Положим, у вас имеется следующая конфигурация:
/dev/sda1: основной корневой раздел
/dev/sda2: загрузочный раздел (boot) (40 MB)
(У меня на машине нет раздела подкачки, поскольку, во-первых, имею 2Гб оперативной памяти, а во-вторых, раздел подкачки на 4Gb SSD (EeePc 701) - это не очень хорошая идея)

Шаг 1 – Загружаемся с установочного флэш-диска USB

Скорее всего вы устанавливали Ubuntu с помощью загрузочного флэш-диска USB (или CD-ROM, если у вас есть). Загрузитесь снова с этого носителя. Когда загрузка закончится, откройте терминал (Приложения → Стандартные → Терминал) и получите права суперпользователя (root), выполнив команду:

sudo su

или

sudo -i

С этого момента и до конца сеанса работы вы станете суперпользователем, и вам не придётся каждый раз набирать sudo перед каждой командой.

Шаг 2 – Подготавливаем систему и делаем резервную копию данных

Подготовим систему к шифрованию. Для этого нужно загрузить некоторые модули ядра. Наберите или скопируйте-вставьте в терминал следующие команды:

modprobe aes_i586
modprobe dm-crypt
modprobe dm-mod
modprobe sha256_generic

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

apt-get install cryptsetup

Создайте точки монтирования для текущих файловых систем и смонтируйте их:

cd /mnt
mkdir boot root
mount /dev/sda1 root
mount /dev/sda2 boot

Теперь сделайте резервную копию данных (на отдельной флэшке, либо (на 900-й модели) на втором диске SSD, либо на карте SDHC). Ниже приведет вариант для флэшки - он же для карты.

cd /mnt/root
tar сjvf /media/disk/root.tar.bz2 .
cd ..

Последняя команда выведет очень много текста (все файлы, которые копируются). Подождите, пока вывод не завершится. Это может занять около 20 минут (зависит от количества файлов). Если вы создаёте архив на разделе FAT имейте в виду, что размер файла на этой ФС не может превышать 2Гб. Если вы используете сжатие (параметр j) и свежеустановленную Ubuntu, это должно сработать.

Шаг 3 – Шифрование файловой системы

Когда резервное копирование завершится, отмонтируйте диск командой:

umount root

и зашифруйте файловую систему следующей командой:

cryptsetup -c aes-xts-plain -y -s 320 luksFormat /dev/sda1

ВНИМАНИЕ: Все данные будут безвозвратно затёрты!

Ответьте YES на запрос утилиты и дважды введите стойкий пароль. Примечание: YES нужно набирать заглавными буквами (Выделено жирным, потому что я сам несколько часов не мог этого понять. В противном случае вы получите сообщение «Command failed.») Затем наберите:

cryptsetup luksOpen /dev/sda1 root
mkfs.ext2 /dev/mapper/root
mount /dev/mapper/root root

Теперь копируем данные из временной папки назад, в только что созданный корневой раздел:

cd root
tar xjvf /media/disk/root.tar.bz2

Так же, как в прошлый раз, эта команда выведет много текста, так что просто подождите, пока она закончит, а затем удалите временную папку:

rm /media/disk/root.tar.bz2
cd ..

ШАГ 4 – Последние настройки

Теперь файловая система зашифрована. Однако до тех пор, пока вы не выполните последние настройки, она не будет работать. Наберите или скопируйте/вставьте в терминал следующие строки:

mkdir root/boot
mount /dev/sda2 root/boot
mount -o bind /dev root/dev
chroot root

В этот момент вы «виртуально» окажетесь в новом корневом разделе, и сможете внести в него нужные изменения. Начните с установки пакета шифрования cryptsetup:

apt-get update
apt-get install cryptsetup

Затем нужно добавить необходимые модули ядра в файл /etc/initramfs-tools/modules file, так чтобы они могли быть загружены во время загрузки системы (о тонкой настройке initrams можно прочитать на странице http://blog.rootserverexperiment.de/2008/04/29/eeepc-ubuntu-804-initramfs-tuning/):

nano etc/initramfs-tools/modules

Добавьте в конец файла следующие строки:

aes_i586
dm-crypt
dm-mod
sha256_generic

Чтобы сохранить файл, нажмите CTRL+O, а затем ENTER. Чтобы закрыть nano, нажмите CTRL+X.

Теперь вам нужно поправить файл /etc/fstab, чтобы монтировался верный корневой раздел:

nano etc/fstab

Измените строку, похожую на нижеприведённую (UUID здесь лишь для примера… ваш будет другим):

# /dev/sda3
UUID=4565t675-6c67-56hg-hg7j-67g5jk00b562 / ext3 defaults,errors=remount-ro 0 1

Чтобы получилось:

/dev/mapper/root / ext2 noatime,errors=remount-ro 0 1

В общем, просто замените (UUID=4565t675-6c67-56hg-hg7j-67g5jk00b562) на (/dev/mapper/root).

Нажмите CTRL+O и ENTER чтобы сохранить файл. Нажмите CTRL+X чтобы закрыть nano.

Теперь настало время отредактировать файл /etc/crypttab:

nano etc/crypttab

Добавьте в конец файла следующую строку:

root /dev/sda1 none luks,retry=1,cipher=aes-cbc-essiv:sha256

Нажмите CTRL+O и ENTER чтобы сохранить файл. Нажмите CTRL+X чтобы закрыть nano.

Наконец, отредактируйте файл /boot/grub/menu.lst:

nano boot/grub/menu.lst

Найдите строку, похожую на нижеприведённую (UUID здесь лишь для примера… ваш будет другим):

# kopt=root= UUID=4565t675-6c67-56hg-hg7j-67g5jk00b562 ro

И измените её, чтобы получилось:

# kopt=root=/dev/mapper/root ro

Нажмите CTRL+O и ENTER чтобы сохранить файл. Нажмите CTRL+X чтобы закрыть nano.

Исправьте некоторые ошибки:

cp /usr/share/initramfs-tools/hooks/cryptroot /etc/initramfs-tools/hooks/cryptroot
cp /usr/share/initramfs-tools/scripts/local-top/cryptroot /etc/initramfs-tools/scripts/local-top/cryptroot

Обновите загрузчик GRUB следующей командой:

grub-install --recheck hd0,1
update-grub
grub-install hd0

И проверьте файл /boot/grub/menu.lst, чтобы в нём было место, похожее на это:

title Ubuntu 8.04, kernel 2.6.24-19-generic
root (hd0,1)
kernel /vmlinuz-2.6.24-19-generic root=/dev/mapper/root ro quiet splash clocksource=hpet
initrd /initrd.img-2.6.24-19-generic
quiet
savedefault

Убедитесь, что там есть параметр root=/dev/mapper/root. Если это так, вы можете обновить initramfs следующей командой:

update-initramfs -u All

Выйдите из «виртуального» окружения и перезагрузите систему командами:

exit
reboot

При запуске системы вы увидите заставку Ubuntu, которая исчезнет через несколько секунд, и вы увидите лишь мигающий курсор в левом верхнем углу экрана. Теперь вам нужно ввести пароль, который вы указали при шифровании файловой системы, и нажать ENTER. Если вы ввели пароль правильно, система продолжит загрузку. Теперь вся ваша система Ubuntu полностью зашифрована!

Освобождаем место: сжатие раздела /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 отлично работает на пару с шифрованным корневым разделом (смотри выше; сжатый образ это часть корневой файловой системы, а потому также является зашифрованным).

To do...

USB_Persist

C Generic-ядром существует проблема при монтировании домашней папки на SD-карту, связанная с ждущим режимом и последующим пробуждением. Eee отключает /home при гибернации, а затем не может снова подключить его при пробуждении.

Данная проблема была решена в последнем ядре array.org.

На SD-карту можно переместить раздел /var - для уменьшения интенсивности операций записи на SSD и освобождения места на диске SSD.

Compiz & xgl

На первый взгяд compiz не работает, как это было на Xubuntu 7.10 после обновления дистрибутива до 8.04 и применения скрипта RiceeeyTweak.sh, упомянутого в начале статьи. С теми же самыми настройками xorg.conf, где используется драйвер intel либо i810, выполнение команды compiz –replace приводит к выводу в консоль Checking for Xgl: not present, а также к другим ошибкам. Попытка исправить ситуацию установкой следующих пакетов приводит к появлению артефактов на экране и зависанию X. $ sudo apt-get install xserver-xgl libglitz-glx1 libglitz1 Для восстановления в этом случае нажмите <CTR><ALT><F1> и удалите эти пакеты. Забавно, что 915resolution вроде бы работает, а glxgears утверждает о частоте кадров > 700, так что графическое ускорение, похоже, тоже работает. Полагаю, что я вполне смогу жить и без compiz, поскольку он главным образом используется только для демонстрации возможностей графики.

*При чистой установке Ubuntu 8.04, Hardy Heron, «из коробки» на машине 4GB Surf 701 с 2GB оперативной памяти, Hardy определяет и отображает правильное разрешение экрана (800×480) на Eee, даже несмотря на то, что это разрешение не упомянуто в списке допустимых разрешений экрана в настройках. Также при этом отлично работает Compiz. К нему нужно лишь применить небольшой упомянутый выше хак - перемещение окна вверх за пределы экрана путём удержания <Alt> и перетаскивания окна.

 
ru/getting_ubuntu_8.04_to_work_perfectly.txt · Последние изменения: 2008/08/05 09:42 klirik
 
Recent changes RSS feed Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki
This website is no longer under a Creative Commons license.
All rights are reserved by Eeeuser.com and each individual author
If you want to reproduce content, all individual contributers must be identified and you must seek permission from Eeeuser.com