Comment accéder à une clé 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 devrait être la commande de copie?

1. Trouvez le nom du lecteur

Vous aurez besoin de savoir comment s'appelle le lecteur pour le monter. Pour ce faire, lancez l'un des éléments suivants (classés par ordre de préférence):

lsblksudo blkidsudo fdisk -l

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

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

Cela 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'autre n'y est monté, sinon vous voudrez créer un nouveau répertoire:

sudo  mkdir /media/usb

3. Mount!

sudo mount /dev/sdb1 /media/usb

Quand tu as fini, tire juste:

sudo umount /media/usb

Cette réponse a presque 6 ans et bien que le cœur de celle-ci fonctionne toujours, des choses comme fdisk -l ne sont pas les options les plus conviviales. Il existe également de nouveaux mécanismes dans des piles plus élevées pour monter des dispositifs de manière saine et standard qui peuvent ne pas toujours être disponibles.

J'ai donc ajouté un peu de vernis des autres réponses. Pendant que vous lisez cette note de bas de page et que vous le faites sur un système de bureau, il y a certainement des arguments pour utiliser udisksctl, par la réponse de wecac. Cela se monte de la même manière que le bureau-en créant le vôtre /media/$USER/device répertoire-mais je pense qu'il y a encore des arguments pour un point de montage statique, surtout quand vous ne voulez pas que le chemin change.

Udisks s'appuie également sur D-Bus, il se peut donc qu'il ne soit pas disponible partout.

pmount / pumount

Installer pmount. Monte des disques dans / media/

pmount /dev/sdb1pumount /dev/sdb1

Aucun sudo nécessaire.

Remplacez "sdb1" par le chemin d'accès spécifique à votre périphérique. Pour plus d'informations, consultez le page de manuel:

pmount  ("policy mount") is a wrapper around the standard mount programwhich permits normal users to mount removable devices without a  match-ing /etc/fstab entry.pmount is invoked like this:pmount device [ label ]This  will  mount  device  to a directory below /media if policy is met(see below). If label is given, the mount point will  be  /media/label,otherwise it will be /media/device.

Utiliser udisksctl du paquet=udisks2 (dans Ubuntu et Debian). La procédure est:

  1. Recherchez l'ID du périphérique de bloc que vous souhaitez monter, en utilisant lsblk:

    user@machine:~$ lsblkNAME   MAJ:MIN RM   SIZE RO TYPE MOUNTPOINTsda      8:0    0   1.8T  0 disk├─sda1   8:1    0  19.1M  0 part /boot/efi├─sda2   8:2    0   1.8T  0 part└─sda3   8:3    0    16G  0 part [SWAP]sdb      8:16   0 931.5G  0 disk├─sdb1   8:17   0    37M  0 part├─sdb2   8:18   0  15.9G  0 part [SWAP]└─sdb3   8:19   0 915.7G  0 part /sdc      8:32   1  14.4G  0 disk└─sdc1   8:33   1  14.4G  0 partsdd      8:48   0   1.8T  0 disk└─sdd1   8:49   0   1.8T  0 part

    De sa taille, /dev/sdc1 semble être la clé USB que je veux monter.

  2. Utiliser udisksctl pour monter l'appareil. Notez que -b == --block-device (pour réduire la saisie) mais je préfère les options longues pour la documentation:

    user@machine:~$ udisksctl mount --block-device /dev/sdc1==== AUTHENTICATING FOR org.freedesktop.udisks2.filesystem-mount ===Authentication is required to mount Kingston DT microDuo 3C (/dev/sdc1)Multiple identities can be used for authentication: 1.  XXXXX,,, (user) 2.  ,,, (YYYYY)Choose identity to authenticate as (1-2): 1Password:==== AUTHENTICATION COMPLETE ===Mounted /dev/sdc1 at /media/user/USBDRIVELABEL.

S'adresser à Hans Deragon commentaire ci-dessous: vous pouvez également dire udisksctl faire --no-user-interaction. Il ne tente pas d'authentifier l'utilisateur, ce qui "fonctionne"généralement:

user@machine:~$ udisksctl mount --block-device /dev/sdc1 --no-user-interaction# possibly some complaining here about I/O charset or need to run `fsck`Mounted /dev/sdc1 at /media/user/USBDRIVELABEL.

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

Pour ce faire, il est utile (mais pas obligatoire) de connaître d'abord quelques éléments sur le lecteur:

  1. De quel appareil il s'agit (i.e. /dev/sdb1)
  2. quel système de fichiers il utilise.

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

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

cet appel doit faire écho au chemin sur lequel il est monté si le montage réussit.

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/<device> --method org.freedesktop.UDisks.Device.FilesystemUnmount []

N.B. le <device> c'est simplement la fin du chemin qui y mène. Ainsi, par exemple, si ce que vous voulez monter est à /dev/sdb2 ensuite, vous mettriez sdb2 à la place de <device>.


Si vous ne savez pas de quel périphérique il s'agit ou quel système de fichiers il utilise, n'ayez pas peur. 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) ).*|\}|.*\{)"

Cela imprimera 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' peut être monté en utilisant la commande ci-dessus.

Cela signifie que, par exemple, si je voulais monter le périphérique "CLÉ USB", j'exécuterais la commande

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 dbus système de messagerie, de la même manière que Nautilus et d'autres gestionnaires de fichiers montent automatiquement des éléments. Dans ces commandes, nous envoyons divers objets (i.e. /org/freedesktop/... messages leur demandant de monter et de démonter certains appareils. Ils peuvent ou non le faire en fonction des autorisations qui leur ont été accordées PolicyKit.

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

Vous pouvez également monter automatiquement des périphériques USB sur le serveur Ubuntu à l'aide de USBmount.

Assurez-vous d'exécuter apt-get update / upgrade avant de lancer l'installation:

sudo apt-get update && sudo apt-get upgrade

Installez maintenant USBmount à partir des référentiels:

sudo apt-get install usbmount

USBmount monte toutes les clés USB dans /media/usb* (usb0, usb1, usb2 ...)

Branchez maintenant une clé USB et attendez qu'elle soit détectée et montée. Tant que le système d'exploitation hôte prend en charge le système de fichiers, il doit être monté.

Pour vérifier si la clé USB a été montée correctement, vous pouvez utiliser df -h pour afficher tous les lecteurs disponibles et leurs points de montage respectifs

Pour démonter un lecteur, vous pouvez utiliser umount.

sudo umount /media/usb0

C'est simple. Lorsque je veux utiliser une clé USB dans le terminal, je fais ceci:

Créer un dossier dans /media avec:

mkdir /media/mountDrive 

Ce dossier sera utilisé pour le 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 vers le dossier avec lequel vous avez déjà monté

cd /media/mountDrive

Si vous souhaitez répertorier les fichiers dans Drive, vous pouvez utiliser le ls commande.

Pour démonter le lecteur, vous pouvez utiliser

sudo umount /dev/sdd1

Notez que dans mon système, la clé USB est /dev/sdd1, mais dans votre système, cela peut être quelque chose de différent. Pour savoir de quoi il s'agit, utilisez le df commande pour voir tous les disques connectés à l'heure actuelle.

Je n'ajouterai pas sur la façon de monter le lecteur. Cependant, puisque le demandeur a également demandé quelle était la meilleure commande à utiliser pour copier les données, je répondrai à cela car il n'y a pas eu de réponse pour autant que je sache.

Je recommanderais d'abord de créer un dossier sur le lecteur (même s'il est vide) pour sauvegarder vos affaires afin de fournir une organisation. Quelque chose dans le sens de mkdir <mountpath>/mybackup tu devrais le faire.

Deuxièmement, j'utiliserais rsync pour tout copier. Faites quelque chose dans le sens de rsync -r ~/* <mountpoint>/mybackup. Vous pouvez également utiliser cp -r si vous le souhaitez, cependant, j'ai constaté que cela ne fait pas tout à fait tout ce que vous attendez tout le temps.