Activer un disque sur le port usb

Le port USB du dns-323 sert normalement à connecter une imprimante. Nous allons voire pour connecter un disque dur externe.
/# mkdir /mnt/HD_a2/ffp/lib/modules
  • Copier les fichiers télécharger dans /mnt/HD_a2/ffp/lib/modules
  • Lancer le module
    /# insmod /mnt/HD_a2/ffp/lib/modules/usb-storage.ko
    • Test du chargement du module
    /# lsmod
    • Branché un disque usb et regarder les logs
    /# dmesg
    Initializing USB Mass Storage driver...
    scsi4 : SCSI emulation for USB Mass Storage devices
      Vendor: LEXAR     Model: GEYSER JUMPDRIVE  Rev: 1.00
      Type:   Direct-Access                      ANSI SCSI revision: 02
    SCSI device sdc: 1001952 512-byte hdwr sectors (513 MB)
    sdc: assuming Write Enabled
    sdc: assuming drive cache: write through
    sdc: sdc1
    Attached scsi removable disk sdc at scsi4, channel 0, id 0, lun 0
    Attached scsi generic sg2 at scsi4, channel 0, id 0, lun 0,  type 0
    USB Mass Storage device found at 2
    usbcore: registered new driver usb-storage
    USB Mass Storage support registered.
    Noter le sdc du disque (ici sdc1)
    • Partitionnement et formatage
    Si votre disque n'a pas été patitionné et formatté, vous pouvez le faire via Windows en FAT32, Linux ou votre DNS-323.

    Dans ce cas, vous devrez utiliser la commande fdisk (Attention, cette commande peut détruire l'ensemble des données de votre nas si mal utilisé...)
    /# fdisk /dev/sdc
    Si vous avez le message "Segmentatio fault" récupérez la commande fdisk ici.
    Créer une partition "n" (partition primaire numéro 1) et écrire la table des partition avec "w".

    formatter le disque avec la commande :
    /# mke2fs -j /dev/sdc1
    • Test de montage du disque
    /# mkdir /mnt/HD_a2/usb
    /# mount /dev/sdc1 /mnt/HD_a2/usb
    /# df -k
    /dev/sdc1 76920416 63182204 9830804 87% /mnt/HD_a2/usb
    • Montage du disque usb au démarrage du nas
    Le montage doit être réalisé avant le lancement des différents batchs contenus dans start.
    Il faut donc rajouter les lignes ci-dessous dans le fichier fun_plug, avant le commantaire '# run commands' (Ok c'est pas très propre, mais ça marche...)
    /# vi /mnt/HD_a2/fun_plug
    #!/bin/sh

    # switch to safe working directory on ramdisk
    ...
    # mount external USB Discs
    DIR=/mnt/HD_a2
    if [ -d ffp/lib/modules ]; then
    echo "* Mount external USB Discs ..."
    if [ -f $DIR/ffp/lib/modules/usb-storage.ko ]; then
    insmod $DIR/ffp/lib/modules/usb-storage.ko
    # wait a few seconds for the usb drive to be detected
    sleep 15
    if [ ! -d $DIR/usb ]; then
    mkdir $DIR/usb
    fi
    mount /dev/sdc1 $DIR/usb
    fi
    fi

    # run commands
    ...