Depuis des années, nous somme quelques acharnés à jeter aux orties la fameuse plateforme windows, au point que windows a intégré à l’heure actuelle la possibilité d’avoir un « Terminal » linux. (voir un de mes articles précédant)
Et WD, ayant une palmeraie dans le creux de la main, se refusait d’envisager un quelconque développement pour linux, le fameux WD Discover, mais heureusement, il existe une API que Marco Nenciarini a judicieusement utiliser ( https://github.com/mnencia/mchfuse )
Je me suis permis de traduire son article.
Système de fichiers My Cloud Home FUSE
MCHFuse est un système de fichiers FUSE pour le montage d’appareils Western Digital My Cloud Home .
Il rend disponible le stockage principale de votre appareil WD à l’aide de l’ API WD My Cloud Home Off-Device .
Conditions préalables
Pour compiler MCHFuse, vous devez au moins passer à la version 1.13.
Installation de la dernière version
Pour installer rapidement le dernier binaire pré-construit de MCHFuse, vous pouvez exécuter la commande suivante:
curl -sSfL https://github.com/mnencia/mchfuse/raw/main/install.sh | sudo sh -s - -b / usr / local / bin
Installation à partir de la source
- Installez la suite de compilateurs Go et créez; par exemple sur Ubuntu:
sudo apt-get install git golang-go ca-certificates make
- Ensuite faite un clonage local du projet MCHFuse :
git clone https://github.com/mnencia/mchfuse.git
- Ensuite, aller dans le répertoire installé pour en faire un make:
cd mchfuse make
- Après la construction, vous trouvez un
mchfuse
exécutable à la racine du projet. - Si vous souhaitez rendre
mchfuse
disponible en tant que commande système, installez-le
sudo make install
Démarrage rapide
Vous pouvez monter votre appareil à l’aide de la commande suivante:
cat > mchfuse.conf << 'EOF' username = "EMAIL" password = "PASSWORD" EOF chmod 600 mchfuse.conf mchfuse -c mchfuse.conf DEVICE_NAME MOUNT_POINT
Les EMAIL
et PASSWORD
sont ceux utilisés pour accéder à https://home.mycloud.com/ .
Le DEVICE_NAME
est le nom attribué à l’appareil lors de la configuration initiale.
Si vous utilisez un nom incorrect, le message d’erreur qui en résulte contient la liste des noms de périphériques découverts valides.
Note de bas de page: les noms d’appareils semi-automatiques contiennent un guillemet simple. Pour entrer une telle chaîne sur une ligne de commande, vous devez la mettre entre guillemets.
Remplacez MOUNT_POINT
par le chemin réel où vous souhaitez voir le contenu de l’appareil. (par exemple /mnt/mydevice
)
Après la dernière commande, vous devriez voir le contenu du périphérique monté disponible dans le dossier du point de montage.
REMARQUE: le système de fichiers ne sera accessible qu’à partir de l’utilisateur qui a exécuté la
mchfuse
commande sauf si vous spécifiez l’indicateur--allow-other
soit sur la ligne de commande ou dans le fichier de configuration (ieallow-other = true
)
Vous pouvez démonter l’appareil à l’aide de la commande umount
habituelle :
unmount MOUNT_POINT
Usage
Usage: mchfuse [flags] deviceName[:devicePath] mountpoint
-c, --config string config file path
-u, --username string mycloud.com username
-p, --password string mycloud.com password
-a, --allow-other allow other users
-U, --uid int set the owner of the files in the filesystem (default disabled)
-G, --gid int set the group of the files in the filesystem (default disabled)
-f, --foreground do not demonize
-d, --debug activate debug output (implies --foreground)
-h, --help display this help and exit
-v, --version display the version and exit
Toutes les options peuvent être spécifiées dans un fichier de configuration au format:
flag-name = valeur
Vous pouvez transmettre la configuration à l’aide de l’indicateur --config
, sinon mchfuse
charge les options à partir de /etc/mchfuse.conf
si elle existe et est lisible.
Si vous ne spécifiez pas d’UID ou de GID, il hérite du paramètre par défaut de l’utilisateur qui exécute la commande.
Le mountpoint
est n’importe quel répertoire accessible pour l’utilisateur actuel. Si le chemin n’existe pas, MCHFuse essaiera de le créer.
NOTE: se
mchfuse
diaboliser, d’éventuelles erreurs soulevées par le processus d’arrière-plan finiront dans le syslog avec la priorité AVIS et la balise « mchfuse ».
Montures persistantes
Pour garder votre volume monté sur votre système lors des redémarrages, créez un montage persistant. Ceci est accompli en mettant à jour le fichier /etc/fstab
de votre système .
Mettre à jour fstab
(très mauvais plan !)
Sur une nouvelle ligne, ajoutez une directive de montage à votre fichier/etc/fstab
qui correspond à la syntaxe suivante:
deviceName[:devicePath] mountpoint fuse.mchfuse noauto,x-systemd.automount,_netdev,allow_other 0 0
Vous pouvez spécifier n’importe quelle option disponible sur la ligne de commande en l’ajoutant dans le champ contenant noauto,x-systemd.automount,_netdev,allow_other
séparé par des virgules. Veuillez éviter d’utiliser des paramètres explicites username
et password
, car ils seront lisibles à la fois dans le /etc/fstab
fichier et dans la liste des processus système. Utilisez le fichier de configuration par défaut /etc/mchfuse.conf
ou spécifiez-en un en utilisant l’option config
à la place.
REMARQUE Vous devrez utiliser les privilèges sudo pour modifier ce fichier à partir de votre compte utilisateur qui est limité.
Après avoir configuré la ligne /etc/fstab
, redémarrez votre système. Ensuite, répertoriez le contenu du répertoire monté. Vous devriez voir le contenu de votre appareil.
Autre solution : modifier votre .bashrc !
./mchfuse/mchfuse -c /etc/mchfuse.conf MonMEDIA /media/WD/
Pourquoi utiliser la soluce bashrc ?
Tout simplement parce que le mount se fera en tant que root, donc, seul root aura les droits R/W sur le disque et non pas l’utilisateur, tandis qu’avec la solution du .bashrc, l’admin sera le profil duquel il aura été lancé !