HTPC, установка Kodi на Ubuntu для использования как медиацентра

Покопался в своих старых записях и оказалось, что свой HTPC я собрал 8 лет назад. С самого начала использовал медиацентр XBMC, который позднее был переименован в Kodi. За это время вышло из строя пара HDD используемых в качестве хранилищ-обменников torrent контента, был сломан оригинальный пульт от корпуса позволяющий включать систему дистанционно, установлен под систему китайский SSD диск и периодическое обновление системы.
Изначально использовалась сборка XBMCbuntu, которая превращала компьютер в полноценный медиацентр, при загрузке сразу запускалось необходимое программное обеспечение, не было предварительных телодвижений с загрузкой рабочего стола и последующего запуска программы. Все взаимодействие происходило с пульта. После 13й версии и переименования XBMC в Kodi отдельную сборку перестали делать и Kodi пришлось разворачивать на уже предварительно установленную систему с последующей настройкой автозапуска медиацентра.
После приобретения Xiaomi TV Stick уже как полгода Kodi ушел на второй план, но недавно вышла новая версия 19.0 и стало интересно, какие альтернативы может предложить Kodi. Ранее я использовал его для ТВ просмотра IPTV предоставляемого провайдером, Offline просмотра фильмов и другого различного предварительно скаченного видео и просмотра YouTube.
Установка
Установка будет производиться на свежеустановленную OS Ubuntu 20.04 LTS Desktop в минимальной конфигурации, железо вполне скромное по современным меркам и как отмечалось ранее было приобретено 8 лет назад:
- Материнская плата: ASUS P8H61-M LE/USB3 (3.x)
- Процессор: Intel Pentium G860
- Видеокарта: ASUS GT640-DCSL-2GD3 с пассивным охлаждением
- Память: Kingston, KVR1333D3S8N9/2G x2 = 4Gb
- SSD: KingDian S200 60Gb под систему, HDD: Western Digital 2Tb под хранение контента
- Корпус: ETG G-1B
- БП: какой-то старый FSP на 350W
В документации на сайте проекта подробно расписана установка для различных операционных систем и платформ.
Подключаемся к будущему медиацентру по SSH или открываем терминал, вводим:
$ sudo apt-get install software-properties-common $ sudo add-apt-repository ppa:team-xbmc/ppa $ sudo apt-get update $ sudo apt-get install kodi
Поскольку у нас будет именно медиацентр, то вместо оболочки рабочего стола делаем запуск Kodi, для этого устанавливаем дополнительные пакеты, создаем пользователя и группу kodi, от имени которого будет запускаться программа.
$ sudo apt install xauth xorg xinit xserver-xorg-core xserver-xorg xserver-common $ sudo groupadd kodi $ sudo useradd kodi -g kodi -G audio,video -d /home/kodi -s /usr/sbin/nologin $ sudo passwd -l kodi > /dev/null $ sudo mkdir /home/kodi $ sudo chown -R kodi:kodi /home/kodi/
В качестве дисплей менеджера для автостарта Kodi устанавливаем LightDM.
$ sudo apt-get install lightdm
Во время установки пакета в качестве дисплей менеджера выбираем LightDM.

В конфигурационный файл /etc/lightdm/lightdm.conf
прописываем автозапуск:
[Seat:seat0] pam-service=lightdm-autologin autologin-user=kodi autologin-user-timeout=0 user-session=kodi
Перезагружаем систему:
$ sudo shutdown -r now
После перезагрузки сразу должен загрузиться интерфейс Kodi.
Хранилище
В качестве диска для системы лучше использовать SSD диск, при его использовании загрузка системы происходит практически мгновенно. Для хранилища загруженных файлов удобно использовать обычный HDD большого объема, он имеет достаточную производительность при копировании/чтении файлов, большой объем и приемлемую стоимость. Для использования второго диска под хранилище его необходимо смонтировать в систему. Создаем папку, в которую будет монтироваться хранилище, в файл /etc/fstab
добавляем строчку:
$ sudo mkdir /media/hdd0 $ sudo nano /etc/fstab /dev/sdb1 /media/hdd0 ext4 rw 0 0
где:
- /dev/sdb1 - монтируемый раздел под хранилище на подключаемом HDD
- /media/hdd0 - папка, в которую монтируется раздел
- ext4 - тип монтируемой файловой системы
- rw - раздел монтируется для чтения и записи
Перезагружаем систему:
$ sudo shutdown -r now
После перезагрузки в папку /media/hdd0
будет смонтирован раздел диска под хранилище.
На смонтированном диске создаем необходимые папки, например, Movies
, куда будут складываться файлы с кино-контентом для последующего просмотра. Права на папку выставляем nobody
, чтобы не было проблем с записью и последующим доступом.
$ sudo mkdir /media/hdd0/Movies $ sudo chown nobody:nogroup /media/hdd0/Movies/
Созданную папку добавляем в Kodi в раздел Videos, Videos -> Files -> Add videos -> Browse
, выбираем созданную папку Root filesystems -> media -> hdd0 -> Movies -> OK -> OK
. Для папки Movies указываем тип контента Movies
.
Доступ к контенту по сети, установка Samba
Чтобы была возможность в хранилище складывать контент для последующего проигрывания настроим к ним доступ по сети, для этого будет использован сервис Samba
. Для установки Samba вводим:
$ sudo apt install samba
Правим файл настроек /etc/samba/smb.conf, в конце файла добавляем:
[Movies] comment = Movies browsable = yes path = /media/hdd0/Movies read only = no guest ok = yes
ВНИМАНИЕ! Проблемы ограничения доступа не рассматриваем, т.к. считаем, что устройство находится в домашней локальной сети, возможно в отдельной подсети для устройств умного дома и защищен от доступа извне.
Добавляем все необходимые папки, например, Audio, Games и т.д. Перезагружаем сервис Samba:
$ sudo systemctl restart smbd
После перезагрузки заходим на медиацентр, нажимаем Win+R, вводим:
\\IP_address_mediacenter
В открывшимся окне видим папки с разрешенным доступом, проверяем доступ на чтение и запись.

Использование
Интерфейс Kodi адаптирован для управления с пульта, клавиатура с мышью не нужны в 99.9% случаев. Если корпус, в который установлено железо не имеет своего пульта, позволяющего управлять системой, то на китайских торговых площадках можно заказать подобный пульт, желательно с функцией аэромыши. Функция аэромыши в управлении Kodi обычно не нужна, но бывает полезна если необходимо загрузить рабочий стол.
Я использую пульт G20S заказанный здесь. Единственный минус, по крайней мере при использовании моего железа, это необходимость включать систему с кнопки на корпусе.