ODROID-HC2 – Installation d’Openmediavault

Ça faisait longtemps que je voulais remplacer ma baie Synology par un système ouvert, à savoir openmediavault, “The open network attached storage solution“. Restait à savoir sur quel matériel faire tourner ce serveur, l’objectif étant aussi de minimiser le budget : ces baies propriétaires comme Synology, Qnas, restent tout de même assez chères, quand on y ajoute le prix des disques durs.

Il y a bien les NAS Kobol qui m’avaient tapées dans l’œil, projet open-source proposant des baies physiques (open hardware) sur lesquelles on peut faire tourner Armbian ou Syncloud, Openmediavault ou encore Nextcould. Mais là en plus du prix (300$ + le port), le produit est indisponible depuis plusieurs mois.

Après avoir d’abord pensé à utiliser le populaire Raspberry 4, j’ai finalement opté pour un Odroid-HC2. D’abord parce qu’il dispose d’un contrôleur SATA, un vrai contrôleur disque, ce qui préférable à la solution USB d’un Raspberry. Ensuite parce que le processeur est nettement plus puissant.

Enfin parce que j’aime bien la conception : le fait de pouvoir insérer un disque dur 3″½ dans le rail, permet avec une coque de n’avoir au final un seul boîtier, contrairement à un Raspberry où l’on se retrouve forcément avec un disque externe. C’est tout de même plus pratique.

À gauche le Odroid-hc2 nu, à droite avec le HD et sa coque transparente.

Évidemment, je fais le choix d’un disque unique, pas de baie RAID comme dans les NAS du marché. Mais avec un backup via le réseau sur mon PC où j’ai de la place en stockage, ce sera parfait. C’est le principe KISS ! (Keep It Simple, Stupid). 😎

Voyons voir la mise en œuvre et l’installation d’Openmediavault, la première étape de mon future NAS. Il s’agit de la version 5.5.15-1. Car j’ai ensuite l’intention d’installer OpenVPN, un serveur NextCloud, PLEX media server, et sans doute un logiciel de torrent. Ce sera l’objet d’autres articles.

Hardware

Comme j’avais un HD 3″½ en stock de 1To, c’était l’occasion de l’utiliser. Pour info, le HC2 permet d’utiliser ce type de disque, quand le HC1 n’autorise que les disques de 2″½. Il ne restait plus qu’à commander le matériel.

Pour ce faire, je suis allé sur le site odroid.fr, qui permet de payer en euros, et d’inclure la TVA dans le prix, ce qui évite les mauvaises surprises à la douane (tout est envoyé d’Angleterre je crois). Bref, alimentation, carte SD 8 Go, coque et port comrpis, j’en ai eu pour un peu moins de 100 € (97,95 €).

L’assemblage est on ne peut plus simple (voir photo), il ne reste plus qu’à installer openmediavault.

Openmediavault

Le premier problème est de trouver la bonne image OS à récupérer. Le lien des images OVM toutes prêtes vous renvoient vers un document expliquant qu’il faut utiliser maintenant une autre méthode, le nombre de SBD (Single Board Computer) ne cessant de croître, et qu’il est impossible de fournir une image toute prête pour chaque modèle de SBC.

On arrive donc sur cette page du forum OMV, où il faut choisir Installing OMV5 on Armbian Buster. Buster est la version recommandée pour OMV sur ce genre de carte. Ce dernier lien affiche la documentation intitulée “Getting Started with OMV Addendum A: Installing OMV5 On Armbian SBC’s”. Commencer par la télécharger localement comme il est demandé, afin de l’ouvrir avec votre lecteur de PDF préféré (d’ailleurs les hyperliens de la doc ne fonctionnaient pas avec l’affichage du PDF dans Firefox !).

Dans “Supported Devices”, il faut cliquer sur le lien Armbian Download Page. Sur la page qui s’affiche, on trouve finalement notre modèle :

Supported ! 🙂

On clique sur l’image, et on arrive enfin sur la page recherchée. Ici, il faut choisir Buster qui offre une meilleure compatibilité avec OMV :

Il ne reste qu’à suivre les instructions, à savoir dézipper le fichier avec 7-Zip (extension .xz). Sur Ubuntu, il suffit de passer la commande suivante pour installer 7-Zip :

sudo apt install p7zip-full

Puis pour extraire l’archive :

7z e Armbian_20.08.1_Odroidxu4_buster_legacy_4.14.195.img.xz

On récupère alors un fichier .img qu’il va falloir flasher sur la carte microSD avec Balena Etcher, dont l’utilisation est vraiment simplissime :

Voilà, tout est prêt pour le premier démarrage : insérer la carte microSD dans l’Odroid, assurez-vous d’avoir bien raccordé le boîtier au réseau (c’est requis pour l’installation), puis brancher l’alimentation. Les trois LEDs doivent s’allumer (une rouge, une verte et une bleue qui doit se mettre à clignoter quand le réseau est activé).

Le temps de se faire un café, et l’on va pouvoir se connecter en SSH sur la machine. Pour trouver l’adresse IP, vous pouvez aller sur votre Box et regarder les adresses allouées (DHCP). Un nouveau client a du apparaître. Sinon, sous Linux, on peut faire un nmap tout simple (à adapter à votre réseau) :

pascal$ sudo nmap -sn 192.168.1.0/24
...
Nmap scan report for 192.168.1.30
Host is up (0.00088s latency).
MAC Address: 00:1E:06:37:0D:45 (Wibrain)
...

Pour info, Wibrain est le nom de la boîte qui est devenue ensuite Hardkernel qui fabrique les Odroid… Voilà, j’ai mon adresse, et je vais même aller dans l’interface de la Box pour lui assigner cette adresse, afin qu’elle ne change pas, c’est plus simple comme ça (Baux DHCP statiques). Puis on se connecte en SSH sur le serveur avec le compte admin (le mot de passe par défaut est 1234) :

ssh admin@192.168.1.30

La première chose demandée est de changer le mot de passe, normal. On crée ensuite un autre compte (avec la permission sudo) à utiliser de préférence à root. Ensuite, il s’agit de mettre le système à jour, suivi d’un redémarrage :

sudo apt update
sudo apt upgrade
reboot

On attend le redémarrage, puis on se reconnecte (avec le nouveau mot de passe. J’en profite pour fignoler et changer le nom de la machine puisque par défaut c’est “odroidxu4” :

sudo hostnamectl set-hostname odroidhc2

Puis on lance l’installation d’openmediavault proprement dit, à l’aide d’un script qui va tout configurer :

wget -O - https://github.com/OpenMediaVault-Plugin-Developers/installScript/raw/master/install | sudo bash

J’ai du taper la touche “Entrée” pour que l’on me demande mon mot de passe, sinon il ne se passait rien ! L’installation peut prendre jusqu’à 30 minutes selon la doc… Avec le HC2, ça a pris à peine une dizaine de minutes. Le système va redémarrer tout seul à la fin de l’installation.

Toujours bon à savoir, la doc précise que Network Manager a été retiré des machines SBC qui tournent OVM pour la raison suivante : incompatibilité avec Portainer et Docker (Portainer facilite l’utilisation de Docker).

Et on passe enfin en mode graphique : dans votre navigateur préféré, taper l’adresse de la machine, et identifiez vous avec le compte “admin” et le mot de passe “openmediavault” :

L’interface GUI d’Openmediavault

Il va maintenant falloir suivre la doc d’installation d’OVM 5 (Getting started with Openmediavault 5) que l’on va également télécharger en local. Puis on l’ouvre en allant directement au chapitre “Initial Configuration”.

On va suivre la documentation pour régler certains paramètres : entre autres changer le mot de passe, et plus globalement passer en revue les sections qui nous intéressent dans le menu de gauche. Si l’anglais de la doc vous rebute, il y a des vidéos qui expliquent tout ça dont certaines en français, comme celle-ci par exemple.

On va en fait régler la config de base, monter le disque, etc… À noter dans “Paramètres généraux”, la Déconnexion automatique est réglée à 5mn, c’est pas mal de la passer à 1 jour, sinon c’est plutôt gênant (enfin, c’est selon vos préoccupations de sécurité !). En profiter pour changer le mot de passe par défaut dans l’onglet d’à côté.

Côté Plugins, j’installe openmediavault-resetperms 5.0, qui est bien pratique pour visualiser quels plugins utilisent quels dossiers partagés (vu dans une vidéo).

Dans “Disques”, on sélectionne notre HD et on l’efface. Puis dans “Système de fichiers” on crée et on formate le disque avec un label DATA (par exemple). Puis on le monte. Enfin, on va dans “Dossiers partagés” et on partage ce disque en donnant les droits de Lecture/Écriture à tout le monde (avec le nom OMV-DATA par exemple). Etc… À la fin, j’ai ceci :

J’ai pour ma part opté pour un partage NFS sur tout le disque DATA (soit tout le HD SATA, la carte microSD étant réservée au système), plus adapté à mon PC Ubuntu que SMB. Dans la partie NFS, je l’active, puis crée un partage en indiquant l’adresse IP de mon PC, et en accordant les droits Lecture/Écriture :

Voilà, je peux monter ce partage à partir de mon PC Ubuntu. À noter qu’à partir de Nautilus, le partage était bien vu, mais l’accès refusé :

Erreur de Nautilus, c’était trop beau pour être vrai ! 😉

Heureusement que le mount via fstab fonctionne parfaitement… bon , disons qu’il vaut ça que l’inverse !

La commande showmount affiche les partages disponibles sur le serveur OMV. Puis j’affiche la ligne ajoutée dans le fichier /etc/fstab.

Ce premier partage me servira à copier les fichiers facilement à partir de mon desktop Ubuntu sur le NAS OMV.

À ce stade, je remarque que l’interface d’OMV est une interface d’admin pure et dure, à aucun endroit je ne peux créer un fichier de test, histoire de tester mon partage NFS. Il me faut soit le faire à partir du client Ubuntu, soit connecté en SSH sur l’Odroid-hc2, en allant dans le répertoire /exports/OMV-DATA.

J’apprends aussi (à mes dépends) que OMV fonctionne avec une base de données et qu’il vaut mieux éviter de faire des changements en se connectant directement sur la machine hôte, par exemple pour effacer un répertoire partagé. C’est ce que j’ai fait, et là, le répertoire était toujours affiché dans OMV, impossible de l’effacer. J’ai fini par tout réinstaller !

Voilà, ce sera tout pour cette première étape. La suivante, ce sera d’installer PLEX server, et pour cela utiliser Docker. C’est bien, j’ai déjà entendu parlé de Docker sans jamais l’utiliser. Ce sera l’occasion de rentrer dans ce monde de “containers” (conteneurs logiciels en français) qui permettent entre autres de simplifier l’installation.

Ce sera pour le prochain épisode.

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *