#!/bin/sh # Charge le pilote USB-serie sur le Synology .17 (ARCHIVE3, DS920+) et rend le # port accessible au conteneur du releve. A LANCER EN ROOT. # # Pourquoi : DSM 7.3.2 embarque les modules (/lib/modules/usbserial.ko et # ftdi_sio.ko) mais ne les charge pas d'office, et un cable branche ne cree donc # aucun /dev/ttyUSB*. Ce script charge les deux modules puis ouvre les droits du # device (le conteneur tourne en uid 1026, pas en root). # # QUAND : au demarrage du NAS, ET a chaque fois qu'on rebranche le cable apres # coup. A automatiser via Planificateur de taches DSM -> tache declenchee # « Au demarrage », utilisateur root, commande : # /volume1/homes/TMZF5455/projects/EVCS/EVCS/deploy/releve-cellules/charger-pilotes.sh # # Idempotent : relançable sans risque. for ko in usbserial ftdi_sio; do if ! /sbin/lsmod | grep -q "^$ko "; then /sbin/insmod "/lib/modules/$ko.ko" 2>/dev/null \ && echo "$ko charge" \ || echo "$ko : insmod en echec (deja charge ? autre pilote ?)" else echo "$ko deja charge" fi done # Laisse le temps a udev de creer le device si le cable est deja branche. sleep 2 if [ -e /dev/ttyUSB0 ]; then chmod 666 /dev/ttyUSB0 echo "/dev/ttyUSB0 present, droits ouverts :" ls -l /dev/ttyUSB0 else echo "/dev/ttyUSB0 absent : cable non branche, ou adaptateur non reconnu." echo "Rebrancher le cable puis relancer ce script." fi