Risposte:
No. Né devono esserlo; ejectviene utilizzato per aprire le unità ottiche, dove non è possibile estrarre direttamente il supporto.
Lo smontaggio è sufficiente per USB / eSATA / ecc. dispositivi di memoria.
syncprima di
eject, il driver del dispositivo USB sottostante potrebbe ancora (provare a) scrivere DOPO che umountè tornato. Questo può essere visto chiaramente se l'unità ha un LED di stato. Tirare la chiavetta USB subito dopo il umounttermine è RICETTA PER DISASTER.
Sì. Per esempio:
sudo eject /dev/sda
Altre risposte qui che indicano che è necessario l'hardware di espulsione meccanica non sono corrette.
Lo smontaggio non è la stessa cosa dell'espulsione.
sudoper terminare questo comando (tutto ciò che avrebbe fatto era smontare l'unità prima di dire che non era in grado di aprire il file). Oltre a ciò, risposta utile.
ejectfunzionerà, ma in realtà non "completerà il lavoro" per quanto riguarda le unità rotanti USB .
Il modo migliore per scollegare un disco rigido esterno USB, dopo un corretto smontaggio , è:
udisks --detach /dev/sdb
Questo di solito provoca il rallentamento dell'unità.
Proprio l' attuale implementazione :
Questo processo è vicino alla procedura manuale che è suggerita qui . La risposta iniziale era su askubuntu .
EDIT: Inoltre, come sottolinea g.rocket , questo comando può essere equivalente:
udisksctl power-off -b /dev/sdb
udisksctlche non ha --detachotion è disponibile. Cosa fare in questo caso? grazie.
udisks.
udisks? Non è sul mio sistema. Ho trovato il pacchetto udisks2, ma non è stato reso disponibile udiskso udisks2disponibile.
udisksctl power-off -b /dev/sdwhateversembra fare la stessa cosa.
Passaggi manuali per smontare disco / dev / sdb (richiede sudo):
echo 'offline' > /sys/block/sdb/device/state
echo '1' > /sys/block/sdb/device/delete
Ciò spegnerà completamente il dispositivo e lo staccherà dal sistema. Non verrà più rilevato fino a quando non viene disconnesso e ricollegato.
hdparm -Yè utile anche per le unità SATA / IDE.
Se leggi attentamente la pagina man di espulsione (1) puoi vedere che ci sono 4 metodi di espulsione:
-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.
Quando si chiama espulsione su HDD / SCSI, emette il ioctl(fd, SG_IO, (void *)&io_hdr);comando (copia da eject.cfonti).
Ciò equivale alla rimozione sicura del dispositivo in MS Windows o MaxOSX.
Per alcuni dispositivi questo ha un significato speciale. Ad esempio Kindle 3 dopo che il comando di espulsione è stato spostato in modalità di ricarica e consente la navigazione sul dispositivo, mentre prima lo schermo era bloccato.
Un'altra utility fa la stessa cosa, in questo modo
scsi-spin --force --down /dev/sda
"Espulsione" non ha alcun significato per l'hardware senza un vassoio o un altro meccanismo di caricamento (suppongo che funzioni anche con le unità nastro).
Tuttavia, il test con un'unità flash USB esterna indica che ejectfunziona in modo molto simile umount: con l'effetto collaterale di far scomparire i nodi del dispositivo, ad es
% ls /dev/sdc*
/dev/sdc /dev/sdc1
% sudo eject /dev/sdc
% ls /dev/sdc*
/dev/sdc
Si noti che /dev/sdc1è scomparso.
mt rewofflè più conveniente perché riavvolge anche), ma fa il lavoro con le unità floppy motorizzati come quelli trovati su vecchi Mac e workstation Sun.
udisks --detach /dev/sdXdove (X) è l'ultima lettera del dispositivo USB. Funziona bene su qualsiasi sistema Linux.
OK proverò a spiegarlo meglio:
Il comando udisks rimuove e spegne completamente qualsiasi dispositivo USB montato o collegato nel comando di smontaggio del sistema, basta smontare la partizione, ad esempio: dev / sdb1 o qualsiasi altra cosa, ma l'USB è ancora presente nel sistema.
Quindi non è lo stesso smontaggio, espulsione e distacco
udisks = spegni l'USB
umount = basta smontare la partizione e non l'intero pendrive
eject = uguale o molto vicino al comando umount
eject /dev/sdXèsg_start -s /dev/sdX(dalsg3_utilspacchetto), entrambi utilizzano i comandi SCSI per inviare al dispositivo.