OpenSUSE on the EeePC

Перейти к: навигация, поиск
Localize.png Эта статья содержит фрагменты на иностранном языке. Вы можете помочь переведя её до конца. (cм. руководство по переводу)

Содержание

Предисловие

В этой статье вы найдете всю информацию о том, как установить openSUSE 10.3, 11.0 и 11.1 на различные модели Asus Eee PC. Множество полезной информациии и форум чтобы задавать вопросы и отвечать о линейке Asus Eee PC доступный к этому разделу openSUSE.

Мы понимаем, что существуют несколько методов сделать это и может получится чрезмерно большой HOWTO. Мы выбрали быстрый путь с загрузочным USB приводом и yast2-liveinstall(живая установка YaST2), и метод с двумя USB приводами, один для того чтоб загрузиться и второй, как источник установки.

Если вы хотите попробывать нечто другое, взгляните на Руководство по установке, но имейте ввиду, что сетевая установка не будет работать, так как ядра 10.3 и 11.0 не содержат необходимых драйверов для работы проводной сети. Проводная сеть для некоторых моделей Eee PC будет включена в openSUSE 11.1, и это позволит установить систему с использованием FTP, или другого сетевого ресурса.

Также имейте ввиду, что ничего на данной странице не поддерживается официально.

Подготовка

Оборудование

  • EeePC 701 4G
  • USB flash приводы в зависимости от метода
  • Вторая машина для подготовки необходимых устройств

Помните: В Eee PC нет обычных жестких дисков, а есть твердотельный диск (Solid-State Disk), который имеет ограниченное число циклов записи. До сих пор, как мне кажется, никому не известно, как долго встроенный твердотельный диск (SSD) будет пригоден. Для того чтобы обезопасить себя вам придется позаботиться об снижении числа ненужных записей на внутренний диск. Это означает:

  • обойтись без Swap-раздела
  • монтирование раздела(ов) на внутренний SSD с установленной опцией "noatime". Обычно, когда вы читаете файл с диска, время последнего доступа (atime) обновляется в inode. С опцией "noatime", этого не происходит.
  • не журналировать файловую систему

Медиа

Вам необходимо скачать следующее:

Для установки с USB привода с живым установщиком YaST(YaST Live Installer)
ftp://ftp.suse.com/pub/people/matz/eeeSUSE/eeeSUSE-liveusb.gz
Для установки с USB приводов
openSUSE-10.3-GM-i386-mini.iso
openSUSE KDE или openSUSE GNOME CD.
пакеты "по-умолчанию" из (или по меньшей мере, те что - atl2)
http://download.opensuse.org/repositories/home:/appleonkel:/EEE/openSUSE_10.3/i586/
http://download.opensuse.org/repositories/home:/appleonkel:/EEE/openSUSE_10.3_Update/i586/

Установка

Установка с загрузочного USB привода с помощью "живого" YaST установщика

Вся Ваша информация на EeePC исчезнет после этой процедуры, сделайте архивную копию(backup)

Образ для usb брелка может быть найден здесь. Разархивируйте используя команду unzip и сделайте посекторное копирование с помощью команды dd на 2GB USB брелок.

====1==== Нажмите F2, во время загрузки, для доступа к BIOS экрану, направьте курсор с помощью стрелочек на клавиатуре к пункту меню "Boot". Под "Hard Disk Drives", выберите ваш USB брелок, как первый привод. Перейдите к пункту "Boot Device Priority" и удостоверьтесь что ваш брелок первый. Нажмте F10, чтоб сохранить изменения и выйти. Если вы загрузитесь в следующий раз без подключенного USB брелка, то настройки вернуться в первоначальное значение и EeePC загрузится со своего внутреннего диска.

====2==== Если вы увидели предупреждение "undefined mode number" во время загрузки то это не страшно, просто нажмите клавишу ПРОБЕЛ.

====3==== Если во время загрузки появляется сообщение об ошибке - "Couldn't determine file system type..." или нечто подобное, выньте SD-карту и попробуйте снова.

====4==== В системе доступен пользователь linux без пароля и настроенным автозаходом, а также пользователь root, также без пароля (но не оставляйте такие настройки после установки, измените их).

====5==== Оконный менеджер, в который вы будте загружены называется fvwm2. Это наименьшая графическая система, которую я смог создать за разумное время. Каждый может собрать свою свою собственную систему из этой и добавить все пакеты, которые сам захочет.

====6==== В списке кнопок fvwm2, кликните иконку openSUSE и выберите "Control Center". Это запутит yast2. (Если вы никогда не видели fvwm2, поясню: когда под курсором мыши появится "сетка", вам необходимо кликнуть где-нибудь на пустом месте, чтобы появилось меню.)

====7==== В YaST2, под "Miscellaneous", найдите модуль "Live Installer". Это запустит обычную установку yast, однако, вы не сможете выбрать нужные пакеты для установки. Вместо этого, система на брелке будет скопирована на ваш жесткий диск. Такой подход используется и в LiveCD. (Привет команде YaST!)

====8==== Я предполагаю, что вы знакомы с разделами жесткого диска. Если нет, пожалуйста, найдите кого-нибудь, кто сможет вам помочь, потому что Вам вероятнее всего прийдется использовать Режим эксперта (expert Mode) - Create Custom Partition Setup в yast partitioner. Вы можете создать такие разделы:

/boot 100MB
/     2.5GB
/home 1.2GB

Или же, вы можете использовать один раздел для всего. Возможно, такой подход позволит появится сообщению о заполеннии диска гораздо позже. Раздел /boot может быть уменьшен до 50MB, обычно используется только 10-15 MB.

В partitioner Вы также увидете ваш USB брелок, не перепутайте его с внутренним диском. (Извините, но это важно.)

Сколько и какие разделы вам создать - это вопрос личных предпочтений. Один раздел тоже будет работать хорошо

====9==== Раздела подкачки (swap) нет. Дистрибутив Xandros, который стоит по умолчанию, также поставляется без раздела подкачки. Также, для уменьшения количества процессов чтения/записи на SSD диск, можно использовать файловую систему ext2 (не журналируемую), и на всех разделах примонтировать их с опцией "noatime". (Вы можете установить ее в partitioner, либо позже отредактировать /etc/fstab руками.)

====10==== Grub. Скорее всего стандартные настройки вам не подойдут - так что убедитесь, что Grub будет установлен на ваш жесткий диск, а не на USB-устройство.

Во время установки моё USB-утсройство именовалось /dev/sdb, а внутренний жёсткий диск /dev/sdc. После перезагрузки без USB-устройства внутренняя нумерация дисков изменится: в моём случае внутренний диск называется /dev/sda, когда я с него загружаюсь.

В пункте Установка загрузчика (Boot Loader Installation), в меню Настройки загрузчика (Boot Loader Settings), я выбрал "Загружаться из загрузочного раздела" (Boot from Boot partition), и yast2 использовал /boot созданный ранее.

С помощью выпадающего меню "Прочее" (Other), расположенном в нижнем правом углу экрана, вы можете отредактировать конфигурационные файлы, если вы действительно знаете, как это правильно делать.

Поскольку grub использует названия дисков типа /dev/disk/by-id/... в menu.lst, порядок именования дисков не имеет значения. Тем не менее, во время моей установки, он из-за этой абсолютной нумерации испортил запись раздела root (hd0,0). Если с вами это случится (а вы это заметите сразу, поскольку ваш EeePC перестанет загружаться), то:

=====10a.===== Загрузитесь с флешки снова, но не начинайте установку. Найдите и смонтируйте тот раздел внутреннего диска, на который вы установили grub. Найдите файл /boot/grub/menu.lst и измените строку

root (hd1,n)

на

root (hd0,n)

(где "n" - это число, которое задал сам grub ранее). Измените первую цифру, которая означает диск, с которого следует загружаться, и не трогайте вторую цифру; она обозначает раздел, с которого будет происходить загрузка. Здесь нумерация начинается с нуля - sda1 будет 0,0, sda2 0,1 и так далее.

====11==== При первой загрузке (предполагаю, что вы исправили grub, если это было необходимо), извлеките USB-флешку и завершите установку точно так же, как стандартную установку openSUSE.

====12==== Войдите в систему, запустите yast2 и установите нужные Вам пакеты. Если вы хотите исползовать KDE или GNOME и знаете немного о них, то вам нет необходимости устанавливать их используя шаблоны установки. Выберите только те пакеты, которые хотите и пусть менеджер установки проверит зависимости и установит дополнительные пакеты по мере необходимости. Это займет много времени, однако, это лучший способ сэкономить место на таком небольшом диске.

Установка c двух дисков USB

  1. Сначала создайте загрузочную флешку, следуя инструкциям из http://en.opensuse.org/SuSE_install_from_USB_drive
  2. После этого нужно сделать "поддельный" USB-CDROM путем форматирования второго диска, точно также, как указано в статье выше. Однако, не надо делать его загрузочным. Нужно только скопировать содержимое компакт-диска на флешку.
  3. Создайте новую папку и назовите ее, например: EeePC
  4. В этой папке создайте две другие папки: GM и Update
  5. Скопируйте пакеты из http://download.opensuse.org/repositories/home:/appleonkel:/EEE/openSUSE_10.3/i586/ в папку GM
  6. Скопируйте пакеты из http://download.opensuse.org/repositories/home:/appleonkel:/EEE/openSUSE_10.3_Update/i586/ в папку Update
  7. Вставьте обе флешки в EeePC
  8. Во время загрузки BIOS нажмите ESC, чтобы попасть в меню выбора устройства загрузки и выбрать загрузку флешки.
  9. Now you see the normal installation menu and the only thing that you have to change is the source. Set it to "Hard Disk" by pressing F4 and using the cursor keys. It will scan all disks when you leave it empty - so leave it empty. You will want to select the USB drive with the DVD image on it, and enter "/" for the path.
  10. Графическая программа установки должна начать процесс установки. В процессе установки снимите галочку с пункта "Добавить онлайн-репозитарии перед установкой" (помните, сейчас у нас нет подключения к Сети)
  11. Если мы отказываемся от раздела подкачки, стоит изменить разделы во время установки. Если вы не знаете, как это делать, попросите помощи.
  12. Выберите "Create Custom Partition Setup" и потом "Custom Partitioning (for experts)".
  13. Удалите разделы жесткого диска и создайте один большой раздел (около 3.7 Гб) для /.
  14. The rest of the installation is similar to a normal installation except that you will have to boot from the boot stick again and start the installation again (ie, not 'Boot from Hard Disk' at the first menu) but instead of choosing "New Installation" when the graphical installer starts up you pick "Other Options" and then "Boot Installed System". Now you can proceed with the second stage of the installation.
  15. After you are done with the installation become root and change to the GM directory on the second USB stick. Simply install all the packages with "rpm -Uvh *"
  16. Now you have to fix the grub issue by doing the same as described in step 10a from "Installation from bootable USB drive with YaST Live Installer".
  17. Теперь можно добавть все "необходимые" онлайн-репозитории и обновиться. Если после обновления сеть не работает, установите пакеты из каталога обновлений, которые вы создали ранее.

This method also works for putting OpenSUSE onto a SD card to have a dual-boot OpenSUSE/Xandros system. To fix grub, instead of 'step 10a' you can simply umount (if required) and remove the USB sticks (so they definitely won't be probed), run yast and choose System - Boot Loader. Then use the 'Other' 'Propose New Configuration' option and it will produce a grub setup that will let the OpenSUSE install boot (by default it also finds the original Xandros grub configuration on the first partition of the SSD, and tries to incorporate that, but the result won't boot the Xandros properly, possibly because the Xandros setup assumes a different disk arrangement than you'll have if you booted from the SD card in the slot). You can then either manually add a correct Xandros entry, or simply delete the Xandros entry in the YaST proposal (to boot Xandros you just eject the SD card before booting or press ESC when booting and choose the internal SSD). If YaST reports it is going to write grub to floppy just say OK - it seems to end up on the SD card as it should - and on subsequent runs it doesn't seem to make the same announcement. Having done this, you can incorporate the Xandros partitions into /etc/fstab to have them available in OpenSUSE (/dev/sdb1 type ext2, probably prudent to mount it read-only; /dev/sdb2 type ext3 and if read-write you can use the files that have been saved from within Xandros - they will all be owned by the first user specified during the OpenSUSE install).

Установка с DVD

Требуется

  • установочный DVD openSUSE
  • внешний USB DVD привод

Этим способом вы просто установите openSUSE. Однако, программе установки YaST потребуется разрешение экрана, не меньше 800x600. Чтобы удовлетворить такой запрос, нужно подключить внешний монитор, и используя сочетания клавиш Fn + F5, переключить изображене на него.

Настройка

На Asus Eee PC 701 X-сервер будет работать только с разрешением 640х480. Откройте своим любимым текстовым редактором файл /etc/X11/xorg.conf и замените в нем разделы "Monitor", "Screen" и "Device" на это:

 Section "Monitor"
   Identifier   "Monitor[0]"
   VendorName   "ASUS"
   ModelName    "eeePC 701"
   ModeLine     "800x480" 29.58 800 816 896 992  480 481 484 497 # 60Hz
   Option       "DPMS"
 EndSection
 Section "Screen"
   DefaultDepth 24
   SubSection "Display"
     Depth      24
     Modes      "800x600"
   EndSubSection
   Device       "Device[0]"
   Identifier   "Screen[0]"
   Monitor      "Monitor[0]"
 EndSection
 Section "Device"
   BoardName    "Mobile 915 GM"
   BusID        "0:2:0"
   Driver       "intel"
   Identifier   "Device[0]"
   VendorName   "Intel"
 EndSection

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

Метод первый

Скачайте RPM-файлы из этого репозитария:

 rusjako's eeePC repository 

и установите. Это сделает работающими клавиши от Fn+F2 до Fn+F9. Кроме этого, это добавит бинарный файл asusosd и файл 60eeepc. Чтобы OSD работало, вам нужно будет самостоятельно запускать эти файлы. Добавьте следующую опцию в файл /etc/powersave/events, если режим приостановки (suspend, hibernation) не работает, когда вы жмете Fn+F1:

 EVENT_BUTTON_SLEEP="suspend_to_ram"

Метод второй

Вы можете скачать пакет eeeEvents из репозитария appleonkel. Этот пакет установит некоторые файлы в /etc/acpi/events и в /etc/acpi/scripts. Также, это установит бинарный файл asusosd, который будет автоматически стартовать в /etc/X11/xinit/xinitrc.d/asusosd.

Метод третий

Другой метод, чтобы активировать наиболее используемые горячие клавиши, нужно сделать следующее: добавить следующие строки в конец файла /usr/share/X11/xkb/symbols/de (ВНИМАНИЕ! Пример для немецкой клавиатуры):

partial alphanumeric_keys
xkb_symbols "eeepc" {

    include "de(basic)"

    name[Group1]="Germany - eeePC";

    key <AD12>  { [      plus,   asterisk,   asciitilde,  dead_macron ] };
};

Раздел InputDevice в файле xorg.conf должен быть приведен к виду:

Section "InputDevice"
        Identifier  "keyboard"
        Driver      "kbd"
        Option      "CoreKeyboard"
        Option      "XkbRules" "xorg"
        Option      "XkbModel" "pc105"
        Option      "XkbLayout" "de"
        Option      "XkbVariant" "eeepc"
EndSection

Модуль asus_acpi должен быть загружен, смотри описание ниже.

Теперь нужно прописать горячие клавиши в /etc/acpi/hotkey.sh. Следующий пример взят из дистрибутива Xandros и других работ (но WLAN, LCD/CRT не тестирован):

#!/bin/sh

export DISPLAY=:0

case $3 in
        #Fn+F1
        00000080)
                # echo "Suspend2RAM" > /dev/console
                ;;
        #Fn+F2
        00000010)
                # echo "Wlan On" > /dev/console &
                /etc/acpi/wlan.sh poweron
                /etc/acpi/wlan.sh restore
                ;;
        00000011)
                # echo "Wlan Off" > /dev/console &
                /etc/acpi/wlan.sh poweroff
                ;;
        #Fn+F5
        00000030)
                # echo "LCD" > /dev/console &
                /usr/bin/xrandr --output LVDS --preferred --output VGA --off
                ;;
        00000031)
                # echo "CRT" > /dev/console &
                /usr/bin/xrandr --output VGA --mode 1280x1024 --output LVDS --off
                ;;
        00000032)
                # echo "LCD-CRT" > /dev/console &
                /usr/bin/xrandr --output VGA --mode 800x480 --output LVDS --mode 800x480
                ;;
        #Fn+F6
        00000012)
                # echo "Task Manage On" > /dev/console
                #DISPLAY=:0 /bin/su -c "/usr/bin/ksysguard --showprocesses" user &
                /opt/kde3/bin/ksysguard --showprocesses &
                ;;
        #Fn+F7
        00000013)
                # echo "Volume Mute" > /dev/pts/0 &
                amixer set Master toggle
                ;;
        #Fn+F8
        00000014)
                # echo "Volume Down" > /dev/console &
                amixer set Master 3.20dB-
                ;;
        #Fn+F9
        00000015)
                # echo "Volume Up" > /dev/console &
                amixer set Master 3.20dB+
                ;;
        #Fn+F3
        0000002x)
                #echo "Brightness Down" > /dev/pts/0
                ;;
        #Fn+F4
        0000002x)
                #echo "Brightness Up" > /dev/pts/0
                ;;
esac

Снижение количества процессов чтения/записи SSD

Добавьте следующую линию в файл /etc/sysctl.conf:

 vm.dirty_writeback_centisecs = 15000

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

Если вы используете kpowersaved, все равно нужно будет переписать настройки. Нужно отредактировать /etc/powersave/events и найти строки "EVENT_ACADAPTER_ONLINE" и "EVENT_ACADAPTER_OFFLINE". Если они установлены в "ignore", измените "ignore" на "set_dirty_writeback". Если они установлены на что-нибудь другое, добавьте set_dirty_writeback в конец листа. Затем создайте файл /usr/lib/powersave/scripts/set_dirty_writeback с теми же правами, как у других файлов в этой директории и содержащим это:

 #!/bin/bash
 #
 # load helper functions
 . ${0%/*}/helper_functions
 
 # set vm parameter to required value
 sleep 3
 $LOGGER "set dirty_writeback_centisecs to 15000"
 echo 15000 > /proc/sys/vm/dirty_writeback_centisecs
 
 # exit in the required manner
 $SCRIPT_RETURN $EV_ID 0 "set_dirty_writeback complete"
 EXIT 0

Путем монтирования tmp директорий в tmpfs, количество процессов чтения/записи SSD будет уменьшено. Но вы потеряете все данные в этих временных директориях при выключении компьютера. Добавьте это в /etc/fstab

 tmpfs      /tmp                    tmpfs        defaults      0 0
 tmpfs      /var/tmp                tmpfs        defaults      0 0
 tmpfs      /var/lock               tmpfs        defaults      0 0

Если вы не используете postfix как реальный (необходимый для работы) MTA, то можно добавить еще и это:

 tmpfs      /var/spool/postfix      tmpfs        defaults      0 0

Вы также можете смонтировать /var/log и /var/run как tmpfs. В этом примере, максимальный размер папок 128 МБ:

 tmpfs      /var/log                tmpfs        defaults,size=128m    0 0
 tmpfs      /var/run                tmpfs        defaults,size=128m    0 0

Примечания:

  • Монтирование /var/run в tmpfs вызывает некоторые проблемы, возможно, вам придется найти обходной путь.
  • Монтирование /var/log в tmpfs также может вызвать проблемы. Например, apache2 незапускается, ссылаясь на отсутствие /var/log/apache2. Возможное решение: изменить стартовые скрипты apache2, чтобы они создавали эту директорию всякий раз, когда стартует apache2.
  • Вы должны создать директорию /var/log/YaST2. Добавьте этот код test -d /var/log/YaST2 || mkdir -m 700 /var/log/YaST2 в ваш скрипт /etc/init.d/boot.local.
  • Cups требует директорию /var/lock/subsys. Измените стартовый скрипт cups, чтобы он создавал эту директорию при каждом старте cups.

Настройка файловых систем ext2/ext3

Для увеличения свободного места на вашей ext2 или ext3 файловой системе, нужно уменьшить зарезервированные блоки на, например, 2%:

tune2fs -m2 /dev/sda1

Настройка и дополнительные репозитарии

Suspend

To get suspend to disk and RAM to work you just need to add

Susemini.png
Version:
11.1
http://download.opensuse.org/repositories/home:/seife/openSUSE_11.1/
Susemini.png
Version:
11.0
http://download.opensuse.org/repositories/home:/seife/openSUSE_11.0/
Susemini.png
Version:
10.3
http://download.opensuse.org/repositories/home:/seife/openSUSE_10.3/

to your repositories and install the "suspend" package.
A big thanks to seife!

Suspend to RAM works quite well (by using the hotkey and/or closing the cover), but you need to add some code to the power management in e.g. /etc/pm/sleep.d/60eeepc (script adapted from original Xandros):

#!/bin/bash
case $1 in
    hibernate)
        /etc/init.d/network stop
        /sbin/modprobe -r ath_pci
        #/sbin/modprobe -r ndiswrapper
        ;;
    suspend)
        /etc/init.d/network stop
        /sbin/modprobe -r ath_pci
        #/sbin/modprobe -r ndiswrapper
        ;;
    thaw)
        /sbin/modprobe ath_pci
        #/sbin/modprobe ndiswrapper
        /etc/init.d/network start
        /etc/init.d/acpid restart # hotkeys do not work after resume, /etc/acpi
        ;;
    resume)
        /sbin/modprobe ath_pci
        #/sbin/modprobe ndiswrapper
        /etc/init.d/network start
        /etc/init.d/acpid restart # hotkeys do not work after resume, /etc/acpi
        ;;
    *)  echo "EeePC power management script called incorrectly."
        ;;
esac

Problems:

  • Resume fails if the camera is in use (e.g. by Skype)
  • Device names from mounted SD card filesystems are changed after a resume, e.g. from sdb to sdc. This causes problems with mounted filesystems. Even though udev creates new symlinks in /dev/disks/by-id/, existing mounts do not work anymore. So, you have to umount the filesystem before suspend and mount it again after resume, or just add the umount and mount commands to the powermanagement script above. However, this doesn't help when umount is not possible due to open files. There seems to be a solution by using a USB_PERSIST kernel setting (see eeeuser.com forum sdb becomes sdc after hibernation and Building a kernel where USB_PERSIST actually works), but that parameter is not configured in the standard openSUSE kernel. Any other solutions are welcome.
  • Suspend to RAM does not work if openSUSE is installed on the SDHC card, because internally the SDHC adapter is connected via USB and cannot be unmounted.

Беспроводная связь (WLAN), Звук (Alsa), Ethernet, ACPI

WLAN needs the madwifi package from this repository:

http://download.opensuse.org/repositories/home:/appleonkel:/EEE/openSUSE_10.3/

and to keep updates:

http://download.opensuse.org/repositories/home:/appleonkel:/EEE/openSUSE_10.3_Update/

However, the madwifi driver does not work very reliable (for me). Establishing connections is a pure luck. You can also use the ndiswrapper module, see schmolle1980 repositories below and Howto: Configure ndis wrapper. The ndiswrapper method is more reliable, but there is a problem with high system load causing from a process named ntos_wq.

The appleonkel repositories contain also packages for Alsa, Ethernet and ACPI drivers.

For starting the asus_acpi module at system startup, you should add it to the file /etc/sysconfig/kernel:

MODULES_LOADED_ON_BOOT="asus_acpi"

To get WLAN working again after disconnecting it with Fn+F2, you must have started the EeePC with the wireless card deactivated in the bios. If not, you can get an error like 'Hardware didn't respond as expected' (HAL status 3)

openSUSE 11.1

ath5k

The ath5k driver in openSUSE 11.1 still does not work correctly with the wifi card in the 701. When the module is installed it creates the wlan0 device (as well as the controlling device), but it will not successfully connect to an access point.

madwifi

Madwifi (now deprecated in favour of ath5k) also does not work under 11.1. The current stable version (0.9.4) from : http://www.madwifi-project.org/suse/11.1 does not compile (apparently an issue with 2.6.27 kernel, not 11.1 specifically). The latest snapshot version as of 3 January 2009 does compile but does not create the appropriate devices when the ath_pci module is loaded.

ndiswrapper

Ndiswrapper does work on 11.1

CPUFreq

The CPU in the eeePC supports CPUFreq via the p4-clockmod driver. For some reason, this is not probed for by default by haldaemon, so you'll need to edit part of /etc/rc.d/haldaemon to read:

function load_cpufreq_driver() {

   CPUFREQ_MODULES="p4_clockmod speedstep_centrino powernow_k8 powernow_k7 powernow_k6 longrun speedstep_ich acpi_cpufreq"
   CPUFREQ_MODULES_GREP="^p4_clockmod\|^speedstep_centrino\|^speedstep_ich\|^powernow_k8\|^powernow_k7\|^powernow_k6\|^longrun\|^longhaul\|^acpi_cpufreq"
   
   ###### load CPUFREQ modules############

Please note that some users on other distributions have reported instability using this driver. I, however, am using it right now on OpenSUSE 10.3 and have no issues. YMMV.

Веб-камера

To activate the camera you first have to turn it on in the BIOS. Then add

http://download.opensuse.org/repositories/home:/schmolle1980/openSUSE_10.3/

and to keep updates

http://download.opensuse.org/repositories/home:/schmolle1980/openSUSE_10.3_update/

to you repositories and install the "uvcvideo-kmp-default" package. After a reboot the camera should work out of the box (tested with kopete). The camera works in Skype but not in ucview.

Котроль вентиляторов

After a couple of minutes the fan of the eee PC turns on and never out again. To control it the following repository provides the package eeeFancontrol. This needs the eee kernel module. Until now it's not provided by these repository. I will try to add it soon.

http://download.opensuse.org/repositories/home:/rusjako:/eeePC/openSUSE_10.3

Add this to your repository and install the "eeeFancontrol" package. After a reboot or by running /etc/init.d/eeefanctrl start the script will control the fan.

Проблемы и решения с openSUSE 11.0

An update from openSUSE 10.3 to openSUSE 11.0 can be made e.g. by using an external USB DVD drive. The repositories mentioned above do provide already all packages for openSUSE 11.0. If you want to use online repositories during the update, you have to copy and load the atl2 Ethernet driver manually. openSUSE 11.0 seems still not to provide a full set of hardware modules for the EeePC.

In case you don't have an external DVD drive, there is another way to update from openSUSE 10.3 to openSUSE 11.0. One can use zypper to do an online update which worked fine for me.

How to use zypper to upgrade is described in this blog entry.

Improvements

The problem with device names of SD cards, changing after suspend and resume (e.g. sdb -> sdc), is fixed in openSUSE 11.0.

Проблемы

SDHC

An issue with SDHC cards was reported in the eeeuser.com forum. Some SDHC cards worked previously under openSUSE 10.3 without problems, but in the EeePC they fail under openSUSE 11.0. Sample error message with a 4GB Transcend SDHC Class 6 (7812096 sectors):

[sdb] Sense Key: Hardware Error
I/O error, dev sdb, sector 7812088

Some issues with the SDHC reader may be solved with a BIOS update.

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

The new WLAN driver ath5k, included in the openSUSE 11.0 kernel package, seems not to work on the EeePC. So we need to blacklist this module to use the madwifi driver from appleonkel-repository. Edit /etc/modprobe.d/blacklist and add:

 blacklist ath5k

After that you have to reboot your Eee PC, because the wlan-chip must be initialized again.

Asus Eee PC 900a

The Asus Eee PC 900a is somewhere between the 701 and the 901.

Графика

On openSUSE 11.0 and 11.1 the display hardware can be configured using sax2. But to make it really work the entry DISPLAYMANAGER_RANDR_MODE_auto in /etc/sysconfig/displaymanager must be set to the name of the proper display mode "1024x600".

In 11.1 with kde4, set the fonts to 96dpi or the text will be too small to read. (configure desktop -- Appearance -- Fonts -- Force font DPI)

Проводная сеть (LAN)

The 900a uses the Aethros 1e chip.

In 11.1 the module is in the distribution and works.

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

Like the 701 the 900a needs the madwifi-ng driver.

In 11.1 blacklist the eeepc_laptop module in /etc/modprobe.d/blacklist. Install the asus_acpi-0.30 from appleonkel repository. Use the eeeEvents-1_1 module from 11.0 to get the hotkeys working. Add asus_acpi and pciehp to /etc/sysconfig/kernel modules_loaded_on_boot. The ath5k module works in 11.1 and with the above changes will be loaded and unloaded when you turn wireless on and off.

Boot Booster

All EeePCs have a feature named Boot Booster. Boot Booster requires the boot partition type of the first partition on the first disk to be 0xEF, and a stock install of openSUSE will not set up this type of partitioning scheme.

An EeePC uses the Boot Booster feature to skip BIOS loading and BIOS configuration on boot, going directly into the boot process. To use this feature, a partition of the type 0xEF with a size of at least 8MB must be available on the boot drive and Boot Boster must be enabled in the BIOS.

Проблемы и решения с Asus Eee PC 901

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

After installing openSUSE 11.0, you will find your Eee PC 901 does not display a significant portion (28%) of the bottom of the screen. The reason this happens is because by default the screen resolution is set to 1024 x 768, and the screen's native resolution is 1024 x 600, so you will not be able to see or use the bottom 168 pixels. This can be particularly difficult, because by default the panel containing the application launcher, Lock/Logout button, pager, system tray, and Task Manager is placed at the bottom of the screen. The panel can not bee seen, and it can not be used. Thankfully, there is a solution.

Fix the Screen Resolution

It is assumed you will be using KDE 4.0 for the instructions in this section.

  1. Log in as root user (the system administrator's account is named "root").
  2. Run YaST by right-clicking anywhere on the desktop there is no icon or other widget.
  3. A menu list will appear. Left-click on "Run Command" from this menu list. A dialog box will appear where you can enter the name of the program you want to run. In the top text field of this dialog box, enter "yast" (without typing the quote marks). Using the mouse pointer, scroll down to the bottom of the programs listed in the dialog box and click on "YaST (Application)". Left-click the button in the lower right hand corner of the dialog box labeled "Launch".
  4. The main YaST screen will appear. From YaST, choose "System" from the left hand column, then choose "/etc/sysconfig Editor" from the right-hand column.
  5. Next you will see a list of options on the left hand column.
  6. Left-click on the plus sign next to "Desktop" in the left hand column, then left-click on the plus sign next to "Display manager", also in the left hand column.
  7. Next, left-click on the line in the Display manager section labeled "DISPLAYMANAGER_RANDR_MODE_auto", also in the left hand column. You will see towards the top of the screen a text box that shows you the current default value of:
     1024x768_60 64.11 1024 1080 1184 1344 768 769 772 795 -HSync +Vsync

Left-click in the text box. Change the default value above to

     1024X600_60 48.96 1024 1064 1168 1312 600 601 604 622 -hsync -vsync
  1. Left click on the button in the lower right hand corner of the screen labeled "Finish".
  2. Either log out to the login screen and restart the X server by pressing Ctrl+Alt+Delete twice in a row; or reboot. When you log in again, you will be able to see the entire screen including the panel on the bottom.

Suspend to Disk

Set up as mentioned above for the eee701, but replace ath_pci with rt2860sta. Sometimes network may be in offline mode, but just reconnect. Have not seen any issues with my SDHC-card (16GB Kingston)

Suspend to RAM

Suspend to ram with 's2ram -f' works out of the box.

Проводная сеть (LAN)

The Asus Eee PC 901 uses the Attansic L1E gigabit Ethernet adapter (Linux kernel module name: atl1e) chip for wired networking, and is fully supported automatically in openSUSE 11.1. Network installation is now possible.


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

Wireless networking on the Asus Eee PC 901 uses the Ralink RT2860STA driver (kernel module name: rt2860sta), and is automatically installed in the second phase of openSUSE 11.1 installation.

Wireless networking only works after installation of the system is complete.

Asus Eee PC 1000H

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

In a very similar fashion as the Asus Eee PC 901, wireless networking on the Asus Eee PC 1000H uses the Ralink RT2860STA driver (kernel module name: rt2860sta).

The RT2860STA driver is known to work on a stock installation of openSUSE 11.0. Thanks again go to Dmitry Serpokryl for his valuable contribution of this package. Add the following repository and install the rt2860 and the rt2860sta-* package appropriate for your kernel:

Susemini.png
Version:
11.0
http://download.opensuse.org/repositories/home:/dmitry_serpokryl:/Enlightenment-cvs-core-metapackage/11.0_update/


Deprecated fix for wireless networking using ndiswrapper on the Asus Eee PC 1000