UBUNTU mini и XBMC

В данной статье я хочу описать установку XBMC на ubuntu 12.04 mini.

Мой выбор в отношении ubuntu 12.04 mini был очевидным. Большую часть оборудования система определяет без проблем и за пару лет использования дома не вызывала проблем. Сборку mini выбрал, т.к. хотел иметь минимальную систему без пакетов GNOME или KDE. Установка этих рабочих столов ведет к установке различных пакетов,в которых я не вижу необходимости.

  • Установил систему ubuntu 12.04 mini и загрузился с HDD.
  • Изначально драйвера видео карты не установлены, на дисплей 0 убунте выводить нечего ( например рабочий стол), поэтому видим чёрный экран и цветовые помехи. Набираем ctrl+alt+F3 ( консоль №3 ) и переходим к последующим действиям. В принципе можем делать это в любой из шести консолей ctrl+alt+F1…6. Выход из консоли в XBMC по ctrl+alt+F7 ( иногда ctrl+alt+F1 или F2 ).
  •  В консоли вводим логин и пароль пользователя – обычно это xbmc / xbmc. Вводим в консоли для проверки версии убунты и версии ядра:
lsb_release -a
uname -v -r
  • устанавливаем mc коммандер и удалённый доступ , если требуется :
$ sudo apt-get install  mc openssh-server

Подготовка. Установите пакеты wpa-supplicant и wireless-tools

$ sudo apt-get install wpasupplicant wireless-tools

Теперь убедитесь в том, что Ваше беспроводное устройство (в данном примере это «wlan0») работает и «видит» беспроводные сети. Команда

$ iwconfig

должна выдать примерно такой результат:

$ iwconfig
lo        no wireless extensions.

eth0      no wireless extensions.

wmaster0  no wireless extensions.

wlan0     IEEE 802.11bg  ESSID:""  
          Mode:Managed  Frequency:2.412 GHz  Access Point: Not-Associated   
          Tx-Power=27 dBm   
          Retry min limit:7   RTS thr:off   Fragment thr=2352 B   
          Power Management:off
          Link Quality:0  Signal level:0  Noise level:0
          Rx invalid nwid:0  Rx invalid crypt:0  Rx invalid frag:0
          Tx excessive retries:0  Invalid misc:0   Missed beacon:0

а доступные сети можно посмотреть командой

$ iwlist <имя интерфейса> scan

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

$ iwlist wlan0 scan

wlan0     Scan completed :
          Cell 01 - Address: 00:00:00:00:00:00
                    ESSID:"ubuntuessid"
                    Mode:Master
                    Channel:8
                    Frequency:2.447 GHz (Channel 8)
                    Quality=7/100  Signal level:-99 dBm  Noise level=-104 dBm
                    Encryption key:on
                    Bit Rates:1 Mb/s; 2 Mb/s; 5.5 Mb/s; 11 Mb/s; 18 Mb/s
                              24 Mb/s; 36 Mb/s; 54 Mb/s; 6 Mb/s; 9 Mb/s
                              12 Mb/s; 48 Mb/s
                    Extra:tsf=0000001d57e98bf6
                    Extra: Last beacon: 388ms ago

Настройка

Редактируем /etc/network/interfaces, например так:

$ sudo gedit /etc/network/interfaces

Удаляем (или комментируем) все упоминания нашего беспроводного интерфейса и добавляем свои:

iface wlan0 inet dhcp
wpa-driver wext
wpa-ssid <имя_точки_доступа>
wpa-ap-scan 1
wpa-proto RSN
wpa-pairwise CCMP
wpa-group CCMP
wpa-key-mgmt WPA-PSK
wpa-psk <hex_ключ> [ВАЖНО - см. Генерация ключей]
auto wlan0

Где:

Параметр Описание
iface wlan0 inet dhcp конфигурация для DHCP (для статического IP см. пример ниже)
«iface wlan0» – Имя нашего интерфейса (wlan0, eth1, rausb0, ra0, итд.)
wpa-driver Это wpa-driver для нашей карты
(‘wext’ – общий драйвер для linux, работающий с «ndiswrapper»). Рекомендуется оставить как есть.
Другие варианты:
hostap = Host AP driver (Intersil Prism2/2.5/3)
atmel = ATMEL AT76C5XXx (USB, PCMCIA)
wext = Linux wireless extensions (generic)
madwifi = Atheros
wired = wpa_supplicant wired Ethernet driver
wpa-ssid Имя нашей точки доступа (ESSID). Без кавычек.
wpa-ap-scan Параметр вещания точкой доступа ее имени.
«1» = ESSID вещается всем.
«2» = ESSID скрыт.
wpa-proto Протокол
«RSN» = WPA(2)
«WPA» = WPA(1)
wpa-pairwise & wpa-group «CCMP» = AES-шифрователь (как часть стандарта WPA(2))
«TKIP» = TKIP-шифрователь (как часть стандарта WPA(1))
wpa-key-mgmt «WPA-PSK» = Аутентификация через ключевую фразу (см. ‘Cоздание ключей’)
«WPA-EAP» = Аутентификация при помощи сервера аутентификаций.
auto wlan0 Автоматическое включение wlan0 при загрузке/перезагрузке сети.

Генерация ключей

Теперь нам нужно сконвертировать нашу ключевую фразу (WPA ASCII) в hex-ключ:

$ wpa_passphrase <имя_точки_доступа> <ascii_ключ>

Результат будет примерно таким:

network={
ssid="test"
#psk="12345678"
psk=fe727aa8b64ac9b3f54c72432da14faed933ea511ecab1 5bbc6c52e7522f709a
}

hex-ключ это все символы после «psk=».

Нужно его скопировать в буфер обмена и вставить в файл /etc/network/interfaces в поле wpa-psk.

Теперь можно сохранить файл и перезагрузить сеть. Должно установиться соединение. Однако иногда этого сразу не происходит. Если это так – перезагружаем машину.

Дополнительно

Отключаем чтение файла /etc/network/interfaces для others во избежания попадания пароля от сети к третьим лицам.

$ sudo chmod o=-r /etc/network/interfaces
  • Обновляем сведения о ресурсах в репозитории и дополняем инсталляцией пакетов:
$ sudo apt-get update    
$ sudo apt-get install xinit x11-common x11-utils  alsa-utils
  • Чтобы можно было пользоваться, как минимум автоматическим добавлением репозиториев (add-apt-repository), ставим пакеты :
$ sudo apt-get install python-software-properties pkg-config
  • Для того, чтобы автомонтировались внешние диск.устройства , для включения менеджмента управления питанием (suspend, hibernate, reboot, shutdown), ставим :
$ sudo apt-get install udisks upower acpi acpi-support hal -y
  • Если не монтируются внешние USB HDD , добавляем :
$ sudo apt-get install usbmount halevt
  • Если не установились вместе с системой , то ставим для скачивания файлов из интернета :
$ sudo apt-get install wget curl

Для Ubuntu существует PPA, содержащий последние версии драйверов видеокарт. Драйверы из этого репозитория ничем не отличаются от таковых с официального сайта, т.к. являются ими же, но только уже в понятном для системы формате .deb.

  1. Добавьте репозиторий в источники приложений командой в терминале:

    sudo add-apt-repository ppa:ubuntu-x-swat/x-updates
  2. Обновите информацию о пакетах и установите все обновления:

    sudo apt-get update
    sudo apt-get upgrade
  3. Установите драйвер (предварительно посмотрев к какой версии драйверов относится ваша видеокарта):
    • Драйвер версии 96.XX.XX

      sudo apt-get install libvdpau1 nvidia-common nvidia-96-modaliases nvidia-settings nvidia-96 nvidia-glx-96
    • Драйвер версии 173.XX.XX

      sudo apt-get install libvdpau1 nvidia-common nvidia-173-modaliases nvidia-settings nvidia-173 nvidia-glx-173
    • Драйвер версии 295.XX.XX

      sudo apt-get install libvdpau1 nvidia-common nvidia-current nvidia-settings nvidia-current
  4. Перезагрузите компьютер.
    • Устанавливаем XBMC

Для получения XBMC 11 _Eden, русской виртуальной клавиатуры и поддержки blu-ray.iso добавляем репозиторий fantom-h

$ sudo add-apt-repository ppa:fantom-h/xbmc-pvr
  • Обновляем сведения о имеющихся в репозиториях пакетах для установки и устанавливаем их :
$ sudo apt-get update 
$ sudo apt-get install libbluray1 libbluray-dev 
$ sudo apt-get install xbmc-live 
$ sudo reboot

p.s. В качестве репозитория для установки XBMC_Eden_11.0 можно использовать любой, соответствующий вашей OS.

Экран загрузки XBMC

      • Если вместо splash XBMC первым появляется экран загрузки Ubuntu, качаем и устанавливаем plymouth-theme-xbmc-logo :
sudo apt-get install plymouth-label
wget http://excyle.nl/plymouth-theme-xbmc-logo.deb
sudo dpkg -i *.deb
или взять здесь
      • При возникновении ошибок при инсталляции пакетов и для их исправления используйте команду :
sudo apt-get -f install
      • Обновлять загрузчик темы по умолчанию не нужно, но если понадобится выбрать из имеющихся загрузчиков :
sudo update-alternatives --config default.plymouth
      • в появившемся окне выбираем тему plymouth-theme-xbmc-logo (вводим цифру 0, 1 или 2) и обновляем загрузчик :
sudo update-initramfs -u

Если после установки XBMC в Система – Система -Энергосбережение – Режим выключения есть только два режима Спящий и Ждущий , проверьте выделенную строку и исправьте значение no на значение yes

Воспроизведение dvd.iso, mp3

    • Для “чтения” dvd содержимого в десктопных системах требуется наличие установленных libdvdread4 (в зависимостях подтягивается libdvdnav4), libdvdcss2 и libcdio-* с его пакетом зависимостей. XBMC использует аналогичные встроенные библиотеки.
    • Если будут проблемы с воспроизведением образами дисков dvd.iso , установите mpeg2dec. При установке mpeg2dec в зависимостях подтягивается libmpeg2-4 .
    • При проблемах с mp3 нужно установить libmad0 .

      Снижаем нагрузку в интерфейсе

    • Включение опции dirtyregions не имеет никакого эффекта при воспроизведении видео, но уменьшает нагрузку на процессор в интерфейсе в сочетании с nofliptimeout = 0 ( по умолчанию). Само видео не зависит от этих параметров. Для получения дополнительной информации Working with dirty regions и описание опций
       <advancedsettings>
       <gui>    
         <algorithmdirtyregions>1</algorithmdirtyregions>
         <nofliptimeout>1000</nofliptimeout>
       </gui>
      </advancedsettings>

Регулируем количество обрабатываемых потоков процессором

      • По мнению разработчиков XBMC эта опция может быть полезна для настройки платформ с маломощными процессорами типа Xbox и Intel Atom систем.
<bginfoloadermaxthreads>5</bginfoloadermaxthreads>

Настраиваем вывод звука

  • Работа с звуком определялась установкой alsa-utils :
$ sudo apt-get install alsa-utils
  • Включаем Master и spdif в alsamixer :
$  sudo alsamixer
  • Сначала по F6 выбираем звуковую карту с помощью которой будем выводить звук.
  • Для включить-выключить движки громкости используйте на клавиатуре “М” и стрелки клавиатуры.
00 - это включено, ММ- "mute" сответственно выключено
    • p.s. вызов консоли делаем по ctrl+alt+F1…6, а возврат в интерфейс XBMC по alt+F7 или F8. Дополнительно вывод звука настраиваем в XBMC : Система-Система-Устройства вывода звука.
    • В настройках звука XBMC устанавливаем : По умолчанию ( Alsa )
    • В данном случае настройки вступают в силу без перезагрузки.

Настраиваем русский шрифт в консоли

Языковая консоль по умолчанию

      • В разных версиях Ubuntu могут возникать проблемы с кириллицей в консоли.
      • Кто устанавливает 11.04 читаем здесь.
      • Настройки в Ubuntu server_11.04 _32bit автора темы приведены в этой ссылке .
      • Настройки в Ubuntu server для 10.10 здесь.
      • Кому интересно – “откуда ноги растут”
      • Чтобы “закрепить” латиницу в Ubuntu 11.10 нужно добавить в /etc/environment строки :
LC_ALL=en_US.utf8
LANG=en_US.utf8
      • Проверяем наличие в системе ru_RU.utf8 – русских шрифтов :
locale -a
      • Чтобы “закрепить” русские шрифты нужно прописать в /etc/environment :
LC_ALL=ru_RU.utf8
LANG=ru_RU.utf8
      • Во избежании недоразумений — пишем что-то одно из выше названного.
      • Выполняем :
sudo nano /etc/initramfs-tools/initramfs.conf
      • В конце файла добавляем для включения настроек консоли при загрузке :
FRAMEBUFFER=Y
        • добавление этого параметра может вызвать показ окна загрузки Ubuntu, вместо splash XBMC. Как потом это исправить читаем выше [Экран загрузки XBMC]
      • Выполняем для конфигурирования шрифтов в консоли :
sudo dpkg-reconfigure console-setup
      • Пошагово устанавливаем в окнах значения UTF-8 , KOI8-U и Koi8-R, Terminus , шрифт 16
      • По завершении процедуры автоматически выполняется update-initramfs ( утилита initramfs-tools) и перезагружаемся.

Работа с утилитами языковых настроек

Утилита console-setup

      • В убунтах, версией ниже 11.10, этот баг с консолью можно устранить воспользовавшись утилитами console-setup.
      • 1. Открываем консоль ctrl+alt+F3 , берем на себя полномочия root админа
sudo su
      • и дальше вводим все команды без sudo:
dpkg-reconfigure console-setup
      • Пошагово устанавливаем в окнах значения UTF-8 , KOI8-U и Koi8-R, Terminus Bold, шрифт 16
      • UTF-8

      • KOI8-U и Koi8-R

      • Terminus Bold

      • шрифт 16

      • 2. При последнем подтверждении на выполнение следует сообщение в консоли, с шуткой русского программера :
неизвестная кодировка unicode --- пропускаю запрос кодировки между ушей
Загружаю /etc/console-setup/cached.kmap.gz
Your console font configuration will be updated the next time your system
boots. If you want to update it now, run 'setupcon' from a virtual console.

В переводе это :”Ваши настройки шрифта консоли будет обновляться в следующий раз призагрузке вашей системы. Если вы хотите обновить сейчас, запустите «setupcon» из виртуальной консоли.”

setupcon
      • 3. Выполняем в консоли для перезагрузки шрифтов и сохранения настроек консоли :
dpkg-reconfigure locales
      • 4. Добавляем сведения в локализации :
nano  /etc/default/local :
LANG="ru_RU.UTF-8"
LANGUAGE="ru_RU:ru:en_US:en"