<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>QNAP on Zwindler's Reflection</title><link>https://blog.zwindler.fr/tags/qnap/</link><description>Recent content in QNAP on Zwindler's Reflection</description><generator>Hugo -- gohugo.io</generator><language>fr</language><copyright>Licensed under CC BY-SA 4.0</copyright><lastBuildDate>Fri, 10 May 2024 18:00:00 +0200</lastBuildDate><atom:link href="https://blog.zwindler.fr/tags/qnap/index.xml" rel="self" type="application/rss+xml"/><item><title>Installer plex sur TrueNAS (SCALE)</title><link>https://blog.zwindler.fr/2024/05/10/installer-plex-sur-truenas-scale/</link><pubDate>Fri, 10 May 2024 18:00:00 +0200</pubDate><guid>https://blog.zwindler.fr/2024/05/10/installer-plex-sur-truenas-scale/</guid><description>&lt;img src="https://blog.zwindler.fr/2024/05/truenas-plex-2.webp" alt="Featured image of post Installer plex sur TrueNAS (SCALE)" /&gt;&lt;p&gt;Cet article fait partie d’une série dans laquelle je parle de mon nouveau NAS que j’ai construit moi-même :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a class="link" href="https://blog.zwindler.fr/2024/05/03/mon-nas-en-2024-jonsbo-n100-part1/" &gt;Mon NAS en 2024 - Jonsbo N2 × Intel N100 - hardware&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="link" href="https://blog.zwindler.fr/2024/05/19/mon-nas-en-2024-jonsbo-n100-part2/" &gt;Mon NAS en 2024 - Jonsbo N2 × Intel N100 - software&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="link" href="https://blog.zwindler.fr/2024/07/04/mon-nas-en-2024-jonsbo-n100-part3/" &gt;Mon NAS en 2024 - Jonsbo N2 × Intel N100 - stress tests et conclusion&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="link" href="https://blog.zwindler.fr/2024/05/10/installer-plex-sur-truenas-scale/" &gt;Bonus - Installer plex sur TrueNAS (SCALE)&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="plex-sur-mon-nas"&gt;Plex sur mon NAS
&lt;/h2&gt;&lt;p&gt;Un des prérequis quand je construis / achète un NAS, c&amp;rsquo;est la possibilité d&amp;rsquo;installer dessus Plex Media Server.&lt;/p&gt;
&lt;p&gt;D&amp;rsquo;expérience, même s&amp;rsquo;il est possible d&amp;rsquo;avoir une VM sur un hyperviseur à côté qui gère la médiathèque &amp;ldquo;à côté&amp;rdquo; du NAS, ou même de déléguer ce rôle &amp;ldquo;serveur plex&amp;rdquo; à la box de l&amp;rsquo;opérateur ou même notre smartTV, c&amp;rsquo;est souvent plus pénible qu&amp;rsquo;autre chose :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;je n&amp;rsquo;ai pas toujours un hyperviseur allumé à la maison et monté la médiathèque sur Internet est hors de question&lt;/li&gt;
&lt;li&gt;le volume partagé qui héberge les médias entre le NAS et la VM peut sauter, et c&amp;rsquo;est pénible à debug / corriger quand ça arrive&lt;/li&gt;
&lt;li&gt;les box / smartTV sont souvent trop limitées en hardware (espace disque pour les apps, CPU rachitique, RAM insuffisante&amp;hellip;)&lt;/li&gt;
&lt;li&gt;je change de box opérateur plus souvent que de NAS&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Note : je suis certain qu&amp;rsquo;on ne sera pas d&amp;rsquo;accord avec moi sur certains de ces points, et c&amp;rsquo;est OK. Moi, je trouve que c&amp;rsquo;est mieux comme ça, mais vous faites bien comme vous voulez ;-P.&lt;/p&gt;
&lt;p&gt;J&amp;rsquo;ai donc envie d&amp;rsquo;avoir Plex sur mon NAS et de ne pas trop m&amp;rsquo;embêter pour la gestion au quotidien.&lt;/p&gt;
&lt;h2 id="les-apps-dans-truenas"&gt;Les &amp;ldquo;apps&amp;rdquo; dans TrueNAS
&lt;/h2&gt;&lt;p&gt;Et ça tombe plutôt bien, car nos amis de chez TrueNAS maintiennent à jour une application Plex pour TrueNAS. Sauf que sur le papier, elle est pas hyper simple à installer, d&amp;rsquo;où cet article pour vous guider ;-).&lt;/p&gt;
&lt;p&gt;Tout cet article part du principe que vous utilisez TrueNAS SCALE et pas TrueNAS Core.&lt;/p&gt;
&lt;p&gt;Si vous ne connaissez pas la différence, le mieux est que vous alliez voir par vous-même &lt;a class="link" href="https://www.truenas.com/compare/" target="_blank" rel="noopener"
&gt;la documentation officielle - compare TrueNAS software&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;TL;DR TrueNAS Core, c&amp;rsquo;est la version historique basée sur FreeBSD (qui s&amp;rsquo;appelait d&amp;rsquo;ailleurs FreeNAS, initialement). Cependant, depuis quelques années, iXsystems, l&amp;rsquo;entreprise qui développe TrueNAS, met à disposition une version basée sur Debian (donc GNU/Linux).&lt;/p&gt;
&lt;p&gt;Pour des raisons que j&amp;rsquo;expliciterai dans l&amp;rsquo;article sur le choix du software (oui je viens donc de vous spoiler l&amp;rsquo;article suivant), j&amp;rsquo;ai TrueNAS SCALE et pas Core.&lt;/p&gt;
&lt;p&gt;Pour faire tourner les &amp;ldquo;apps&amp;rdquo;, TrueNAS s&amp;rsquo;est appuyé sur un standard du marché : Kubernetes. Et oui, n&amp;rsquo;en déplaise à ses détracteurs, Kubernetes &lt;strong&gt;est&lt;/strong&gt; devenu un standard du marché. Ca ne dit pas si c&amp;rsquo;est une bonne chose (on peut juger le précédent standard, aka VMware, à l&amp;rsquo;aune de l&amp;rsquo;actualité, par exemple). Mais c&amp;rsquo;est juste un fait.&lt;/p&gt;
&lt;h2 id="activer-les-apps"&gt;Activer les apps
&lt;/h2&gt;&lt;p&gt;Par défaut, TrueNAS n&amp;rsquo;active pas les &amp;ldquo;apps&amp;rdquo;. Ca va être à nous de le faire. En soit, ce n&amp;rsquo;est pas forcément un mal : si vous n&amp;rsquo;en avez pas besoin aucune raison de consommer des ressources pour rien.&lt;/p&gt;
&lt;p&gt;Et quand on parle de consommation de ressources et de Kubernetes je vois déjà les gens dans le fond qui font les gros yeux. Rassurez-vous (pas sûr que ça vous rassure, mais moi oui), les équipes d&amp;rsquo;iXsystems ont eu la sagesse de choisir &lt;a class="link" href="https://blog.zwindler.fr/recherche/?keyword=k3s" target="_blank" rel="noopener"
&gt;k3s&lt;/a&gt; et non un kubernetes vanilla pour héberger Kubernetes sur notre NAS. Les ressources consommées par le control plane seront donc minimales (quelques centaines de Mo au max).&lt;/p&gt;
&lt;p&gt;On va donc dans l&amp;rsquo;onglet &amp;ldquo;Apps&amp;rdquo; et on active k3s en l&amp;rsquo;installant simplement sur un de nos pools. Dans mon cas, j&amp;rsquo;en ai deux. Un avec mes disques durs classiques, et un avec un (unique) SSD.&lt;/p&gt;
&lt;p&gt;Initialement j&amp;rsquo;avais installé le k3s sur le pool de HDDs, histoire de mutualiser le stockage et de maximiser la disponibilité (j&amp;rsquo;ai un RAID-Z1). Cependant, le k3s de TrueNAS a tendance à écrire pas mal sur les disques, qui se retrouvaient à gratouiller sous mon bureau pendant une demie seconde toutes les 5 secondes environ. Très énervant.&lt;/p&gt;
&lt;p&gt;J&amp;rsquo;ai donc recréé un pool spécial pour les apps sur un SSD que j&amp;rsquo;avais en rab.&lt;/p&gt;
&lt;p&gt;On clique sur &lt;strong&gt;Settings&lt;/strong&gt; en haut à droite, puis &lt;strong&gt;Choose Pool&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2024/05/truenas-plex-1.avif"
loading="lazy"
&gt;&lt;/p&gt;
&lt;h2 id="installer-plex-media-server-via-les-apps"&gt;Installer plex media server via les apps
&lt;/h2&gt;&lt;p&gt;Au bout de quelques secondes / minutes, k3s est installé et on peut commencer à chercher une app parmi le catalogue (&amp;gt;100). Ici on recherche plex et on clique sur &lt;strong&gt;Install&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2024/05/truenas-plex-2.avif"
loading="lazy"
&gt;&lt;/p&gt;
&lt;p&gt;A partir de là, une fenêtre avec plein de paramètres va apparaitre. Mais avant d&amp;rsquo;aller plus loin, on va aller sur la page &lt;a class="link" href="https://www.plex.tv/claim/" target="_blank" rel="noopener"
&gt;www.plex.tv/claim/&lt;/a&gt;. Une fois loggué sur votre compte, la page va vous générer un token temporaire, qui va permettre de relier directement le serveur une fois qu&amp;rsquo;il aura démarré sur votre NAS avec votre compte. Pratique !&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2024/05/truenas-plex-3.avif"
loading="lazy"
&gt;&lt;/p&gt;
&lt;p&gt;Dans la looongue page de configuration, on a que quelques paramètres à changer. D&amp;rsquo;abord, il faut renseigner le token qu&amp;rsquo;on vient de générer dans la section &lt;strong&gt;Plex Configuration&lt;/strong&gt;. Si vous avez le Plex pass, vous pouvez aussi changer &lt;strong&gt;Image&lt;/strong&gt; :&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2024/05/truenas-plex-4.avif"
loading="lazy"
&gt;&lt;/p&gt;
&lt;p&gt;Ensuite, dans la partie &lt;strong&gt;Storage configuration&lt;/strong&gt;, il va falloir indiquer le chemin vers le pool qui contient les médias. Moi c&amp;rsquo;est /mnt/rpool/tank/Vidéos. rpool est le nom de mon pool RAID-Z1, tank est mon volume principal.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2024/05/truenas-plex-5.avif"
loading="lazy"
&gt;&lt;/p&gt;
&lt;p&gt;Attention : assurez-vous que l&amp;rsquo;utilisateur unix (local) &amp;ldquo;apps&amp;rdquo; a bien accès en lecture/exécution sur toute l&amp;rsquo;arborescence, sinon vous ne verrez pas le dossier quand Plex sera lancé (très frustrant, il n&amp;rsquo;y a aucun message d&amp;rsquo;erreur, juste &amp;ldquo;rien&amp;rdquo;).&lt;/p&gt;
&lt;p&gt;De manière optionnelle, vous pouvez tuner les &amp;ldquo;limits&amp;rdquo; (au sens docker/kubernetes du terme) de votre app. Par défaut, la chart plex de TrueNAS propose 4 CPUs et 8 Go de RAM, ce qui est beaucoup. Mon plex ne consomme que 100 Mo au repos. J&amp;rsquo;ai baissé à 2 CPUs (avec un risque de throttling, mais là on rentre dans des notions un peu tricky de Kubernetes que je préfère esquiver aujourd&amp;rsquo;hui dans cet article) et 4 Gio de RAM (j&amp;rsquo;en ai 16 mais je veux garder le plus de cache possible).&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2024/05/truenas-plex-6.avif"
loading="lazy"
&gt;&lt;/p&gt;
&lt;p&gt;Une fois terminé, l&amp;rsquo;application se déploie, puis affiche Running. On a alors un cartouche &lt;strong&gt;Application Info&lt;/strong&gt; dans &lt;strong&gt;Details&lt;/strong&gt; qui devrait afficher un bouton &lt;strong&gt;Web Portal&lt;/strong&gt; qui devrait nous rediriger sur l&amp;rsquo;IP de notre NAS sur le port 32400 (celui habituel de plex).&lt;/p&gt;
&lt;p&gt;On peut donc se laisser guider par le wizard de configuration de Plex Media Server, lui donner un nom mignon et aller chercher nos médiathèques dans /data. Normalement, le dossier que vous avez donné lors de l&amp;rsquo;étape &lt;strong&gt;Storage configuration&lt;/strong&gt; devrait apparaitre.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2024/05/truenas-plex-7.avif"
loading="lazy"
&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2024/05/truenas-plex-8.avif"
loading="lazy"
&gt;&lt;/p&gt;
&lt;h2 id="bonus"&gt;Bonus
&lt;/h2&gt;&lt;p&gt;Pour une raison que j&amp;rsquo;ignore (peut être parce que c&amp;rsquo;est un container avec un adressage à part), j&amp;rsquo;ai dû explicitement indiquer le port public (32400 sur ma box, qui redirige sur l&amp;rsquo;IP de mon NAS et le port 32400) pour que le Control à distance fonctionne et que l&amp;rsquo;accès direct (sur le réseau local) fonctionne correctement.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2024/05/truenas-plex-9.avif"
loading="lazy"
&gt;&lt;/p&gt;</description></item><item><title>Mon NAS en 2024 - Jonsbo N2 × Intel N100 - hardware</title><link>https://blog.zwindler.fr/2024/05/03/mon-nas-en-2024-jonsbo-n100-part1/</link><pubDate>Fri, 03 May 2024 12:00:00 +0200</pubDate><guid>https://blog.zwindler.fr/2024/05/03/mon-nas-en-2024-jonsbo-n100-part1/</guid><description>&lt;img src="https://blog.zwindler.fr/2024/05/nas2024.webp" alt="Featured image of post Mon NAS en 2024 - Jonsbo N2 × Intel N100 - hardware" /&gt;&lt;p&gt;Cet article fait partie d’une série dans laquelle je parle de mon nouveau NAS que j’ai construit moi-même :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a class="link" href="https://blog.zwindler.fr/2024/05/03/mon-nas-en-2024-jonsbo-n100-part1/" &gt;Mon NAS en 2024 - Jonsbo N2 × Intel N100 - hardware&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="link" href="https://blog.zwindler.fr/2024/05/19/mon-nas-en-2024-jonsbo-n100-part2/" &gt;Mon NAS en 2024 - Jonsbo N2 × Intel N100 - software&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="link" href="https://blog.zwindler.fr/2024/07/04/mon-nas-en-2024-jonsbo-n100-part3/" &gt;Mon NAS en 2024 - Jonsbo N2 × Intel N100 - stress tests et conclusion&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="link" href="https://blog.zwindler.fr/2024/05/10/installer-plex-sur-truenas-scale/" &gt;Bonus - Installer plex sur TrueNAS (SCALE)&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="mon-nas-quatrième-itération-"&gt;Mon NAS, quatrième itération ?
&lt;/h2&gt;&lt;p&gt;Depuis 2011, je change de NAS régulièrement.&lt;/p&gt;
&lt;p&gt;2011, c&amp;rsquo;était de la récup&amp;rsquo; (&lt;a class="link" href="https://blog.zwindler.fr/2011/06/29/nasmediacenter-do-it-yourself-or-not/" target="_blank" rel="noopener"
&gt;un vieux Qbic Soltek, une carte mère avec un Atom fanless&lt;/a&gt;).&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2011/06/dscn1178.avif"
loading="lazy"
alt="NAS 2011 avec boîtier Qbic Soltek et carte mère Atom fanless"
&gt;&lt;/p&gt;
&lt;p&gt;2014, c&amp;rsquo;était encore plus bidouille, car j&amp;rsquo;avais juste posé une carte mère dans mon Red Helmer.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2014/03/img_20140309_153018.avif"
loading="lazy"
alt="NAS 2014 avec carte mère posée dans un meuble inspiré de Red Helmer"
&gt;&lt;/p&gt;
&lt;p&gt;2018, j&amp;rsquo;en avais marre de gérer moi-même l&amp;rsquo;OS, les problèmes d&amp;rsquo;upgrades de l&amp;rsquo;OS, etc. J&amp;rsquo;étais donc passé sur un NAS du commerce (&lt;a class="link" href="https://blog.zwindler.fr/2018/01/23/stockage-pour-un-admin-geek-qnap-ts431p2-ou-synology-ds418j/" target="_blank" rel="noopener"
&gt;un QNAP&lt;/a&gt;).&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2018/01/qnap22.avif"
loading="lazy"
alt="NAS QNAP TS-431P2 acheté en 2018"
&gt;&lt;/p&gt;
&lt;p&gt;Après 6 ans de bons et pas très loyaux services (&lt;a class="link" href="https://blog.zwindler.fr/2022/06/13/qnap-debranche-lxc-workaround/" target="_blank" rel="noopener"
&gt;QNAP désactive des features au fur et à mesure&lt;/a&gt;), j&amp;rsquo;ai décidé de m&amp;rsquo;en reconstruire un nouveau, moi-même.&lt;/p&gt;
&lt;h3 id="pourquoi-construire-son-propre-nas-en-2024-"&gt;Pourquoi construire son propre NAS en 2024 ?
&lt;/h3&gt;&lt;p&gt;Construire son propre NAS présente plusieurs avantages par rapport aux solutions commerciales :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Contrôle total&lt;/strong&gt; sur le matériel et le logiciel&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Rapport performance/prix&lt;/strong&gt; souvent meilleur&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Évolutivité&lt;/strong&gt; : possibilité d&amp;rsquo;upgrader facilement&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Pas de vendor lock-in&lt;/strong&gt; : liberté de changer d&amp;rsquo;OS&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Apprentissage&lt;/strong&gt; : comprendre le fonctionnement interne&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Cependant, cela demande du temps, des connaissances techniques et implique de gérer soi-même la maintenance.&lt;/p&gt;
&lt;h2 id="les-critères-hardware"&gt;Les critères hardware
&lt;/h2&gt;&lt;p&gt;À force d&amp;rsquo;itérations, je commence à savoir ce que je veux / ne veux pas pour mon NAS. En voici la liste :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;quatre emplacements&lt;/li&gt;
&lt;li&gt;un ou plusieurs ports ethernet 2.5 Gbps&lt;/li&gt;
&lt;li&gt;un beau boitier, qui fasse un peu sérieux, relativement compact (pas une tour)&lt;/li&gt;
&lt;li&gt;pas de bruit, peu de chauffe&lt;/li&gt;
&lt;li&gt;une consommation électrique raisonnable&lt;/li&gt;
&lt;li&gt;possibilité de hotswap les disques&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Ces critères sont surtout hardware, mais j&amp;rsquo;en rajoute qui est plutôt software, tout en restant lié au hard :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;la possibilité de faire des machines virtuelles (si jamais j&amp;rsquo;en ai l&amp;rsquo;envie) et des containers&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="le-choix-des-composants"&gt;Le choix des composants
&lt;/h2&gt;&lt;p&gt;C&amp;rsquo;est l&amp;rsquo;étape la plus compliquée quand on fait un NAS DIY.&lt;/p&gt;
&lt;p&gt;Le problème principal est de trouver un boitier qui convient. Ça fait des années que je cherche (même en 2011 / 2014) et souvent les boitiers sont rares, chers, volumineux et/ou moches. Le côté hotswap est fréquemment absent.&lt;/p&gt;
&lt;p&gt;Heureusement, j&amp;rsquo;ai trouvé un boitier qui coche toutes les cases, même s&amp;rsquo;il est difficile à trouver en France : &lt;a class="link" href="https://www.jonsbo.com/en/products/N2Black.html" target="_blank" rel="noopener"
&gt;le Jonsbo N2&lt;/a&gt;. J&amp;rsquo;avais entendu parler de cette marque sur Next Inpact avec le Jonsbo N1, plus compact, mais qui n&amp;rsquo;avait pas de hotswap.&lt;/p&gt;
&lt;p&gt;Le Jonsbo N2 corrige ce défaut. C&amp;rsquo;est grosso modo un cube de 22 cm de côté, il est plutôt beau même si un peu gros à mon goût.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2024/05/jonsbon2.avif"
loading="lazy"
alt="Boîtier Jonsbo N2 vue de face avec ses 4 emplacements de disques"
&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2024/05/jonsbon2-2.avif"
loading="lazy"
alt="Boîtier Jonsbo N2 vue d’angle montrant sa forme cubique"
&gt;&lt;/p&gt;
&lt;p&gt;Niveau compatibilité, on peut l&amp;rsquo;alimenter avec une PSU au format SFX et une carte mère au format Mini ITX. C&amp;rsquo;est relativement attendu, vu la compacité, mais ça nous rajoute tout un tas de problématiques complémentaires.&lt;/p&gt;
&lt;h3 id="budget-et-coût-total-du-projet"&gt;Budget et coût total du projet
&lt;/h3&gt;&lt;p&gt;Avant de détailler chaque composant, voici un aperçu du budget total :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Boîtier Jonsbo N2&lt;/strong&gt; : ~120€&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Carte mère Intel N100 avec ports 2.5GbE et de nombreux SATA&lt;/strong&gt; : ~200€&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Alimentation SFX 300W&lt;/strong&gt; : ~80€&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;RAM DDR5 16Go&lt;/strong&gt; : ~60€&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;SSD NVMe 500Go&lt;/strong&gt; : ~40€&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Switch 2.5 Gbps + carte réseau&lt;/strong&gt; : ~80€&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Total&lt;/strong&gt; : environ 580€ (hors disques de stockage)&lt;/p&gt;
&lt;h2 id="alimentation-sfx"&gt;Alimentation SFX
&lt;/h2&gt;&lt;p&gt;D&amp;rsquo;abord, les alimentations SFX sont plus rares, plus chères et moins efficaces. Trouver un modèle peu puissant, économe, bon marché et semi-passif (pour le bruit) est impossible.&lt;/p&gt;
&lt;p&gt;Le mieux que j&amp;rsquo;ai trouvé est une alimentation &lt;a class="link" href="https://www.bequiet.com/fr/powersupply/sfx-power/763" target="_blank" rel="noopener"
&gt;Be Quiet SFX Power 3 de 300w&lt;/a&gt;. Elle n&amp;rsquo;est pas semi-passive (donc fait continuellement du bruit, même si c&amp;rsquo;est raisonnable) et seulement 80Plus Bronze (donc il y a des pertes significatives d&amp;rsquo;énergie). En alternative, j&amp;rsquo;aurais pu prendre (à vérifier, la taille n&amp;rsquo;est pas claire) les SFX-L de Be Quiet, qui ont l&amp;rsquo;avantage d&amp;rsquo;être 80 Plus Gold et modulaires.&lt;/p&gt;
&lt;h3 id="conseils-pour-choisir-son-alimentation-sfx"&gt;Conseils pour choisir son alimentation SFX
&lt;/h3&gt;&lt;p&gt;Pour un NAS, les critères importants sont :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Efficacité énergétique&lt;/strong&gt; (80 Plus Gold ou l&amp;rsquo;équivalent avec les &lt;a class="link" href="https://www.cybenetics.com/index.php?option=power-supplies" target="_blank" rel="noopener"
&gt;nouvelles normes cybenetics&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Niveau sonore&lt;/strong&gt; (ventilateur semi-passif idéal)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Puissance adaptée&lt;/strong&gt; (300W largement suffisant pour ce type de build)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Câbles modulaires&lt;/strong&gt; pour faciliter le câblage dans l&amp;rsquo;espace restreint du JONSBO&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="carte-mère-intel-n100"&gt;Carte mère Intel N100
&lt;/h2&gt;&lt;p&gt;Ensuite, les cartes mères mini-ITX ont souvent peu de ports SATA, ce qui ne colle pas avec mon besoin de quatre disques. À partir de là, il y a 3 solutions, aucune n&amp;rsquo;étant vraiment &amp;ldquo;ouf&amp;rdquo;.&lt;/p&gt;
&lt;p&gt;La plupart des cartes Mini ITX ont 2 (voire 1) ports SATA, mais certaines ont aussi des ports M.2 pour NVMe et/ou un port PCIe :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Il existe des adaptateurs 1 NVMe =&amp;gt; 6 SATA&lt;/li&gt;
&lt;li&gt;Il existe des cartes d&amp;rsquo;extension PCIe =&amp;gt; SATA&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2024/05/nvme6sata.avif"
loading="lazy"
alt="Adaptateur NVMe vers 6 ports SATA pour étendre les capacités de stockage"
&gt;&lt;/p&gt;
&lt;p&gt;Mais je n&amp;rsquo;ai absolument pas confiance dans la qualité de ces machins, donc j&amp;rsquo;ai abandonné l&amp;rsquo;idée. D&amp;rsquo;autant que j&amp;rsquo;aurais peut-être besoin du port PCI-e pour ajouter une carte d&amp;rsquo;extension pour avoir le 2.5 Gbps.&lt;/p&gt;
&lt;p&gt;J&amp;rsquo;avais trouvé une carte avec quatre ports SATA et le support du socket AM4 (exemple &lt;a class="link" href="https://www.ldlc.com/fiche/PB00348184.html" target="_blank" rel="noopener"
&gt;ASRock B550M-ITX/AC&lt;/a&gt;). Si je rajoute un Ryzen 5 5600G, je coche la case &amp;ldquo;possibilité de faire des VMs&amp;rdquo;, mais c&amp;rsquo;est relativement cher (~260€ au total) et surtout le CPU consomme beaucoup d&amp;rsquo;électricité (TDP 22w).&lt;/p&gt;
&lt;p&gt;Dernière solution, il existe aussi quelques OVNI &lt;a class="link" href="https://www.asrockrack.com/general/productdetail.asp?Model=X570D4I-2T#Specifications" target="_blank" rel="noopener"
&gt;comme la carte ASRock Rack X570D4I-2T avec des ports OCuLink&lt;/a&gt; permettant de gérer 4 SATA chacun, mais c&amp;rsquo;est quasiment impossible à trouver et très cher.&lt;/p&gt;
&lt;p&gt;En fouillant AliExpress, je suis assez vite tombé sur ce genre de modèles de cartes &amp;ldquo;noname&amp;rdquo; :&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2024/05/n100-1.avif"
loading="lazy"
alt="Carte mère Intel N100 avec 4 ports Ethernet 2.5 Gbps - vue 1"
&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2024/05/n100-2.avif"
loading="lazy"
alt="Carte mère Intel N100 avec 6 ports SATA - vue 2"
&gt;&lt;/p&gt;
&lt;p&gt;Il existe plein de modèles et de variations du même genre de cartes. Grosso modo, c&amp;rsquo;est un chipset Intel compatible Atom de différentes générations avec 4 ports Ethernet 2.5 Gbps, 6 SATA, parfois fanless, parfois non.&lt;/p&gt;
&lt;p&gt;Sur le papier, c&amp;rsquo;est pile ce que je cherche. J&amp;rsquo;ai une carte mère et son N100 (seulement 6w de TDP) + ventirad qui coche tous mes critères. Il faut juste ne pas trop avoir peur du côté &amp;ldquo;carte mère noname&amp;rdquo;.&lt;/p&gt;
&lt;h3 id="pourquoi-choisir-lintel-n100-"&gt;Pourquoi choisir l&amp;rsquo;Intel N100 ?
&lt;/h3&gt;&lt;p&gt;Le processeur Intel N100 présente de nombreux avantages pour un NAS :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Très faible consommation&lt;/strong&gt; : TDP de seulement 6W&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Performance suffisante&lt;/strong&gt; : 4 cœurs jusqu&amp;rsquo;à 3.4 GHz&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Support hardware&lt;/strong&gt; : décodage vidéo H.264/H.265, VT-x et VT-d pour la virtualisation&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Connectivité moderne&lt;/strong&gt; : DDR5, PCIe 4.0&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Prix abordable&lt;/strong&gt; : rapport performance/prix excellent&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;J&amp;rsquo;ai pris le risque, j&amp;rsquo;ai choisi cette carte, que j&amp;rsquo;ai réussi à avoir autour de 200€ (ici 250 sur la capture d&amp;rsquo;écran).&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2024/05/n100-3.avif"
loading="lazy"
alt="Carte mère Intel N100 choisie pour le projet NAS"
&gt;&lt;/p&gt;
&lt;h2 id="composants-complémentaires"&gt;Composants complémentaires
&lt;/h2&gt;&lt;p&gt;Pour installer l&amp;rsquo;OS de mon NAS, j&amp;rsquo;ai ajouté un SSD NVMe de 500 Go (le moins cher de marque que j&amp;rsquo;ai trouvé).&lt;/p&gt;
&lt;p&gt;J&amp;rsquo;ai aussi ajouté 16 Go de RAM DDR5, dans l&amp;rsquo;idée que j&amp;rsquo;aurais peut-être besoin de ça pour des containers / VMs.&lt;/p&gt;
&lt;p&gt;Comme je n&amp;rsquo;ai pas encore de réseau en 2.5 Gbps chez moi, j&amp;rsquo;ai donc dû faire l&amp;rsquo;upgrade. J&amp;rsquo;ai choisi un switch &amp;ldquo;noname&amp;rdquo; sur AliExpress (là encore), une carte PCIe pour mon PC perso.&lt;/p&gt;
&lt;p&gt;Pour les disques, j&amp;rsquo;ai fait l&amp;rsquo;erreur (on en reparlera) de récupérer des vieux disques Western Digital Red de 4 To que j&amp;rsquo;avais en stock&amp;hellip;&lt;/p&gt;
&lt;h3 id="liste-des-achats-complémentaires"&gt;Liste des achats complémentaires
&lt;/h3&gt;&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2024/05/achats1.avif"
loading="lazy"
alt="Récapitulatif des achats pour le projet NAS - partie 1"
&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2024/05/achats2.avif"
loading="lazy"
alt="Récapitulatif des achats pour le projet NAS - partie 2"
&gt;&lt;/p&gt;
&lt;h2 id="montage"&gt;Montage
&lt;/h2&gt;&lt;p&gt;Le boîtier est très beau, bien conçu, semble être de bonne qualité / bonne facture. La carte mère est en haut, l&amp;rsquo;alimentation se positionne sur le bas + côté et les disques de l&amp;rsquo;autre.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2024/05/jonsbo-vide.avif"
loading="lazy"
alt="Boîtier Jonsbo N2 ouvert montrant l’agencement interne"
&gt;&lt;/p&gt;
&lt;p&gt;Côté carte mère, elle est livrée avec une grosse surface de contact en cuivre sur laquelle j&amp;rsquo;ai ajouté le ventirad low profile.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2024/05/mobo.avif"
loading="lazy"
alt="Carte mère Intel N100 installée avec sa surface de refroidissement en cuivre"
&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2024/05/ventirad.avif"
loading="lazy"
alt="Ventirad low profile installé sur le processeur Intel N100"
&gt;&lt;/p&gt;
&lt;p&gt;Pour être parfaitement honnête, je me demande si le ventilateur est réellement nécessaire. On en reparlera dans le prochain article.&lt;/p&gt;
&lt;h3 id="installation-du-système-de-refroidissement"&gt;Installation du système de refroidissement
&lt;/h3&gt;&lt;p&gt;Le système de refroidissement du NAS est conçu pour être silencieux tout en restant efficace :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;le N100 devrait être simple à refroidir du fait de son faible TDP&lt;/li&gt;
&lt;li&gt;la ventilation des disques est assurée par le ventilateur à l&amp;rsquo;arrière&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Pour pouvoir être hotswap, les disques durs sont connectés à un backplane, aéré par un ventilateur low profile (15 mm d&amp;rsquo;épaisseur) que j&amp;rsquo;ai remplacé par un 25mm (classique) car j&amp;rsquo;ai lu qu&amp;rsquo;il était bruyant. Le souci, c&amp;rsquo;est qu&amp;rsquo;il y a très peu d&amp;rsquo;espace, pas assez pour un 25mm, mais ça rentre au chausse-pied.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2024/05/hotswap.avif"
loading="lazy"
alt="Système hotswap avec connecteurs pour les disques durs"
&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2024/05/backplane.avif"
loading="lazy"
alt="Backplane du Jonsbo N2 avec ventilateur de refroidissement"
&gt;&lt;/p&gt;
&lt;p&gt;Note : il existe des plans d&amp;rsquo;impression 3D pour corriger ce problème, si nécessaire. Mais je n&amp;rsquo;en ai pas eu besoin.&lt;/p&gt;
&lt;h2 id="conclusion"&gt;Conclusion
&lt;/h2&gt;&lt;p&gt;Une fois le montage fini, je trouve ça plutôt clean :)&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2024/05/montage-fini.avif"
loading="lazy"
alt="NAS terminé - vue de face avec tous les composants installés"
&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2024/05/nas2024.avif"
loading="lazy"
alt="NAS Jonsbo N2 avec Intel N100 - résultat final 2024"
&gt;&lt;/p&gt;
&lt;h2 id="bilan-de-cette-première-partie"&gt;Bilan de cette première partie
&lt;/h2&gt;&lt;p&gt;Cette première étape du projet NAS 2024 s&amp;rsquo;achève sur un bilan globalement positif :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Boîtier Jonsbo N2&lt;/strong&gt; : excellent compromis design/fonctionnalité&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Intel N100&lt;/strong&gt; : performance/consommation remarquable&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Assemblage&lt;/strong&gt; : relativement simple malgré l&amp;rsquo;espace restreint&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Budget maîtrisé&lt;/strong&gt; : ~580€ pour une base solide&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Quelques points d&amp;rsquo;attention tout de même :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;la carte mère &amp;ldquo;noname&amp;rdquo; est un véritable pari&lt;/li&gt;
&lt;li&gt;la compacité pourrait rendre l&amp;rsquo;ensemble difficile à refroidir (en tout cas silencieusement)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Dans le prochain article, on parlera des différents tests de performance que j&amp;rsquo;ai réalisés et du choix du système d&amp;rsquo;exploitation.&lt;/p&gt;</description></item><item><title>QNAP débranche LXC sur les NAS ARM : comment contourner ?</title><link>https://blog.zwindler.fr/2022/06/13/qnap-debranche-lxc-workaround/</link><pubDate>Mon, 13 Jun 2022 08:00:00 +0200</pubDate><guid>https://blog.zwindler.fr/2022/06/13/qnap-debranche-lxc-workaround/</guid><description>&lt;img src="https://blog.zwindler.fr/2018/01/qnap22.webp" alt="Featured image of post QNAP débranche LXC sur les NAS ARM : comment contourner ?" /&gt;&lt;p&gt;Si vous le suivez sur Twitter ou Masto, vous m&amp;rsquo;avez très probablement lu râler contre la sortie &lt;del&gt;de QTS 5&lt;/del&gt; Container Station v2.4.0.2316, l&amp;rsquo;été dernier.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://preview.redd.it/6bouewrhnze71.png?width=1283&amp;amp;format=png&amp;amp;auto=webp&amp;amp;s=11aacee53bf931b47d1534cc1478b47aa7239701"
loading="lazy"
&gt;&lt;/p&gt;
&lt;p&gt;Ou plus particulièrement, contre une décision prise lors de ce passage : enlever LXC pour l&amp;rsquo;administration des containers, au profit de LXD. LXD étant juste une couche d&amp;rsquo;administration, LXC est toujours présent et fonctionnel, juste caché.&lt;/p&gt;
&lt;p&gt;Pourquoi je râle ?&lt;/p&gt;
&lt;p&gt;J&amp;rsquo;ai un &lt;a class="link" href="https://blog.zwindler.fr/2018/01/23/stockage-pour-un-admin-geek-qnap-ts431p2-ou-synology-ds418j" &gt;NAS QNAP TS431P2 depuis 2018 dont je suis pleinement satisfait&lt;/a&gt;, et qui m&amp;rsquo;a permis de passer moins de temps à administrer et ajouter des fonctionnalités à mon NAS ZFS maison, monté initialement en 2011 (merci &lt;em&gt;Dworak_of_sky&lt;/em&gt; pour les souvenirs).&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a class="link" href="https://blog.zwindler.fr/2011/06/29/nasmediacenter-do-it-yourself-or-not/" &gt;NAS/MediaCenter : Do It (the hardware part) Yourself!&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="link" href="https://blog.zwindler.fr/2011/08/04/nasmediacenter-do-it-the-software-part-yourself/" &gt;NAS/MediaCenter : Do It (the software part) Yourself!&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Sauf&lt;/strong&gt; que mon QNAP est un NAS milieu de gamme, fonctionnant avec &lt;em&gt;un processeur ARM&lt;/em&gt; et pas x86 ! Et ces charmantes personnes (grrrr) de chez QNAP &lt;strong&gt;n&amp;rsquo;ont pas porté LXD sur les NAS ARM&lt;/strong&gt; (segmentation artificielle de l&amp;rsquo;offre ? Flemme ?).&lt;/p&gt;
&lt;p&gt;Nous, propriétaires de NAS QNAP ARM, nous retrouvons donc sans solution puisque LXC est désactivé et LXD pas disponible.&lt;/p&gt;
&lt;p&gt;Une fonction hyper pratique pour héberger de petits services à bas coût (autant en performance qu&amp;rsquo;en prix) disparaît. C&amp;rsquo;était un réel différenciant pour ce modèle et je me sens vraiment trahi (ou alors c&amp;rsquo;est ma faute, car je n&amp;rsquo;aurais pas dû leur faire confiance ?).&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2022/06/trahison.avif"
loading="lazy"
&gt;&lt;/p&gt;
&lt;p&gt;Je ne suis pas près de recommander QNAP comme j&amp;rsquo;ai pu le faire par le passé. #PasContent&lt;/p&gt;
&lt;h2 id="nuance"&gt;Nuance
&lt;/h2&gt;&lt;p&gt;HEUREUSEMENT, les containers LXC ne se sont pas mis à ne plus marcher du jour au lendemain.&lt;/p&gt;
&lt;p&gt;Enfin, encore heureux ! Je n&amp;rsquo;ose imaginer les dégâts en prod !&lt;/p&gt;
&lt;p&gt;C&amp;rsquo;est d&amp;rsquo;autant plus vicelard que le message d&amp;rsquo;information pour expliquer qu&amp;rsquo;il n&amp;rsquo;y a plus LXC indique que c&amp;rsquo;est pas grave puisque vous avez LXD à la place. Aucune mention du fait qu&amp;rsquo;en fait, sous ARM, non&amp;hellip;&lt;/p&gt;
&lt;p&gt;Il est toujours possible (&lt;strong&gt;pour l&amp;rsquo;instant&lt;/strong&gt;) de démarrer, arrêter, utiliser et supprimer les containers existants. Mais il n&amp;rsquo;est plus possible d&amp;rsquo;en créer de nouveaux.&lt;/p&gt;
&lt;p&gt;Ça veut donc dire que tout est encore présent pour faire fonctionner la fonctionnalité, ce n&amp;rsquo;est &amp;ldquo;juste&amp;rdquo; plus disponible en UI.&lt;/p&gt;
&lt;h2 id="en-avoir-le-coeur-net"&gt;En avoir le coeur net
&lt;/h2&gt;&lt;p&gt;En farfouillant, je me suis aussi rendu compte qu&amp;rsquo;il était toujours possible d&amp;rsquo;&lt;strong&gt;exporter&lt;/strong&gt; des containers existants et d&amp;rsquo;&lt;strong&gt;importer&lt;/strong&gt; les exports.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2022/06/qnap_export.avif"
loading="lazy"
&gt;
&lt;img src="https://blog.zwindler.fr/2022/06/qnap_import.avif"
loading="lazy"
&gt;&lt;/p&gt;
&lt;p&gt;On peut donc contourner la limitation arbitraire de QNAP via des export / import. J&amp;rsquo;ai l&amp;rsquo;habitude de ce genre de bidouilles, &lt;a class="link" href="https://blog.zwindler.fr/2011/03/20/copier-une-vm-windows-xp-sous-esxi-sans-vcenter/" target="_blank" rel="noopener"
&gt;puisque je faisais déjà ça il y a plus de 10 ans avec les hyperviseurs VMware en licence gratuite&lt;/a&gt;&amp;hellip;&lt;/p&gt;
&lt;p&gt;A l&amp;rsquo;usage, ça fonctionne mais c&amp;rsquo;est pas satisfaisant. D&amp;rsquo;abord parce que si on a pas, ou plus, de containers sur le NAS, on ne peut pas le faire trivialement.&lt;/p&gt;
&lt;p&gt;Ensuite, parce que le processus et long (l&amp;rsquo;export et l&amp;rsquo;import) et pénible (plusieurs étapes).&lt;/p&gt;
&lt;p&gt;Enfin, parce que les images LXC mises à disposition par QNAP étaient antédiluviennes !&lt;/p&gt;
&lt;p&gt;Ubuntu 14.04 !!! Sauf si vous avez pris le temps de faire le processus d&amp;rsquo;upgrade complet de 14.04 à 20.04 ou 22.04 (et vous devriez), il est probable que vous n&amp;rsquo;ayez pas envie de repartir de ces vieux machins.&lt;/p&gt;
&lt;h2 id="faites-mieux"&gt;&amp;ldquo;Faites mieux&amp;rdquo;
&lt;/h2&gt;&lt;p&gt;Si vous êtes admin, vous avez probablement déjà activé SSH pour vous connecter directement à l&amp;rsquo;OS de votre NAS. (&lt;a class="link" href="https://www.qnap.com/fr-fr/how-to/knowledge-base/article/how-to-access-qnap-nas-by-ssh" target="_blank" rel="noopener"
&gt;Et sinon vous pouvez aller ici pour l&amp;rsquo;activer&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;Une fois connecté, on peut sortir du menu TUI et bidouiller l&amp;rsquo;OS comme on en a envie.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2022/06/qnap_ssh_admin.avif"
loading="lazy"
&gt;&lt;/p&gt;
&lt;pre tabindex="0"&gt;&lt;code&gt;[~] # id
uid=0(admin) gid=0(administrators)
&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Je n&amp;rsquo;ai pas fait beaucoup d&amp;rsquo;administration LXC/LXD directement, car j&amp;rsquo;avais toujours une interface à ma disposition pour me &amp;ldquo;cacher&amp;rdquo; la façon dont ça fonctionne vraiment, que ce soit dans le cas de QNAP ou de &lt;a class="link" href="https://blog.zwindler.fr/recherche/?keyword=lxc" target="_blank" rel="noopener"
&gt;Proxmox VE (que j&amp;rsquo;utilise beaucoup pour ça)&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;En lisant rapidement &lt;a class="link" href="https://doc.ubuntu-fr.org/lxc" target="_blank" rel="noopener"
&gt;la doc sur ubuntu-fr&lt;/a&gt;, j&amp;rsquo;ai compris qu&amp;rsquo;il existait en fait chez Canonical un genre de dépôt d&amp;rsquo;images officielles de pleins d&amp;rsquo;OS, notamment compatible &lt;strong&gt;armhf&lt;/strong&gt;.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a class="link" href="https://images.lxd.canonical.com/" target="_blank" rel="noopener"
&gt;images.lxd.canonical.com/&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="link" href="http://images.linuxcontainers.org//meta/1.0/index-system" target="_blank" rel="noopener"
&gt;images.linuxcontainers.org//meta/1.0/index-system&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Avec LXC, on peut accéder directement à ces images en ligne de commande avec &lt;code&gt;lxc-download&lt;/code&gt;. Pas de bol, la commande n&amp;rsquo;est pas dispo sur QTS :&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-console" data-lang="console"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="go"&gt;[~] # lxc-download
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="go"&gt;-sh: lxc-download: command not found
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;(En fait elle n&amp;rsquo;est juste pas dans le PATH, mais je ne le savais pas à ce moment-là)&lt;/p&gt;
&lt;p&gt;Sauf qu&amp;rsquo;on peut aussi appeler directement la commande pour créer des containers &lt;code&gt;lxc-create&lt;/code&gt; avec un flag &amp;ldquo;download&amp;rdquo;. Et ça tombe bien parce que &lt;code&gt;lxc-create&lt;/code&gt; est disponible. Mais la joie sera de courte durée&amp;hellip;&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-console" data-lang="console"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="go"&gt;lxc-create -t download -n container_jammy -- -d ubuntu -r jammy -a armhf
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="err"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="go"&gt;/usr/local/container-station/lxc/share/lxc/templates/lxc-download: line 237: getopt: command not found
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h2 id="hack"&gt;Hack&amp;hellip;
&lt;/h2&gt;&lt;p&gt;Note : si vous trouviez que ce qu&amp;rsquo;on était en train de faire n&amp;rsquo;était déjà pas très propre, je tiens à vous prévenir, la suite est vraiment immonde&amp;hellip; Pas merci QNAP de me forcer à faire ça !&lt;/p&gt;
&lt;p&gt;Le script &lt;code&gt;/usr/local/container-station/lxc/share/lxc/templates/lxc-download&lt;/code&gt; est moisi. Il manque la moitié des binaires dans la busybox.&lt;/p&gt;
&lt;p&gt;Pire encore, la procédure que je donne ici semble être écrasée à chaque mise à jour de l&amp;rsquo;application &lt;strong&gt;Container Station&lt;/strong&gt;. Mais, ça fonctionne&amp;hellip;&lt;/p&gt;
&lt;p&gt;La première chose qu&amp;rsquo;on va faire, c&amp;rsquo;est faire une sauvegarde du script &lt;code&gt;lxc-download&lt;/code&gt; par sécurité.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-console" data-lang="console"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="go"&gt;cp /usr/local/container-station/lxc/share/lxc/templates/lxc-download{,.old}
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Le premier message d&amp;rsquo;erreur qu&amp;rsquo;on a &lt;code&gt;getopt: command not found&lt;/code&gt; indique juste que de nombreux binaires &amp;ldquo;classiques&amp;rdquo; ne sont pas disponibles directement dans le shell de QTS.&lt;/p&gt;
&lt;p&gt;Sauf qu&amp;rsquo;en fait, ils sont là, ces binaires. Pas besoin de les télécharger ou de les compiler. Ils ne sont juste &amp;ldquo;pas visibles&amp;rdquo;.&lt;/p&gt;
&lt;p&gt;QTS tourne, comme beaucoup de serveurs Linux minimalistes, avec &lt;a class="link" href="https://fr.wikipedia.org/wiki/BusyBox" target="_blank" rel="noopener"
&gt;l&amp;rsquo;aide de Busybox&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;On peut donc &amp;ldquo;magiquement activer&amp;rdquo; les binaires qui nous manquent simplement avec des liens symboliques.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-console" data-lang="console"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="go"&gt;for binary in getopt xz seq; do
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="go"&gt; ln -s /share/CACHEDEV1_DATA/.qpkg/container-station/bin/busybox /share/CACHEDEV1_DATA/.qpkg/container-station/bin/${binary}
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="go"&gt;done
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="err"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="go"&gt;getopt
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="go"&gt;getopt: missing optstring argument
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h2 id="-and-slash"&gt;&amp;hellip; and slash!
&lt;/h2&gt;&lt;blockquote&gt;
&lt;p&gt;C&amp;rsquo;est bon, mais pas suffisant.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;La version du binaire &lt;code&gt;mktemp&lt;/code&gt; de busybox n&amp;rsquo;est malheureusement PAS compatible avec le script &lt;code&gt;lxc-download&lt;/code&gt;. On va devoir le modifier à la main&amp;hellip;&lt;/p&gt;
&lt;pre tabindex="0"&gt;&lt;code&gt;Usage: mktemp [-dq] TEMPLATE
&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Le passage problématique se situe autour des lignes 320-325&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="m"&gt;320&lt;/span&gt; &lt;span class="k"&gt;if&lt;/span&gt; ! &lt;span class="nb"&gt;command&lt;/span&gt; -V mktemp &amp;gt;/dev/null 2&amp;gt;&lt;span class="p"&gt;&amp;amp;&lt;/span&gt;1&lt;span class="p"&gt;;&lt;/span&gt; &lt;span class="k"&gt;then&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="m"&gt;321&lt;/span&gt; &lt;span class="nv"&gt;DOWNLOAD_TEMP&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="s2"&gt;&amp;#34;&lt;/span&gt;&lt;span class="si"&gt;${&lt;/span&gt;&lt;span class="nv"&gt;DOWNLOAD_TEMP&lt;/span&gt;&lt;span class="si"&gt;}&lt;/span&gt;&lt;span class="s2"&gt;/tmp/lxc-download.&lt;/span&gt;&lt;span class="nv"&gt;$$&lt;/span&gt;&lt;span class="s2"&gt;&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="m"&gt;322&lt;/span&gt; &lt;span class="k"&gt;else&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="m"&gt;323&lt;/span&gt; &lt;span class="nv"&gt;DOWNLOAD_TEMP&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="s2"&gt;&amp;#34;&lt;/span&gt;&lt;span class="si"&gt;${&lt;/span&gt;&lt;span class="nv"&gt;DOWNLOAD_TEMP&lt;/span&gt;&lt;span class="si"&gt;}&lt;/span&gt;&lt;span class="k"&gt;$(&lt;/span&gt;mktemp -d&lt;span class="k"&gt;)&lt;/span&gt;&lt;span class="s2"&gt;&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="m"&gt;324&lt;/span&gt; &lt;span class="k"&gt;fi&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;En vrai, &lt;code&gt;mktemp&lt;/code&gt; s&amp;rsquo;attend à avoir le path complet, accompagné d&amp;rsquo;un pattern à base de XXXXXX. &lt;code&gt;mktemp&lt;/code&gt; remplace ensuite les caractères XXXXXX par un nombre aléatoire en s&amp;rsquo;assurant que le dossier n&amp;rsquo;existe pas déjà, puis le créé. Par exemple&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;mktemp /tmp/mydirXXXXX
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Mode bourrin, j&amp;rsquo;ai remplacé la ligne par :&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="m"&gt;323&lt;/span&gt; &lt;span class="nv"&gt;DOWNLOAD_TEMP&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="s2"&gt;&amp;#34;&lt;/span&gt;&lt;span class="si"&gt;${&lt;/span&gt;&lt;span class="nv"&gt;DOWNLOAD_TEMP&lt;/span&gt;&lt;span class="si"&gt;}&lt;/span&gt;&lt;span class="s2"&gt;/tmpdir&amp;#34;&lt;/span&gt; &lt;span class="o"&gt;&amp;amp;&amp;amp;&lt;/span&gt; mkdir -p &lt;span class="si"&gt;${&lt;/span&gt;&lt;span class="nv"&gt;DOWNLOAD_TEMP&lt;/span&gt;&lt;span class="si"&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;De toute façon, il est supprimé à la fin de l&amp;rsquo;exécution du script, ce dossier (fonction cleanup dans le shell).&lt;/p&gt;
&lt;h2 id="gpg"&gt;GPG
&lt;/h2&gt;&lt;p&gt;On progresse !&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-console" data-lang="console"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="go"&gt;[~] # lxc-create -t download -n container_jammy -- -d ubuntu -r jammy -a armhf
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="go"&gt;Setting up the GPG keyring
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="go"&gt;chmod: /var/lib/lxc/container_jammy/tmpdir/gpg: No such file or directory
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="go"&gt;Error creating container container_jammy
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;En creusant un peu, la vraie erreur est que je n&amp;rsquo;ai pas le binaire &lt;code&gt;gpgkeys_curl&lt;/code&gt; à l&amp;rsquo;endroit attendu :&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-console" data-lang="console"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="go"&gt;gpg: unable to execute program `/opt/cross-project/arm/linaro/arm-linux-gnueabihf/libc/libexec/gnupg/gpgkeys_curl&amp;#39;: No such file or directory
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Voilà un autre point que je n&amp;rsquo;ai pas réussi à corriger correctement.&lt;/p&gt;
&lt;p&gt;Le plus simple est de simplement ignorer la validation avec &lt;code&gt;--no-validate&lt;/code&gt; mais si vous avez une piste, je suis preneur.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-console" data-lang="console"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="go"&gt;lxc-create -t download -n container_jammy -- -d ubuntu -r jammy -a armhf --no-validate
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h2 id="des-dossiers-qui-disparaissent-tout-seul-"&gt;Des dossiers qui disparaissent tout seul ???
&lt;/h2&gt;&lt;p&gt;Dernier mystère&amp;hellip;&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-console" data-lang="console"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="go"&gt;Downloading the image index
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="go"&gt;ERROR: Failed to download http://images.linuxcontainers.org//meta/1.0/index-system
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;L&amp;rsquo;erreur n&amp;rsquo;est pas du tout un problème d&amp;rsquo;accès à l&amp;rsquo;URL pour télécharger l&amp;rsquo;index des systèmes disponibles sur &lt;code&gt;images.linuxcontainers.org&lt;/code&gt; (code 302, page redirigée sur &lt;code&gt;uk.lxd.images.canonical.com&lt;/code&gt;).&lt;/p&gt;
&lt;p&gt;En réalité, si active les messages d&amp;rsquo;erreurs lors du &lt;code&gt;wget&lt;/code&gt; dans le script, l&amp;rsquo;erreur est que le dossier &lt;code&gt;/var/lib/lxc/container_jammy/tmpdir/&lt;/code&gt; n&amp;rsquo;existe pas !&lt;/p&gt;
&lt;p&gt;Pourtant, ça devrait être corrigé, suite à la modif qu&amp;rsquo;on a faite ligne 323 (voir plus haut)&amp;hellip; trop bizarre :/&lt;/p&gt;
&lt;p&gt;J&amp;rsquo;en ai eu un peu marre de creuser et au bout d&amp;rsquo;un moment, j&amp;rsquo;ai juste fait :&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-console" data-lang="console"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="go"&gt;export CONTAINER_NAME=jammy
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="go"&gt;mkdir -p /var/lib/lxc/${CONTAINER_NAME}/tmpdir/
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="go"&gt;mkdir -p /var/lib/lxc/${CONTAINER_NAME}/rootfs/
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="go"&gt;lxc-create -t download -n ${CONTAINER_NAME} -- -d ubuntu -r jammy -a armhf --no-validate
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Et croyez-le ou non, mais ça marche ! Le container existe (il n&amp;rsquo;est juste pas visible dans la console pour l&amp;rsquo;instant)&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-console" data-lang="console"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="go"&gt;[...]
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="go"&gt;You just created an Ubuntu jammy armhf (20220611_07:42) container.
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;On a plus qu&amp;rsquo;à redémarrer Container Station, il apparaît&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2022/06/qnap_lxc_jammy.avif"
loading="lazy"
&gt;&lt;/p&gt;
&lt;h2 id="conclusion"&gt;Conclusion
&lt;/h2&gt;&lt;p&gt;Si jamais quelqu&amp;rsquo;un de chez QNAP lit ce blogpost&amp;hellip; Arrêtez de vous fiche de nous et :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;mettez nous LXD dans nos NAS ARM&lt;/li&gt;
&lt;li&gt;OU si c&amp;rsquo;est trop de boulot (je peux l&amp;rsquo;entendre), remettre LXC en attendant.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Ce genre de hack est indigne et j&amp;rsquo;ai perdu plusieurs heures pour corriger votre m***e. J&amp;rsquo;ai payé pour un NAS compatible LXC, ce n&amp;rsquo;est pas pour que vous retiriez la fonctionnalité 1 an après.&lt;/p&gt;
&lt;p&gt;Ce genre de pratiques est vraiment dégueulasse et je n&amp;rsquo;hésiterais pas à dire tout le mal que je pense de cette décision.&lt;/p&gt;
&lt;h2 id="sources"&gt;Sources
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;&lt;a class="link" href="https://forum.qnap.com/viewtopic.php?t=159613" target="_blank" rel="noopener"
&gt;Un post sur le Forum QNAP qui m&amp;rsquo;a un peu guidé vers la solution&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="link" href="https://www.reddit.com/r/qnap/comments/owkr63/qnap_container_station_loss_of_functionality/" target="_blank" rel="noopener"
&gt;Un fil de discussion Reddit qui en parle&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>Stockage pour un admin geek : QNAP TS431P2 ou Synology DS418(j) ?</title><link>https://blog.zwindler.fr/2018/01/23/stockage-pour-un-admin-geek-qnap-ts431p2-ou-synology-ds418j/</link><pubDate>Tue, 23 Jan 2018 12:45:24 +0000</pubDate><guid>https://blog.zwindler.fr/2018/01/23/stockage-pour-un-admin-geek-qnap-ts431p2-ou-synology-ds418j/</guid><description>&lt;img src="https://blog.zwindler.fr/2018/01/qnap22.webp" alt="Featured image of post Stockage pour un admin geek : QNAP TS431P2 ou Synology DS418(j) ?" /&gt;&lt;h2 id="behold"&gt;Behold!
&lt;/h2&gt;&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2018/01/qnap22.avif"
loading="lazy"
&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Mon TS431P2&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;J’en ai déjà parlé sur le blog, j’ai entamé une phase de &lt;em&gt;dés-auto-hébergement&lt;/em&gt;. Oui je sais, c’est triste.&lt;/p&gt;
&lt;p&gt;Au delà des problématiques de disponibilités des services plus réduite en auto-hébergement (sauf à réaliser des efforts conséquents) par rapport à des services en ligne, héberger son serveur, ce n’est pas toujours très écolo et ça peut coûter plus cher.&lt;/p&gt;
&lt;p&gt;Louer une machine physique et y installer un hyperviseur chez Kimsufi (ou OneProvider ou autre) permet de faire des économies pour une qualité de service supérieure (&lt;a class="link" href="https://blog.zwindler.fr/recherche/?keyword=m4vr0x" &gt;cf les articles de M4vr0x&lt;/a&gt;). Alors ce n’est certainement pas aussi fun &lt;a class="link" href="https://blog.zwindler.fr/2014/03/09/construction-dun-helmer-like-pour-mon-infra-perso-part-1-le-design/" &gt;que de concevoir&lt;/a&gt; et &lt;a class="link" href="https://blog.zwindler.fr/2014/03/10/construction-dun-helmer-like-pour-mon-infra-perso-part-3-lassemblage-et-lamenagement-interieur/" &gt;monter son propre meuble « rack » et y visser une carte mère dedans&lt;/a&gt; mais c’est probablement aussi plus rationnel.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2014/03/meuble_v3-1.avif"
loading="lazy"
&gt;&lt;/p&gt;
&lt;p&gt;N’ayant plus que le « serveur NAS » dans mon Red Helmer maison, j’ai donc décidé d’aller au bout de la démarche et d’abandonner mon Xubuntu customisé pour acquérir un QNAP TS431 P2.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2018/01/qnap24.avif"
loading="lazy"
&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Migration en cours&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h2 id="synology-ou-qnap-un-choix-de-société--vous-avez-4-heures-"&gt;Synology ou QNAP, un choix de société ? Vous avez 4 heures !
&lt;/h2&gt;&lt;p&gt;Je vais esquiver (ou au moins tenter d’esquiver) un flame war Synology versus QNAP et simplement lister mes besoins. Je veux remplacer un NAS existant à base d’OS Linux disposant des caractéristiques et fonctionnalités suivantes :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Matériel :
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;&lt;a class="link" href="https://www.amazon.fr/gp/product/B015VPX05A/ref=as_li_tl?ie=UTF8&amp;amp;camp=1642&amp;amp;creative=6746&amp;amp;creativeASIN=B015VPX05A&amp;amp;linkCode=as2&amp;amp;tag=zwindsrefle-21&amp;amp;linkId=075f115800c86d9c88cd85db55f2f28a" target="_blank" rel="noopener"
&gt;Intel Pentium (dual core 3GHz)&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a class="link" href="https://www.amazon.fr/gp/product/B0089JIDLC/ref=as_li_tl?ie=UTF8&amp;amp;camp=1642&amp;amp;creative=6746&amp;amp;creativeASIN=B0089JIDLC&amp;amp;linkCode=as2&amp;amp;tag=zwindsrefle-21&amp;amp;linkId=0a7d5dcc2f1502ccb97bf9da4ec7a0b4" target="_blank" rel="noopener"
&gt;8 Go de RAM&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;~6 To via 3x 3To de &lt;a class="link" href="https://www.amazon.fr/gp/product/B00EHBERSE/ref=as_li_tl?ie=UTF8&amp;amp;camp=1642&amp;amp;creative=6746&amp;amp;creativeASIN=B00EHBERSE&amp;amp;linkCode=as2&amp;amp;tag=zwindsrefle-21&amp;amp;linkId=93fe7aceebe269e31d1a928e4735e5b3" target="_blank" rel="noopener"
&gt;HDD Western Digital Red&lt;/a&gt; en grappe RAID 5 via &lt;strong&gt;mdadm&lt;/strong&gt;
. Le but est de réutiliser ces disques.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;4 baies 3,5″ minimum&lt;/strong&gt; (cf ligne précédente)&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Performances :
&lt;ul&gt;
&lt;li&gt;Je souhaite disposer d’un NAS capable &lt;strong&gt;&lt;em&gt;a minima&lt;/em&gt; de saturer le port gigabit Ethernet&lt;/strong&gt; (&amp;gt;100 Mo/seconde en lecture ou écriture séquentielle) &lt;strong&gt;sans perte de performance&lt;/strong&gt; sur les autres services&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Fonctionnalités :
&lt;ul&gt;
&lt;li&gt;Partages NFS, CIFS, iSCSI
&lt;ul&gt;
&lt;li&gt;Serveur SFTP, Plex et &lt;em&gt;Deluge centralisant les téléchargement démarrés depuis tous les PC du foyer&lt;/em&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Accès SSH en admin (pour hébergement de petits services complémentaires comme des scripts de supervision, &lt;a class="link" href="https://blog.zwindler.fr/2014/09/22/mise-a-jour-de-votre-dns-chez-ovh-avec-dynhost/" &gt;mise à jour de DynHost OVH&lt;/a&gt;, &amp;hellip;)&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Prix :
&lt;ul&gt;
&lt;li&gt;Le moins cher possible une fois que les critères de performances et fonctionnalités sont respectés&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Si on met de côté le serveur Deluge qui est un besoin un peu exotique, les fonctionnalités nécessaires sont relativement basiques. Ce n’est donc pas réellement un critère de choix.&lt;/p&gt;
&lt;h2 id="shortlister-du-matériel"&gt;Shortlister du matériel
&lt;/h2&gt;&lt;p&gt;Je me suis néanmoins limité à Synology et QNAP (les deux leaders) pour m’assurer un meilleur support et une meilleure assurance d’avoir de nouvelles fonctionnalités dans les années à venir car leurs OS sont régulièrement mis à jour.&lt;/p&gt;
&lt;p&gt;J’ai donc épluché les références sur le site des deux marques (&lt;a class="link" href="https://www.synology.com/fr-fr/products?bays=4" target="_blank" rel="noopener"
&gt;Synology&lt;/a&gt; et &lt;a class="link" href="https://www.qnap.com/fr-fr/product/?conditions=0-4" target="_blank" rel="noopener"
&gt;QNAP&lt;/a&gt;) et voilà les modèles qui ont retenus mon attention :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;QNAP TS431P2 (Home - Middle range)&lt;/li&gt;
&lt;li&gt;QNAP TS451* (Home - High end)&lt;/li&gt;
&lt;li&gt;Synology DiskStation DS418j (Home - Middle range)&lt;/li&gt;
&lt;li&gt;Synology DiskStation DS418 (Home - Middle range)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Clairement, le TS451 (et ses déclinaisons) est overkill. Outre la sortie HDMI dont je n’ai que faire (le NAS est dans le dressing, loiiiin de la TV), le TS451 dispose d’un Celeron, capable sur le papier de faire tourner des VMs. L’argument est intéressant mais je ne pense pas en avoir l’utilité à la maison, toutes mes VMs ayant été transportées sur les serveurs chez Kimsufi.&lt;/p&gt;
&lt;p&gt;La vraie « battle » s’est donc faite entre le TS431P2 et les deux Synology DS418 et sa version « j ».&lt;/p&gt;
&lt;h2 id="comparer-des-oranges-et-des-bananes"&gt;Comparer des oranges et des bananes
&lt;/h2&gt;&lt;p&gt;Voici un petit tableau comparatif des trois NAS :&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2018/01/qnap25-1.avif"
loading="lazy"
&gt;&lt;/p&gt;
&lt;h3 id="la-ram"&gt;La RAM
&lt;/h3&gt;&lt;p&gt;Il y a clairement 2 philosophies. Synology se vante d’avoir doublé la capacité de la RAM de ces modèles de 2018 (2G/1G) par rapport à ceux de 2016 (1G/512M). En même temps on partait de tellement loin ! Chez QNAP, si les modèles d’entrée de gamme sont aussi en 1Go, on hésite pas à proposer des modèles avec 2, 4, voire 8 Go, et à indiquer que tous les modèles sont upgradables. Dans l’optique d’héberger de futurs services supplémentaires à la maison, c’est rassurant, mon TS431P2 ne manquera pas de RAM.&lt;/p&gt;
&lt;h3 id="performance-brute"&gt;Performance brute
&lt;/h3&gt;&lt;p&gt;A première vue, les 3 NAS disposent de processeurs ARM récents et se valent.&lt;/p&gt;
&lt;p&gt;Pourquoi je parle de CPU ? Au delà de la vitesse des disques qui est indépendante du NAS choisi, et de la vitesse des ports Gigabit (bridée&amp;hellip; à 1 Gbit ! surprise !), c’est le CPU le facteur limitant sur la plupart des NAS sur le marché.&lt;/p&gt;
&lt;p&gt;Or dans le cas présent, les 3 saturent les ports Ethernet en lecture ou écriture séquentielles (le DS418j n’a qu’un port Ethernet, d’où les débits 2x inférieurs).&lt;/p&gt;
&lt;p&gt;C’était une vraie inquiétude pour moi car les premiers Synology que j’avais pu manipuler il y a quelques années étaient plombés par des ARM sous dimensionnés induisant des plateaux à 40-50 Mo/s et bloquant toutes les autres opérations (CPU à 100%). C’était la raison pour laquelle j’ai monté plusieurs &lt;a class="link" href="https://blog.zwindler.fr/2011/06/29/nasmediacenter-do-it-yourself-or-not/" &gt;« NAS maisons » depuis 2011&lt;/a&gt;, avec des performances bien plus importantes à tarif égal.&lt;/p&gt;
&lt;h3 id="comparer-les-arm-entre-eux"&gt;Comparer les ARM entre eux
&lt;/h3&gt;&lt;p&gt;A ma connaissance, il n’existe pas de base de données en ligne de benchmark sur les différents CPU ARM (&lt;a class="link" href="https://www.cpubenchmark.net/" target="_blank" rel="noopener"
&gt;comme on peut trouver pour Intel et AMD par exemple&lt;/a&gt;), donc pas de possibilité de comparer comme cela.&lt;/p&gt;
&lt;p&gt;Cependant, en fouillant un peu plus, j’ai pu me rendre compte que l’Alpine AL-314 semble surclasser très (très) largement les deux autres. En épluchant la fiche technique du TS431&lt;strong&gt;X&lt;/strong&gt;2 (un NAS QNAP entrée de gamme pour PME avec un port&amp;hellip; 10GbE fibre !) qui a le même processeur, on découvre des performances maximales théoriques de 1014 Mo/s en lecture et 580 Mo/s en écriture ! On sature même le 10GbE en lecture&amp;hellip;&lt;/p&gt;
&lt;p&gt;Cet avantage se confirme sur les transferts chiffrés. Le DS418 ne sature plus qu’un seul port Ethernet et le DS418j tombe même bien en dessous des 100Mo/s en écriture.&lt;/p&gt;
&lt;p&gt;Parallèlement, le TS431P2 garde un débit assez proche de la saturation de ses deux ports Ethernet. Autant dire qu’avec ce processeur, le NAS s’ennuie quand on transfère à 100 Mo/s (ce que j’ai pu vérifier IRL).&lt;/p&gt;
&lt;p&gt;Il n’y a donc aucune contrindication à héberger des services supplémentaires et les gros transferts n’ont aucun impact sur les performances globales du NAS (si ce n’est congestionner le réseau).&lt;/p&gt;
&lt;h2 id="killer-features-containers-et-snapshots"&gt;Killer features (containers et snapshots)
&lt;/h2&gt;&lt;p&gt;Déjà, côté matoss, le QNAP est donc devant.&lt;/p&gt;
&lt;p&gt;Côté fonctionnalités, si DSM (OS des Synology) &lt;a class="link" href="https://www.synology.com/fr-fr/dsm/packages" target="_blank" rel="noopener"
&gt;possède beaucoup plus de paquets/applications&lt;/a&gt; que QTS (OS des QNAP), les DS418(j) &lt;em&gt;ne sont pas compatibles avec l’application &lt;strong&gt;Docker&lt;/strong&gt;&lt;/em&gt; alors que le TS431P2 (et tous les autres QNAP) propose une application officielle pour gérer les containers &lt;strong&gt;&lt;em&gt;LXC&lt;/em&gt;&lt;/strong&gt; ET &lt;strong&gt;&lt;em&gt;Docker&lt;/em&gt;&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2018/01/qnap23.avif"
loading="lazy"
&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Container Station&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Dans l’optique de remonter mon serveur Deluge sur le NAS (et d’autres services par la suite), c’est donc un autre point positif pour QNAP.&lt;/p&gt;
&lt;p&gt;Deux derniers point mis en avant par QNAP, la possibilité de gérer &lt;strong&gt;sur tous les modèles de la gamme&lt;/strong&gt; des snapshots de tous les volumes avec la dernière version (QTS 4.3.4), ce qui n’est pas possible sur les DS418(j), ainsi qu’une application pour gérer des devices de type IoT.&lt;/p&gt;
&lt;h2 id="user-friendly-versus-bidouilleur"&gt;User friendly versus bidouilleur
&lt;/h2&gt;&lt;p&gt;Clairement, le positionnement de Synology est de proposer des boitiers &lt;em&gt;suffisants&lt;/em&gt; pour la plupart des utilisateur, &lt;em&gt;un peu&lt;/em&gt; moins customisables et performants mais aussi &lt;em&gt;un peu&lt;/em&gt; plus simple d’utilisation. C’est pour ça que, pour tout autre personne que moi (ou un geek sysadmin), je conseille les Synology.&lt;/p&gt;
&lt;p&gt;J’insiste : les différences sont vraiment infimes car QNAP est aussi très user friendly. L’interface est très fluide et très intuitive, mais on a clairement plus la main (pas encore autant que je voudrais :-p) et un néophyte serait probablement plus à l’aise sur un Synology.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2018/01/qnap13-1.avif"
loading="lazy"
&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Le « bureau » de QNAP&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2018/01/qnap26.avif"
loading="lazy"
&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Administration et Filestation&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Mais le fait que le CPU soit bien plus costaud côté sur les QNAP et qu’on ait la possibilité d’augmenter la RAM sont clairement des points qui plaisent aux bidouilleurs dont je fais partie.&lt;/p&gt;
&lt;p&gt;L’ajout de fonctionnalités comme Docker/LXC, les snapshots ou le support de l’IoT sur toute la gamme aussi.&lt;/p&gt;
&lt;p&gt;Sans trop d’hésitation, j’ai donc choisi le TS431P2. En profitant d’une promo j’ai réussi à avoir le modèle 1 Go avec une barrette de RAM 8 Go pour pratiquement le même prix que sans. Je ferai peut être un petit article sur la partie upgrade de la RAM ;-)&lt;/p&gt;
&lt;h2 id="sources"&gt;Sources
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;&lt;a class="link" href="https://www.synology.com/fr-fr/products?bays=4" target="_blank" rel="noopener"
&gt;Liste des NAS 4 Baies Synology&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="link" href="https://www.synology.com/fr-fr/products/performance#4bay" target="_blank" rel="noopener"
&gt;Performance des NAS 4 Baies Synology&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="link" href="https://www.qnap.com/fr-fr/product/?conditions=0-4" target="_blank" rel="noopener"
&gt;Liste des NAS 4 Baies QNAP&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="link" href="https://www.qnap.com/en/product_x_performance/group.php?goal_csn=8" target="_blank" rel="noopener"
&gt;Performance des NAS 4 Baies QNAP&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="link" href="https://exchange.nagios.org/directory/Plugins/Network-Connections%2C-Stats-and-Bandwidth/Check-QNAP-Disk/details" target="_blank" rel="noopener"
&gt;Plugins Nagios et compatibles pour superviser un QNAP&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description></item></channel></rss>