NAS Synology : installer Entware en remplacement d’IPKG pour des applications à jour

Vous avez sûrement remarqué qu’IPKG n’est plus maintenu depuis maintenant quelques années (2014) et qu’à chaque mise à jour DSM du NAS Synology, les applications sautent.

Il devenait quasiment impossible d’installer IPKG sur les nouveaux NAS – jusqu’à l’arrivée d’Entware.

Entware est un petit nouveau qui a mis des années à mûrir mais il est mis à jour en permanence et offre plus de 1800 paquets à votre NAS. Il est aussi compatible avec les routeurs OpenWRT et LEDE.

Voyons donc comment installer cette nouvelle source d’applications.

Entware-ng, le petit nouveau

Entware-ng prend en charge les processeurs ARM et Intel, votre version de DSM doit quant à elle être égale ou supérieure à la version 3.2.

Il faut utiliser :

  • l’installeur armv5 pour les processeurs Marvell Kirkwood mv6282,
  • l’installeur armv7 pour les processeurs ARM plus récents. Le dépôt armv7 a été compilé avec l’optimisation cortex-a9 mais reste totalement compatible avec les NAS basés sur des Marvell Armada XP .

Déterminer le modèle du processeur du NAS

Considérons que SSH est activé dans les options du DSM (Control Panel > Applications > Terminal & SNMP > Terminal > Enable SSH service).

On commence par lancer une connexion SSH vers le NAS avec l’utilisateur admin :

ssh admin@DiskStation

et on passe root:

sudo -i

On peut trouver le modèle du processeur en tapant:

cat /proc/cpuinfo | more

Cela vous permet de savoir si vous êtes en armv5 ou armv7 (plus récent).

Un autre moyen, peut-être même plus simple :

uname -a

Résultat chez moi:

Linux DiskStation 2.6.32.12 #15132 Wed Jun 14 12:24:38 CST 2017 armv5tel GNU/Linux synology_212+

Installer Entware-ng sur notre NAS Synology

Toujours dans votre session SSH, en tant que root, vous allez maintenant installer Entware sur votre Synology.

1. On crée un dossier sur le disque, en dehors du rootfs :

mkdir -p /volume1/@entware-ng/opt

Le dossier /opt doit absolument être vide, c’est-à-dire qu’Optware ne doit pas être installé. Dans le doute, on le vide dans l’étape suivante.

2. On supprime /opt et on crée un lien symbolique:

rm -rf /opt
ln -sf /volume1/@entware-ng/opt /opt

3. On lance le script d’installation:

Pour armv5:

wget -O - http://pkg.entware.net/binaries/armv5/installer/entware_install.sh | /bin/sh

Pour armv7:

wget -O - http://pkg.entware.net/binaries/armv7/installer/entware_install.sh | /bin/sh

Pour x86-32:

wget -O - http://pkg.entware.net/binaries/x86-32/installer/entware_install.sh | /bin/sh

Pour x86-64:

wget -O - http://pkg.entware.net/binaries/x86-64/installer/entware_install.sh | /bin/sh

Pour MIPS:

wget -O - http://pkg.entware.net/binaries/mipsel/installer/installer.sh | /bin/sh

4. On édite le fichier /etc/rc.local et on ajoute à la fin du fichier:

/bin/ln -sf /volume1/@entware-ng/opt /opt
/opt/etc/init.d/rc.unslung start

La dernière ligne permet de lancer les services Entware lors du démarrage du NAS.

Depuis DSM 6.1, /etc/rc.local n’est plus exécuté lors de la séquence de boot. Il faut donc créer une tâche planifiée qui lance ces deux instructions au démarrage du NAS.

Rendez-vous dans Panneau de configuration > Planificateur de tâches > Créer > Tâche déclenchée > Script défini par l’utilisateur. Cette tâche sera lancée au démarrage du NAS:

NAS Synology : installer Entware en remplacement d'IPKG pour des applications à jour photo

avec les instructions suivantes:

/bin/ln -sf /volume1/@entware-ng/opt /opt
/opt/etc/init.d/rc.unslung start
NAS Synology : installer Entware en remplacement d'IPKG pour des applications à jour photo 1

5. On ajoute cette ligne à la fin du fichier /etc/profile:

. /opt/etc/profile

Cela ajoute /opt/bin et /opt/sbin à la variable PATH pour le login.

6. Rebootez le NAS.

Utilisation d’Entware

Entware-ng utilise le gestionnaire de paquets OPKG et sa syntaxe est sans surprise, à la manière d’un apt:

mise à jour :

opkg update

installation d’un paquet :

opkg install nginx

DSM et mises à jour

Il est important de noter que chaque mise à jour du DSM supprime le contenu du dossier /opt donc il faudra relancer l’installation d’Entware après chaque mise à jour du Synology, notamment l’édition des fichiers des étapes 4 et 5.

Voilà, bonne(s) installation(s)

Vous avez un projet WordPress ou WooCommerce en tête? Transformez votre vision en réalité avec mon expertise reconnue.

Parlons de votre projet dès aujourd'hui »

Articles conseillés :

31 pensées sur “NAS Synology : installer Entware en remplacement d’IPKG pour des applications à jour”

  1. Bonjour et merci pour cet article très complet.

    Le fichier /etc/rc.local n’existe pas sur mon Syno, dois-je le créer ?

    Merci !

    Reply
  2. Merci bcp !

    Par contre je n’ai pas supprimé le dossier /opt. Il était “busy” et j’avais peur, par manque de connaissance, de supprimé tous mes fichiers qui semblaient être associés :
    Filesystem Size Used Avail Use% Mounted on
    /volume1/@optware 1.4T 1.2T 169G 88% /opt

    Du coup j’avais quand même des erreurs en lancant “opkg update”, avec wget :

    wget returned 1

    J’ai simplement supprimé le “mauvais” wget :

    cp /opt/bin/wget /opt/bin/old.wget
    rm -f /opt/bin/wget

    Et laisser le “bon” wget être pris en compte :

    which wget
    /usr/bin/wget

    Désormais tout fonctionne, update et install de package :) merci

    Reply
  3. petit probleme pour supprimer /opt:
    Device or resource busy

    faire :

    umount /opt 
    rmdir /opt

    puis créer le lien symbolique:

    ln -sf /volume1/@entware-ng/opt /opt
    Reply
  4. Bonjour,
    et merci pour le tuto.
    Après redémarrage du nas la commande opkg update me retourne le commentaire suivant :
    Collected errors:
    * opkg_conf_load: Could not create lock file /opt/var/lock/opkg.lock: Permission denied.
    Une idée du problème ?
    Merci!

    Reply
  5. Bonjour,
    J’ai suivi le tuto à la ligne, vraiment top, merci beaucoup.
    Juste un peu bloqué au niveau du fichier /etc/rc.local ou je ne savais pas qu’il fallait le créer mais heureusement grâce à la question d’Arnaud j’ai eu ma réponse. :)
    J’ai suivi ce tuto en pensant que ça m’aiderai à installer bootstrap pour mon ds416j mais du coup on dirait que non

    root@xxx:~# opkg install bootstrap
    Unknown package ‘bootstrap’.
    Collected errors:
    * opkg_install_cmd: Cannot install package bootstrap.
    root@xxx:~#

    Reply
  6. Bonsoir,
    J’ai suivi la procédure à la lettre jusqu’au reboot du NAS.
    Lorsque je tape “opkg update” la commande n’existe pas…..
    D’où cela provient?
    Merci de votre aide car tant que je n’ai pas solutionné ceci je ne peux pas continuer mon installation de Crashplan sur mon NAS.

    Reply
    • Bonjour Sandra,

      Je viens de réinstaller opkg en copiant-collant toutes les étapes. Au redémarrage du NAS, j’ai bien accès à opkg update

      Quelle est votre version de DSM ?

      Reply
      • Je viens de suivre la nouvelle procédure pour le DSM 6.1.
        Quand je fais l’étape 5 je suis toujours en Root en SSH , il me marque commande not found!

  7. Mise à jour de l’article :
    – nouvelle commande complémentaire pour trouver l’architecture processeur du NAS
    – ajout du script d’installation pour processeurs MIPS
    – pour DSM6.1 : ajout d’une tâche déclenchée (étape 4)

    Reply
  8. Je pense avoir suivi le tuto à la lettre

    Après reboot du Syno, lors de l’ouverture du terminal j’ai l’erreur suivante :
    -ash: .: line 39: can’t open ‘/opt/etc/profile’
    -ash: .: line 28: can’t open ‘/opt/etc/profile’

    Effectivement, je ne vois pas de fichier /opt/etc/profile

    Merci

    Reply
    • Bonjour Bouton,

      Voici le contenu de mon /opt/etc/profile:

      #!/bin/sh
      
      # Please note it's not a system-wide settings, it's only for a current
      # terminal session. Point your f\w (if necessery) to execute /opt/etc/profile
      # at console logon.
      
      export PATH=/opt/bin:/opt/sbin:$PATH
      export TERMINFO=/opt/share/terminfo
      export TERM=xterm
      export TMP=/opt/tmp
      export TEMP=/opt/tmp
      alias mc="mc -c"
      
      # You may define localization
      #export LANG='ru_RU.UTF-8'
      #export LC_ALL='ru_RU.UTF-8'
      export LANG='en_US.UTF-8'
      export LC_ALL='en_US.UTF-8'
      Reply
  9. Bonjour,
    J’ai suivi votre tuto, mais etant novice Comment dois-je creer un fichier rc.local
    merci d’avance pour votre aide

    Reply
      • Bonjour,
        Merci Mat pour ton aide, mais maintenant je n’arrive pas à faire l’update

        ash: opkg: command not found
        ash-4.3#
        Si je refais le tuto complet cela a-t-il une incidence? ou bien faut-il tout effacer si oui quel est la commande
        merci pour ta patience, mais c’est ma première tentative en SSH

      • Bonjour ebac1,

        Il peut arriver qu’une mise à jour du DSM supprime opkg. Dans ce cas, il suffit de reprendre le tutoriel et de l’installer.

  10. bonsoir,

    j’ai un DS414j en DSM6-2-23739 (dernière MAJ ce week-end), avec les répertoires /volume1/video, /volume1/photos, /volume1/musique, /volume1/SABNZBD, et /volume1/NAS accessibles depuis mon W7 sans pb depuis des années.

    Or depuis mon retour de vacances ce we, je n’arrive plus à accéder à /volume1/SABNZBD depuis mon W7 :-(, j’ai “accès refusé

    je suis allé voir avec putty, la seule différence que j’ai notée est que ce répertoire a comme droits “dwrxwrxwrx+

    j’ai donc cherché sur internet ce que ce “+” voulait dire, j’ai cru comprendre qu’il y avait des ACL en + sur ce rep’, j’ai donc cherché comment les modifier

    n’ayant pas le package ACL, j’ai cherché à l’installer.

    du coup j’ai du installer Entware (puisque IPKG n’est plus maintenu) en suivant votre tuto – merci !!!

    mais qd je lance “opkg install acl”, ça me répond que le package n’existe pas…

    du coup je suis paumé…

    –> est-ce que je suis sur la bonne piste, ou est-ce que cela n’a rien à voir – et que dois-je faire alors ?

    d’avance merci pour votre aide !

    Reply
    • Bonjour weyb,

      Le plus simple est de vérifier les autorisations de ton utilisateur en passant par l’interface d’administration (DSM). Vérifie que les droits d’accès n’ont pas changé. Tu n’as pas besoin d’installer ACL.

      Avec quel utilisateur te connectes-tu ?

      Reply
      • bsr
        merci pour votre aide !
        Bin le truc, c’est que j’ai connecté mon NAS à mon PC il y a des années et du coup, je ne sais plus trop comment j’accède au NAS depuis le PC…
        Je ne suis pas certain, mais je dois être connecté avec “Bruno” sur mon PC (je ne me loggue jamais, ça boote direct, donc je ne suis pas certain, mais ça doit etre ça car c’est le seul user potable dans C:\users…).
        Ensuite, je n’ai que “admin”, “embysrv” et “guest” dans la liste des users dans le DSM…
        Du coup, je ne sais pas trop…

      • re,

        j’ai regardé “guest”, et il a les mêmes droits sur “SABNZBD” que sur les autres répertoires… :-(
        NOTA : Est-ce que ça change qqch si “SABNZBD”, “video”, etc. sont des partitions et non des répertoires (je ne sais plus trop mais je crois me souvenir que c’est ça) ?

        cordt

  11. Les modèles Synology plus récents comme les appareils ARM v7 devraient probablement utiliser Entware. ARMv5 avec un ancien noyau Linux pourrait devoir utiliser Entware-NG:

    Entware-NG-3x et Entware-NG ont décidé d’unir leurs forces et de fusionner les deux projets dans un nouveau projet appelé Entware. Par conséquent, les deux projets Entware-ng-3x et Entware-ng ne seront plus maintenus. Tous les logiciels et ressources seront disponibles sur la nouvelle page Web du projet, y compris le wiki de documentation.

    https://github.com/Entware/Entware
    https://github.com/Entware/Entware/wiki
    https://github.com/Entware/Entware/wiki/Install-on-Synology-NAS
    ______

    Newer Synology models like ARM v7 devices should probably use Entware. ARMv5 with old Linux kernel might have to use Entware-NG:

    “Entware-NG-3x and Entware-NG decided to join forces and merge the two projects into a new project called Entware. As a result the two projects Entware-ng-3x and Entware-ng will not be maintained anymore. All software and resources will be available at the new project webpage, including the documentation wiki.”

    https://github.com/Entware/Entware
    https://github.com/Entware/Entware/wiki
    https://github.com/Entware/Entware/wiki/Install-on-Synology-NAS

    Reply
  12. Bonjour,
    Merci pour cet article qui me fait découvrir entware.
    J’ai un DS213+ avec IPKG. C’est un processeur PPC.
    Pensez-vous que cela vaille le coup de se lancer dans une tentative de passer entware sous PPC, ou est-ce une mauvaise idée ?
    Je vais installer entware sur mon Banana Pi BPI R2 (arm v7) sous OWRT, mais cela me sera moins utile !
    Cordialement,

    Francis

    Reply
    • Bonjour Francis,

      Je n’ai installé IPKG puis Entware que sur mon DS212+. Je suis ensuite passé sur un NAS plus récent (DS918+) qui possède plus de paquets (et plus à jour), ce qui ne rend plus Entware indispensable.

      Si vous tentez l’expérience, n’hésitez pas à nous donner votre retour.

      Matt

      Reply

Opinions