1 post tagged

chroot

Установка OpenELEC chroot на Armbian

OpenELEC работает очень хорошо и стабильно, но дистрибутив OpenELEC весьма ограничен. Ну и запустим его в chroot, и будем рулить системой как на обычной Armbian.

chroot — операция изменения корневого каталога в Unix-подобных операционных системах. Программа, запущенная с изменённым корневым каталогом, будет иметь доступ только к файлам, содержащимся в данном каталоге. Изменение корня это процесс изменения видимой на диске корневой директории (и текущего запуска процессов) на другую корневую директорию. Когда вы изменили корневую директорию на другую, вы больше не имеете доступа к файлам и командам за пределами этой директории.
-- источник
тестировал на debian server
Linux orangepipc 3.4.113 #1 SMP PREEMPT Tue Feb 21 19:21:53 CET 2017 armv7l GNU/Linux
как обычно через WinSCP Обновим систему:

apt-get update && apt-get upgrade -y
apt install pulseaudio
h3disp -m 1080p60
reboot

Качаем и распаковываем файлы OpenELEC:

wget https://down.nu/updates/OpenELEC-H3.arm-7.0-devel-20170221190834-r23330-g94644893c.tar
tar -xf OpenELEC-H3.arm-7.0-devel-*.tar
tail -c+65 < OpenELEC-H3.arm-7.0-devel-*/target/KERNEL > /boot/vmlinuz-openelec

Переносим openelec-root в /opt, создаем точку монтирования и симлинк для загрузки ядра OpenELEC:

mv OpenELEC-H3.arm-7.0-devel-*/target/SYSTEM /opt/openelec-root
mkdir /opt/openelec
cd /boot
rm zImage
ln -s vmlinuz-openelec zImage

Создаем домашнюю директорию, и скрипт запуска kodi в chroot окружении:

mkdir /storage
nano /storage/start.sh

вставляем:


mount -t devtmpfs /dev /dev
mount -t proc /proc /proc
mount -t sysfs /sys /sys

modprobe mali

mkdir /run/connman/
echo "nameserver 8.8.8.8" > /run/connman/resolv.conf

export HOME=/storage
/usr/lib/kodi/kodi.sh --standalone -fs &

Создаем скрипт запуска chroot:

nano /root/kodi-start.sh

вставляем:


mount -o loop /opt/openelec-root /opt/openelec
mount -o bind /storage /opt/openelec/storage
mount -o bind /var /opt/openelec/var
mount -o bind /run /opt/openelec/run

pulseaudio --system --daemonize

chroot /opt/openelec/ /storage/start.sh

Даём права скриптам на запуск:

chmod +x /storage/start.sh
chmod +x /root/kodi-start.sh
reboot

Для запуска после перезагрузки:

nano /etc/rc.local

вставляем:


# disable console cursor blinking
echo 0 > /sys/class/graphics/fbcon/cursor_blink

/root/kodi-start.sh &

exit 0

2017   armbian   chroot   OpenELEC   OrangePI PC