web-dev-qa-db-fra.com

Utiliser un Sudo pour monter un disque externe sur un périphérique distant

Je travaille actuellement sur deux appareils, l'un testant l'autre. Ils sont basés sur le beaglebone black et fonctionnent sous Ubuntu 14.04. Mon problème est que je dois détecter et monter un stockage externe USB sur le périphérique testé mais à partir du périphérique de test.

J'ai essayé quelques commandes pour éviter d'entrer des mots de passe comme

sshpass -p <password> ssh [email protected] StrictHostKeyChecking=no "echo gra64nola | Sudo -S true mount /dev/sda1/ /media"

mais lorsque j'exécute cette ligne, rien ne se passe sur le périphérique distant. J'ai essayé plusieurs versions différentes sur cette ligne de commande, mais je suis perdu maintenant. Je ne sais pas comment faire ce que je veux.

Pour information je travaille sous node-red et j'exécute ces trois lignes de commande pour détecter et monter le périphérique. [email protected] est l'IP de l'appareil testé. Il est connecté par Ethernet sur un commutateur commun avec le test.

sshpass -p <password> ssh [email protected] StrictHostKeyChecking=no "echo gra64nola | Sudo -S true mount /dev/sda1/ /media"

sshpass -p <password> ssh [email protected] StrictHostKeyChecking=no "echo gra64nola | Sudo -S true umount /media"

sshpass -p <password> ssh [email protected] -o StrictHostKeyChecking=no "echo gra64nola |Sudo -S find /media/FINDME.txt"

le troisième est utilisé pour trouver un fichier permettant de vérifier si le port USB du périphérique fonctionne. Je ne veux pas que quelqu'un fasse tout mon travail, mais voudriez-vous savoir comment monter ce disque externe, s'il vous plaît?

Merci pour toute aide.

6
Incarcerion
Sudo -S true mount /dev/sda1/ /media

true ignore généralement les arguments qui lui sont transmis. La partie mount ... est donc complètement ignorée. Si vous voulez exécuter la commande mount, n'utilisez pas true. Il suffit de faire:

Sudo -S mount /dev/sda1/ /media

Regardez aussi dans:

5
muru