Respuestas:
No. Tampoco necesitan serlo; eject
se usa para abrir unidades ópticas, donde no se puede extraer el medio directamente.
Desmontar es suficiente para USB / eSATA / etc. dispositivos de almacenamiento.
sync
antes de sacarlo
eject
hace, el controlador de dispositivo USB subyacente aún puede (intentar) escribir DESPUÉS de que umount
haya regresado. Esto se puede ver claramente si la unidad tiene un LED de estado. Tirar de la memoria USB justo después de que umount
termine es RECETA PARA DESASTRES.
Si. Por ejemplo:
sudo eject /dev/sda
Otras respuestas aquí que indican que necesita hardware de expulsión mecánica son incorrectas.
Desmontar no es lo mismo que expulsar.
sudo
para que este comando terminara (todo lo que haría sería desmontar la unidad antes de decir que no podía abrir el archivo). Aparte de eso, respuesta útil.
eject
funcionará, pero en realidad no "terminará el trabajo" con respecto a las unidades giratorias USB .
La mejor manera de desconectar un disco duro externo USB, después del desmontaje adecuado , es:
udisks --detach /dev/sdb
Esto generalmente hace que la unidad gire hacia abajo con gracia.
Precisamente, la implementación actual :
Este proceso está cerca del procedimiento manual que se sugiere aquí . La respuesta inicial fue en askubuntu .
EDITAR: Además, como señala g.rocket , este comando puede ser equivalente:
udisksctl power-off -b /dev/sdb
udisksctl
que no tiene --detach
otion está disponible. ¿Qué hacer en este caso? gracias.
udisks
.
udisks
? No está en mi sistema. Encontré el paquete udisks2
, pero eso no lo hizo udisks
ni estaba udisks2
disponible.
udisksctl power-off -b /dev/sdwhatever
parece hacer lo mismo.
Pasos manuales para desmontar disco / dev / sdb (Requiere sudo):
echo 'offline' > /sys/block/sdb/device/state
echo '1' > /sys/block/sdb/device/delete
Esto apagará completamente el dispositivo y lo desconectará del sistema. No se detectará nuevamente hasta que se desconecte y vuelva a conectar.
hdparm -Y
También es útil para las unidades SATA / IDE.
Si lee detenidamente la página del manual eject (1) , puede ver que hay 4 métodos de expulsión:
-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.
Cuando llama a expulsar en HDD / SCSI, emite un ioctl(fd, SG_IO, (void *)&io_hdr);
comando (copiar de las eject.c
fuentes).
Esto es equivalente a la eliminación segura del dispositivo en MS Windows o MaxOSX.
Para algunos dispositivos esto tiene un significado especial. Por ejemplo, Kindle 3 después de que el comando de expulsión se haya movido al modo de carga y permita navegar en el dispositivo, antes de que la pantalla estuviera bloqueada.
Otras utilidades hacen lo mismo, como esta
scsi-spin --force --down /dev/sda
"Expulsar" no tiene sentido para el hardware sin una bandeja u otro mecanismo de carga (supongo que también funciona con unidades de cinta).
Sin embargo, las pruebas con una unidad flash USB externa indican que eject
funciona de manera similar umount
, con el efecto secundario de hacer que los nodos del dispositivo desaparezcan, por ejemplo
% ls /dev/sdc*
/dev/sdc /dev/sdc1
% sudo eject /dev/sdc
% ls /dev/sdc*
/dev/sdc
Tenga en cuenta que /dev/sdc1
ha desaparecido.
mt rewoffl
es más conveniente, ya que también se rebobina), pero hace el trabajo con unidades de disquete motorizados como las que se encuentran en viejas Mac y estaciones de trabajo Sun.
udisks --detach /dev/sdX
donde (X) es la última letra de su dispositivo usb. Funciona bien en cualquier sistema Linux.
OK, intentaré explicar esto mejor:
El comando udisks elimina y apaga completamente cualquier dispositivo usb montado o conectado en el comando de desmontaje del sistema, solo desmonta la partición, es decir: dev / sdb1 o lo que sea, pero el usb todavía está presente en el sistema.
Por lo tanto, no es lo mismo desmontar, expulsar y separar
udiscos = apagar el usb
umount = solo desmonta la partición, no todo el pendrive
expulsar = el mismo o muy cerca del comando umount
eject /dev/sdX
essg_start -s /dev/sdX
(delsg3_utils
paquete), ambos usan comandos SCSI para enviar al dispositivo.