Armbian est mis à jour environ tous les 3 à 4 mois. Si vous avez le gout de l’aventure ou que vous avez besoin de la dernière version du Kernel qui prend en charge certains composants de votre mini-PC, Armbian propose une version Nightly et une procédure de mise à jour du Kernel vers la version en cours de développement. En février 2017, la version 5.25 d’Armbian apporte le support de nouvelles cartes Clearfog Base, Lime2 eMMC, Lime A33, NanoPi M1+, OrangePi Zero, OrangePi PC2. Le driver vidéo simplefb pour SoC H3… toutes les nouveautés se trouvent ici.
Sommaire
Identifier le Kernel et la version d’Armbian installée
Avant de commencer, regardons les versions installées. En vous connectant en SSH, vous avez du remarquer que plusieurs informations sont disponibles. Ici, j’ai utilisé un Orange Pi Lite équipé de 512Mo de RAM et d’une carte SD de 8Go. La version du noyau est la 3.4.112. Elle est basée sur la distribution sun8i (page officielle Linux Sunxi)
root@192.168.1.79's password: ___ ____ _ _ _ _ / _ \ _ __ __ _ _ __ __ _ ___ | _ \(_) | | (_) |_ ___ | | | | '__/ _` | '_ \ / _` |/ _ \ | |_) | | | | | | __/ _ \ | |_| | | | (_| | | | | (_| | __/ | __/| | | |___| | || __/ \___/|_| \__,_|_| |_|\__, |\___| |_| |_| |_____|_|\__\___| |___/ Welcome to ARMBIAN Debian GNU/Linux 8 (jessie) 3.4.112-sun8i System load: 0.09 Up time: 4 min Memory usage: 14 % of 494Mb IP: 192.168.1.79 CPU temp: 44°C Usage of /: 20% of 7.2G Last login: Mon Feb 13 10:27:12 2017 root@orangepilite:~#
Sinon, la commande uname -a permet de connaitre la version du Kernel installée depuis le Terminal.
uname -a Linux orangepilite 3.4.112-sun8i #14 SMP PREEMPT Wed Sep 14 20:29:31 CEST 2016 armv7l GNU/Linux
Tous les détails de la version se trouvent dans le fichier release. On peut y accéder facilement avec la commande cat /etc/*-release
cat /etc/*-release # PLEASE DO NOT EDIT THIS FILE BOARD=orangepilite BOARD_NAME="Orange Pi Lite" VERSION=5.20 LINUXFAMILY=sun8i BRANCH=default ARCH=arm PRETTY_NAME="Debian GNU/Linux 8 (jessie)" NAME="Debian GNU/Linux" VERSION_ID="8" VERSION="8 (jessie)" ID=debian HOME_URL="http://www.debian.org/" SUPPORT_URL="http://www.debian.org/support" BUG_REPORT_URL="https://bugs.debian.org/"
Ici, l’Orange Pi fonctionne avec la distribution Armbian (version 5.20) qui est basée sur Debian Jessie. La même que Raspbian qui fait fonctionner le Raspberry Pi.
Mettre à jour le Kernel de l’Orange Pi Lite (version 4.x)
Allez sur le site d’Armbian pour trouver la procédure de mise à jour qui correspond à votre mini-PC. Par exemple, pour l’Orange Pi Lite, c’est ici. Il est possible de mettre à jour le Kernel vers la version stable ou vers la version de développement (actuellement 4.x)
Identifiez vous (su -) ou connectez vous en SSH avec le compte root.
On commence par supprimer
aptitude remove ~nlinux-dtb ~nlinux-u-boot ~nlinux-image ~nlinux-headers
Vous aurez au moins deux messages d’avertissement qu’il faudra accepter par Y
Remove the following packages: 1) expect 2) libexpat1-dev 3) libpython3-dev 4) libpython3.4-dev 5) python3-dev 6) python3.4-dev 7) tightvncserver 8) xfonts-base Accept this solution? [Y/n/q/?]
De même pour ces librairies
The following packages will be REMOVED: expect{a} libexpat1-dev{a} libpython3-dev{a} libpython3.4-dev{a} linux-headers-sun8i linux-image-sun8i linux-u-boot-orangepilite-default python3-dev{a} python3.4-dev{a} tightvncserver{a} xfonts-base{a} 0 packages upgraded, 0 newly installed, 11 to remove and 85 not upgraded. Need to get 0 B of archives. After unpacking 141 MB will be freed. Do you want to continue? [Y/n/?]
Ensuite exécutez
aptitude remove ~nlinux-firmware ~narmbian-firmware ~nlinux-$(lsb_release -cs)-root
Maintenant que les anciennes ressources ne risquent plus d’interférer avec la mise à jour, exécutez successivement ces commandes. L’opération dure assez longtemps (30 minutes environ). A la fin de l’installation, vous devrez redémarrez l’OrangePi
apt-get install linux-image-dev-sun8i linux-dtb-dev-sun8i linux-headers-dev-sun8i apt-get install linux-u-boot-orangepilite-dev linux-$(lsb_release -cs)-root-dev-orangepilite apt-get install armbian-firmware sunxi-tools swconfig a10disp reboot
Voici le journal récupéré durant la mise à jour du Kernel de mon Orange Pi Lite
root@orangepilite:~# apt-get install linux-image-dev-sun8i linux-dtb-dev-sun8i linux-headers-dev-sun8i Reading package lists... Done Building dependency tree Reading state information... Done Suggested packages: linux-firmware-image-dev-sun8i The following NEW packages will be installed: linux-dtb-dev-sun8i linux-headers-dev-sun8i linux-image-dev-sun8i 0 upgraded, 3 newly installed, 0 to remove and 83 not upgraded. Need to get 24.8 MB of archives. After this operation, 116 MB of additional disk space will be used. Get:1 http://apt.armbian.com/ jessie/main linux-dtb-dev-sun8i armhf 5.25 [59.7 kB] Get:2 http://apt.armbian.com/ jessie/main linux-headers-dev-sun8i armhf 5.25 [10.3 MB] Get:3 http://apt.armbian.com/ jessie/main linux-image-dev-sun8i armhf 5.25 [14.5 MB] Fetched 24.8 MB in 1min 6s (374 kB/s) Selecting previously unselected package linux-dtb-dev-sun8i. (Reading database ... 28601 files and directories currently installed.) Preparing to unpack .../linux-dtb-dev-sun8i_5.25_armhf.deb ... Unpacking linux-dtb-dev-sun8i (5.25) ... Selecting previously unselected package linux-headers-dev-sun8i. Preparing to unpack .../linux-headers-dev-sun8i_5.25_armhf.deb ... Unpacking linux-headers-dev-sun8i (5.25) ... Selecting previously unselected package linux-image-dev-sun8i. Preparing to unpack .../linux-image-dev-sun8i_5.25_armhf.deb ... Unpacking linux-image-dev-sun8i (5.25) ... Setting up linux-dtb-dev-sun8i (5.25) ... Setting up linux-headers-dev-sun8i (5.25) ... Compiling headers - please wait ... Setting up linux-image-dev-sun8i (5.25) ... update-initramfs: Generating /boot/initrd.img-4.9.4-sun8i root@orangepilite:~# apt-get install linux-u-boot-orangepilite-dev linux-$(lsb_release -cs)-root-dev-orangepilite Reading package lists... Done Building dependency tree Reading state information... Done The following extra packages will be installed: libuuid-perl linux-base The following NEW packages will be installed: libuuid-perl linux-base linux-jessie-root-dev-orangepilite linux-u-boot-orangepilite-dev 0 upgraded, 4 newly installed, 0 to remove and 83 not upgraded. Need to get 576 kB of archives. After this operation, 223 kB of additional disk space will be used. Do you want to continue? [Y/n] Y Get:1 http://apt.armbian.com/ jessie/main linux-jessie-root-dev-orangepilite armhf 5.25 [362 kB] Get:2 http://apt.armbian.com/ jessie/main linux-u-boot-orangepilite-dev armhf 5.25 [170 kB] Get:3 http://httpredir.debian.org/debian/ jessie/main libuuid-perl armhf 0.05-1+b1 [10.0 kB] Get:4 http://httpredir.debian.org/debian/ jessie/main linux-base all 3.5 [34.3 kB] Fetched 576 kB in 1min 4s (8,990 B/s) Preconfiguring packages ... Selecting previously unselected package libuuid-perl. (Reading database ... 51588 files and directories currently installed.) Preparing to unpack .../libuuid-perl_0.05-1+b1_armhf.deb ... Unpacking libuuid-perl (0.05-1+b1) ... Selecting previously unselected package linux-base. Preparing to unpack .../linux-base_3.5_all.deb ... Unpacking linux-base (3.5) ... Selecting previously unselected package linux-jessie-root-dev-orangepilite. Preparing to unpack .../linux-jessie-root-dev-orangepilite_5.25_armhf.deb ... Adding 'diversion of /etc/mpv/mpv.conf to /etc/mpv/mpv-dist.conf by linux-jessie-root-dev-orangepilite' Unpacking linux-jessie-root-dev-orangepilite (5.25) ... Selecting previously unselected package linux-u-boot-orangepilite-dev. Preparing to unpack .../linux-u-boot-orangepilite-dev_5.25_armhf.deb ... Unpacking linux-u-boot-orangepilite-dev (5.25) ... Processing triggers for man-db (2.7.0.2-5) ... Processing triggers for initramfs-tools (0.120+deb8u2) ... update-initramfs: Generating /boot/initrd.img-4.9.4-sun8i update-initramfs: Converting to u-boot format Processing triggers for systemd (215-17+deb8u4) ... Setting up libuuid-perl (0.05-1+b1) ... Setting up linux-base (3.5) ... Setting up linux-jessie-root-dev-orangepilite (5.25) ... Setting up linux-u-boot-orangepilite-dev (5.25) ... Updating u-boot on device /dev/mmcblk0 Processing triggers for initramfs-tools (0.120+deb8u2) ... update-initramfs: Generating /boot/initrd.img-4.9.4-sun8i update-initramfs: Converting to u-boot format root@orangepilite:~# apt-get install armbian-firmware sunxi-tools swconfig a10disp Reading package lists... Done Building dependency tree Reading state information... Done The following NEW packages will be installed: a10disp armbian-firmware swconfig The following packages will be upgraded: sunxi-tools 1 upgraded, 3 newly installed, 0 to remove and 82 not upgraded. Need to get 1,670 kB of archives. After this operation, 34.8 kB of additional disk space will be used. Get:1 http://apt.armbian.com/ jessie/utils a10disp armhf 1.0-1~armbian5.25+1 [8,824 B] Get:2 http://apt.armbian.com/ jessie/main armbian-firmware armhf 5.25 [1,617 kB] Get:3 http://apt.armbian.com/ jessie/utils sunxi-tools armhf 1.4.2-1~armbian5.25+1 [35.8 kB] Get:4 http://apt.armbian.com/ jessie/utils swconfig armhf 15.04-2~armbian5.25+1 [7,704 B] Fetched 1,670 kB in 3s (434 kB/s) Selecting previously unselected package a10disp:armhf. (Reading database ... 51708 files and directories currently installed.) Preparing to unpack .../a10disp_1.0-1~armbian5.25+1_armhf.deb ... Unpacking a10disp:armhf (1.0-1~armbian5.25+1) ... Selecting previously unselected package armbian-firmware. Preparing to unpack .../armbian-firmware_5.25_armhf.deb ... Unpacking armbian-firmware (5.25) ... Preparing to unpack .../sunxi-tools_1.4.2-1~armbian5.25+1_armhf.deb ... Unpacking sunxi-tools (1.4.2-1~armbian5.25+1) over (1.3-1~armbian5.20+1) ... Selecting previously unselected package swconfig. Preparing to unpack .../swconfig_15.04-2~armbian5.25+1_armhf.deb ... Unpacking swconfig (15.04-2~armbian5.25+1) ... Setting up a10disp:armhf (1.0-1~armbian5.25+1) ... Setting up armbian-firmware (5.25) ... Setting up sunxi-tools (1.4.2-1~armbian5.25+1) ... Setting up swconfig (15.04-2~armbian5.25+1) ... root@orangepilite:~#
Durant la mise à jour du Kernel, vous aurez deux questions à acceptez
puis
Le format de la sortie vidéo n’est normalement pas affectée par la mise à jour du Kernel. Après re-connexion en SSH, le Kernel a bien été mis à jour. Ici, il est basé sur la version 4.9.4-sun8i.
___ ____ _ _ _ _ / _ \ _ __ __ _ _ __ __ _ ___ | _ \(_) | | (_) |_ ___ | | | | '__/ _` | '_ \ / _` |/ _ \ | |_) | | | | | | __/ _ \ | |_| | | | (_| | | | | (_| | __/ | __/| | | |___| | || __/ \___/|_| \__,_|_| |_|\__, |\___| |_| |_| |_____|_|\__\___| |___/ Welcome to ARMBIAN 5.25 stable Debian GNU/Linux 8 (jessie) 4.9.4-sun8i System load: 2.08 Up time: 37 sec Memory usage: 11 % of 489Mb IP: 192.168.1.79 CPU temp: 48°C Usage of /: 17% of 7.2G [ 82 updates to install: apt-get upgrade ] New to Armbian? Check the documentation first: docs.armbian.com Last login: Mon Feb 13 11:24:25 2017 root@orangepilite:~#
Installer la version Nightly
Armbian propose également une version Nightly, c’est à dire une version en cours de développement qui est compilée (en général) chaque nuit. C’est une version pour les aventuriers ou les développeurs ayant besoin d’une fonctionnalité qui n’est pas encore finalisée.
L’installation est beaucoup plus simple puisqu’il suffit de déclarer les ressources à utiliser pour les mises à jour (update) et les mises à niveau (upgrade). Faites précédez d’un sudo si vous n’êtes pas connecté en root.
sed -i "s/apt/beta/" /etc/apt/sources.list.d/armbian.list
Ensuite
apt-get update apt-get upgrade
Après l’update puis l’upgrade, Armbian est maintenant passé à la version 5.26. Le Kernel a également été mis à jour vers la version 4.10.0-sun8i
root@192.168.1.79's password: ___ ____ _ _ _ _ / _ \ _ __ __ _ _ __ __ _ ___ | _ \(_) | | (_) |_ ___ | | | | '__/ _` | '_ \ / _` |/ _ \ | |_) | | | | | | __/ _ \ | |_| | | | (_| | | | | (_| | __/ | __/| | | |___| | || __/ \___/|_| \__,_|_| |_|\__, |\___| |_| |_| |_____|_|\__\___| |___/ Welcome to ARMBIAN 5.26.170214 nightly Debian GNU/Linux 8 (jessie) 4.10.0-sun8i System load: 0.38 Up time: 2 min Memory usage: 12 % of 489Mb IP: 192.168.1.79 CPU temp: 45°C Usage of /: 18% of 7.2G Last login: Mon Feb 13 12:08:51 2017
Réinstaller le script h3disp
Il est possible que le script h3disp disparaissent durant la mise à jour vers la version Nightly. C’est très gênant car le fichier script.bin est écrasé durant la mise à jour. Tous vos réglages ainsi que la format vidéo sont supprimés. Pour le réinstallé, je n’ai pas trouvé d’autre moyen que de créer un nouveau script en partant du code source disponible sur GitHub ici. J’ai remarqué que ça peut se produire lorsqu’on migre vers la version Nightly avant de mettre à jour le noyau.
Connectez vous en SSH et créer un fichier h3disp dans votre répertoire utilisateur (par exemple)
nano h3disp
Collez le script et enregistrez le avec CTRL + X puis Y.
Rendez le script exécutable
chmod +x h3disp
Maintenant vous pouvez changer de nouveau votre sortie vidéo. Par exemple.
./h3disp -m 33 -d
Voilà, vous pouvez profiter des toutes dernières versions du noyau Linux et de la distribution Armbian. N’oubliez pas de sauvegarder vos données avant toute mise à jour et que la mise à jour peut provoquer la destruction de votre système.
Avez-vous aimé cet article ?