Comment accéder à un lecteur flash usb depuis le terminal ?

Je n'ai accès qu'à la ligne de commande.
J'ai besoin de sauvegarder mes données (sur le dossier utilisateur) sur un stylo (USB DOK).

  • Comment puis-je monter un lecteur flash manuellement ?
  • Quelle doit être la commande de copie ?
Solution

1. Trouvez le nom du lecteur

Vous devez savoir comment s'appelle le disque pour pouvoir le monter. Pour ce faire, lancez l'une des commandes suivantes (classées par ordre de préférence) :

lsblk
sudo blkid
sudo fdisk -l

Vous recherchez une partition qui devrait ressembler à quelque chose comme.. : /dev/sdb1. Plus vous avez de disques, plus cette lettre est élevée. Quoi qu'il en soit, trouvez-la et rappelez-vous comment elle s'appelle.

2. Créez un point de montage (facultatif)

Il doit être monté dans le système de fichiers quelque part. Vous pouvez généralement utiliser /mnt/ si vous êtes paresseux et que rien d&#8217autre n&#8217est monté à cet endroit, mais sinon vous devrez créer un nouveau répertoire :

sudo  mkdir /media/usb

3. Montez !

sudo mount /dev/sdb1 /media/usb

Quand vous avez fini, tirez :

sudo umount /media/usb

Cette réponse date d'il y a presque 6 ans et bien que le noyau de cette réponse fonctionne toujours, des choses comme fdisk -l ne sont pas les options les plus conviviales. Il y a aussi de nouveaux mécanismes dans les piles supérieures pour monter les périphériques d'une manière saine et standard qui ne sont pas toujours disponibles.

C'est pourquoi j'ai ajouté quelques éléments de polissage provenant des autres réponses. Si vous lisez cette note de bas de page et que vous faites ceci sur un système de bureau, il y a certainement des arguments pour [utiliser udisksctl, selon la réponse de wecac] (https://askubuntu.com/a/865453/449). Le montage s'effectue de la même manière que sur un ordinateur de bureau -créant votre propre répertoire /media/$USER/device- mais je pense qu'il y a toujours des arguments en faveur d'un point de montage statique, surtout lorsque vous ne voulez pas que le chemin change.

Udisks s'appuie également sur D-Bus, et n'est donc pas forcément disponible partout.

Commentaires (1)

En plus d'utiliser la commande standard mount (qui nécessite root), vous pouvez monter des disques en utilisant udisks et dbus avec votre utilisateur standard.

Pour ce faire, il est utile (mais pas obligatoire) de connaître quelques informations sur le disque :

  1. Quel est son périphérique (i.e. /dev/sdb1)
  2. quel système de fichiers il utilise.

En sachant cela, vous pouvez utiliser une commande simple pour monter un lecteur à partir de la ligne de commande.

gdbus call --system --dest org.freedesktop.UDisks --object-path /org/freedesktop/UDisks/devices/ --method org.freedesktop.UDisks.Device.FilesystemMount "" []

si le montage réussit, cet appel doit renvoyer le chemin d'accès au disque monté.

Pour démonter les disques montés de cette manière, vous pouvez exécuter :

gdbus call --system --dest org.freedesktop.UDisks --object-path /org/freedesktop/UDisks/devices/ --method org.freedesktop.UDisks.Device.FilesystemUnmount []

N.B. le est simplement la fin du chemin d'accès. Donc, par exemple, si ce que vous voulez monter se trouve sur `/dev/sdb2`, vous mettrez `sdb2` à la place de.


Si vous ne savez pas de quel périphérique il s'agit ou quel système de fichiers il utilise, n'ayez crainte. Vous pouvez facilement imprimer toutes ces informations avec cette petite commande :

gdbus introspect --system --dest org.freedesktop.UDisks --object-path /org/freedesktop/UDisks/devices --recurse --only-properties | grep -E "(readonly .+ (IdLabel|IdType|Device(IsMounted|IsDrive|File) ).*|\}|.*\{)"

Vous obtiendrez quelque chose comme ceci :

node /org/freedesktop/UDisks/devices {
  node /org/freedesktop/UDisks/devices/sda {
    interface org.freedesktop.UDisks.Device {
        readonly s IdLabel = '';
        readonly s IdType = '';
        readonly s IdUsage = '';
        readonly b DeviceIsMounted = false;
        readonly s DeviceFile = '/dev/sda';
    };
  };
  node /org/freedesktop/UDisks/devices/sda1 {
    interface org.freedesktop.UDisks.Device {
        readonly s IdLabel = 'SYSTEM';
        readonly s IdType = 'ntfs';
        readonly s IdUsage = 'filesystem';
        readonly b DeviceIsMounted = false;
        readonly s DeviceFile = '/dev/sda1';
    };
  };
  node /org/freedesktop/UDisks/devices/sda2 {
    interface org.freedesktop.UDisks.Device {
        readonly s IdLabel = 'Windows7';
        readonly s IdType = 'ntfs';
        readonly s IdUsage = 'filesystem';
        readonly b DeviceIsMounted = true;
        readonly s DeviceFile = '/dev/sda2';
    };
  };
  node /org/freedesktop/UDisks/devices/sda3 {
    interface org.freedesktop.UDisks.Device {
        readonly s IdLabel = 'Recovery';
        readonly s IdType = 'ntfs';
        readonly s IdUsage = 'filesystem';
        readonly b DeviceIsMounted = false;
        readonly s DeviceFile = '/dev/sda3';
    };
  };
  node /org/freedesktop/UDisks/devices/sda4 {
    interface org.freedesktop.UDisks.Device {
        readonly s IdLabel = '';
        readonly s IdType = '';
        readonly s IdUsage = '';
        readonly b DeviceIsMounted = false;
        readonly s DeviceFile = '/dev/sda4';
    };
  };
  node /org/freedesktop/UDisks/devices/sda5 {
    interface org.freedesktop.UDisks.Device {
        readonly s IdLabel = '';
        readonly s IdType = 'ext4';
        readonly s IdUsage = 'filesystem';
        readonly b DeviceIsMounted = true;
        readonly s DeviceFile = '/dev/sda5';
    };
  };
  node /org/freedesktop/UDisks/devices/sda6 {
    interface org.freedesktop.UDisks.Device {
        readonly s IdLabel = '';
        readonly s IdType = 'swap';
        readonly s IdUsage = 'other';
        readonly b DeviceIsMounted = false;
        readonly s DeviceFile = '/dev/sda6';
    };
  };
  node /org/freedesktop/UDisks/devices/sda7 {
    interface org.freedesktop.UDisks.Device {
        readonly s IdLabel = '';
        readonly s IdType = 'ext4';
        readonly s IdUsage = 'filesystem';
        readonly b DeviceIsMounted = true;
        readonly s DeviceFile = '/dev/sda7';
    };
  };
  node /org/freedesktop/UDisks/devices/sdb {
    interface org.freedesktop.UDisks.Device {
        readonly s IdLabel = '';
        readonly s IdType = '';
        readonly s IdUsage = '';
        readonly b DeviceIsMounted = false;
        readonly s DeviceFile = '/dev/sdb';
    };
  };
  node /org/freedesktop/UDisks/devices/sdb1 {
    interface org.freedesktop.UDisks.Device {
        readonly s IdLabel = 'USB DRIVE';
        readonly s IdType = 'vfat';
        readonly s IdUsage = 'filesystem';
        readonly b DeviceIsMounted = false;
        readonly s DeviceFile = '/dev/sdb1';
    };
  };
  node /org/freedesktop/UDisks/devices/sr0 {
    interface org.freedesktop.UDisks.Device {
        readonly s IdLabel = '';
        readonly s IdType = '';
        readonly s IdUsage = '';
        readonly b DeviceIsMounted = false;
        readonly s DeviceFile = '/dev/sr0';
    };
  };
};

Ceux qui ont IdUsage = 'filesystem' peuvent être montés en utilisant la commande ci-dessus.

Cela signifie que, par exemple, si je veux monter le périphérique 'USB DRIVE&#39 ; je dois exécuter la commande suivante

gdbus call --system --dest org.freedesktop.UDisks --object-path /org/freedesktop/UDisks/devices/sdb1 --method org.freedesktop.UDisks.Device.FilesystemMount "vfat" []

Ces commandes fonctionnent toutes en utilisant le système de messagerie dbus, de la même manière que Nautilus et d'autres gestionnaires de fichiers montent automatiquement les choses. Dans ces commandes, nous envoyons à divers objets (par exemple /org/freedesktop/... des messages leur demandant de monter et démonter certains périphériques. Ils peuvent ou non le faire en fonction des permissions qui leur ont été données dans PolicyKit.

En utilisant des commandes similaires, on peut contrôler presque tous les aspects de l'expérience Ubuntu et simuler la plupart des programmes et fonctions du système (par exemple l'arrêt, le changement de volume, etc.).

Commentaires (1)

C'est simple. Lorsque je veux utiliser un lecteur usb dans le terminal, je fais ceci :

Créer un dossier dans /media avec :

mkdir /media/mountDrive 

Ce dossier sera utilisé comme point de montage. Utilisez cette commande :

sudo mount /dev/sdd1 /media/mountDrive 

sdd1 est la première partition de mon USB. Ensuite vous pouvez naviguer dans le dossier que vous avez déjà monté avec

cd /media/mountDrive

Si vous voulez lister les fichiers du disque, vous pouvez utiliser la commande ls.

Pour démonter le lecteur, vous pouvez utiliser

sudo umount /dev/sdd1

Notez que dans mon système le lecteur usb est /dev/sdd1, mais dans votre système il peut être quelque chose de différent. Pour savoir ce que c'est, utilisez la commande df pour voir tous les disques connectés au moment présent.

Commentaires (0)