Je sais que la command d' eject
peut être utilisée pour éjecter presque n'importe quel composant matériel connecté, mais peut-elle être utilisée pour éjecter des lecteurs USB?
Est-il possible d'éjecter des lecteurs USB et des disques durs externes avec la command d' eject
?
Non. Ils n'ont pas non plus besoin d'être; eject
est utilisé pour ouvrir les lecteurs optiques, où l'on ne peut pas tirer le média directement.
Le déassembly est suffisant pour USB / eSATA / etc. périphériques de stockage.
Oui. Par exemple:
sudo eject /dev/sda
D'autres réponses qui indiquent que vous avez besoin d'un matériel d'éjection mécanique sont incorrectes.
Déassembly n'est pas la même chose que l'éjection.
eject
fonctionnera, mais ne sera pas vraiment "terminer le travail" en ce qui concerne les lecteurs rotatifs USB.
La meilleure façon de détwigr un disque dur externe USB après un déassembly correct est la suivante:
udisks --detach /dev/sdb
Cela entraîne généralement le lecteur à tourner avec élégance.
Précisément, la mise en œuvre actuelle :
Ce process est proche de la procédure manuelle suggérée ici . La réponse initiale était sur askubuntu .
EDIT: Aussi, comme g.rocket l' indique, cette command peut être équivalente:
udisksctl power-off -b /dev/sdb
"Ejecter" n'a aucune signification pour le matériel sans plateau ou autre mécanisme de chargement (je suppose qu'il fonctionne aussi avec les lecteurs de bande).
Cependant, le test avec une key USB externe indique que l' eject
fonctionne comme umount
– avec l'effet secondaire de faire disparaître les noeuds de l'appareil, par exemple
% ls /dev/sdc* /dev/sdc /dev/sdc1 % sudo eject /dev/sdc % ls /dev/sdc* /dev/sdc
Notez que /dev/sdc1
a disparu.
Si vous lisez attentivement la page de manuel d' éjection (1) , vous pouvez voir qu'il existe 4 methods d'éjection:
-r This option specifies that the drive should be ejected using a CDROM eject command. -s This option specifies that the drive should be ejected using SCSI commands. -f This option specifies that the drive should be ejected using a remov‐ able floppy disk eject command. -q This option specifies that the drive should be ejected using a tape drive offline command.
Lorsque vous appelez éjecter sur disque dur / SCSI ioctl(fd, SG_IO, (void *)&io_hdr);
command (copy de sources eject.c
).
Ceci est équivalent lorsque vous retirez le périphérique en toute security dans MS Windows ou MaxOSX.
Pour certains appareils cela a un moyen spécial. Par exemple, le Kindle 3 après l' éjection de la command a été déplacé en mode de chargement et autorisé la navigation sur le périphérique, alors que l'écran était verrouillé.
Un autre utilitaire fait la même chose, comme ça
scsi-spin --force --down /dev/sda
Dans la command line osx, vous devriez utiliser diskutil où LABEL est l'label de votre lecteur USB.
diskutil eject /Volumes/<LABEL>
udisks --detach /dev/sdX
où (X) est la dernière lettre de votre périphérique USB. Cela fonctionne bien sur n'importe quel système Linux.
OK, je vais essayer d'expliquer cela mieux:
udisks command complètement retirer et mettre hors tension tout périphérique USB monté ou attaché dans la command de déassembly du système juste démonter la partition c'est à dire: dev / sdb1 ou autre chose, mais l'USB est toujours présent dans le système.
Ce n'est donc pas le même déassembly, éjection et détachement
udisks = éteindre l'usb
umount = démontez simplement la partition et non la pendrive entière
éjecter = la même ou très proche de la command umount
Étapes manuelles pour démonter le disque / dev / sdb (Requiert sudo):
echo 'offline' > /sys/block/sdb/device/state echo '1' > /sys/block/sdb/device/delete
Cela éteindra complètement l'appareil et le détachera du système. Il ne sera pas détecté à nouveau jusqu'à ce qu'il soit déconnecté et ré-attaché.