Respostas:
O udisks
comando provavelmente é o que você está procurando.
Embora sudo unmount /dev/sdXY
funcione, os udiscos podem fazer isso sem as permissões no nível da raiz (sudo).
Se você possui uma unidade /dev/sdXY
montada, em que X é uma letra que representa seu disco USB e Y é o número da partição (geralmente 1), você pode usar os seguintes comandos para remover a unidade com segurança:
udisks --unmount /dev/sdXY
udisks --detach /dev/sdX
Para um exemplo prático, se eu tiver a partição /dev/sdb1
montada, eu executaria isso para desmontar e desanexá-la:
udisks --unmount /dev/sdb1
udisks --detach /dev/sdb
Originalmente, encontrei isso através desta pergunta: https://superuser.com/a/430470/176493 .
Nas distribuições mais recentes do ubuntu (não tenho certeza de quando a troca ocorreu), o udisks2 é instalado em vez dos udisks.
Espelhando os comandos acima, para desmontar e desanexar um disco com udisks2:
udisksctl unmount -b /dev/sdXY
udisksctl power-off -b /dev/sdX
Exemplo se minha unidade for /dev/sdb1
:
udisksctl unmount -b /dev/sdb1
udisksctl power-off -b /dev/sdb
Detach failed: Not Authorized
quando tento executá-lo sem privilégios de root. (Não é um problema sério, mas uma pequena correção.)
udisks
.
sudo
, mas também umount
ed antes de tentar --detach
. É uma versão confiável do servidor ubuntu.
O equivalente real à operação Nautilus Mount / Unmount é gvfs-mount -m -d /dev/ice /some/directory
e gvfs-mount -u /some/directory
. Ele usa a mesma API usada pelo Nautilus, sistema de arquivos virtual GIO (gvfs), que fornece ferramentas diferentes para usar vários serviços como pontos de montagem, como smb, NFS, FTP, dispositivos de bloco etc.
Para identificar qual dispositivo você precisa desmontar, basta usar o gvfs-mount -l
que deve ser suficiente.
Essa solução possui a peculiaridade de que não requer permissões elevadas, pois tudo é gerenciado pelos serviços umount / gvfsd / polkit, que se assemelham ainda mais à semelhança com o comportamento do Nautilus.
udisks
(sugerido em outras respostas) como "o modo como" os usuários não raiz montam e desmontam discos removíveis na área de trabalho, conforme indicado aqui, gvfs-mount
podem usar outros mecanismos. (No meu Ubuntu MATE sistema utópico, o pacote udisks é nem mesmo instalado.)
gio
que é o substituto do gvfs-mount.
Depois de conhecer o dispositivo, possivelmente usando as df
informações da resposta @rcpao , a melhor maneira de "ejetar" o disco é, imho, usando o mesmo comando que a interface gráfica está usando:
udisksctl unmount --block-device /dev/sdc1
Eu tenho um script para fazer um backup em um disco no qual eu sei que será montado /media/romano/movlin
e, após o backup, eu faço:
sync
udisksctl unmount -b $(mount | grep movlin | cut -d" " -f1)
Aqui, mount | grep movlin | cut -d" " -f1
extrairá o dispositivo que está montado sob o rótulo "movlin", (seria /dev/sdc1
nesse caso) e, em seguida, desmontará.
sync
antes udisksctl unmount
?
sync; sync; sync && poweroff
...
udisks
não está mais presente por padrão no Ubuntu, udisksctl
pode ser uma solução preferida. udisksctl power-off --block-device /dev/sdc
apaga a luz em uma unidade flash USB externa, para que possa ser o próximo comando a seguir o seu.
df para encontrar o ponto de montagem da sua unidade flash.
rcpao@bun:~$ df
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/mapper/ubuntu--vg-root 1916153032 658404668 1160390336 37% /
none 4 0 4 0% /sys/fs/cgroup
udev 16438692 4 16438688 1% /dev
tmpfs 3289976 2156 3287820 1% /run
none 5120 0 5120 0% /run/lock
none 16449860 18768 16431092 1% /run/shm
none 102400 48 102352 1% /run/user
/dev/sda1 240972 98990 129541 44% /boot
/dev/sdc1 60915712 20992 60894720 1% /media/rcpao/SD024-64GB
Desmonte usando / dev / sdc1 ou / media / rcpao / SD024-64GB.
rcpao@bun:~$ sudo umount /dev/sdc1
[sudo] password for rcpao:
rcpao@bun:~$
ou
rcpao@bun:~$ sudo umount /media/rcpao/SD024-64GB
[sudo] password for rcpao:
rcpao@bun:~$
Você poderá ver o ícone de ejeção da unidade flash desaparecer no nautilus assim que a quantidade terminar.
df
parece muito útil para identificar onde está o dispositivo.
udisks --detach
é útil para desconectar unidades completamente após desmontar.
df
e umount
são utilitários padrão do UNIX. É sempre bom conhecê-los, porque eles sempre funcionam, enquanto udisks
depende do dbus e de um udisksd em execução .
cp /path/to /drive && umount drive
. Isso transformou duas unidades flash (temporariamente) em graváveis até que eu percebi que era o comando que a causou. A execução de "Digitalizar e reparar" em uma máquina Windows corrigia as unidades. A resposta do DaboRoss abaixo é muito mais segura.
eject
do pacote de ejeção :
sudo eject /dev/sdX
aparece em umount
todas as partições e coloque o dispositivo em um estado que você deve remover e reconecte-o para remontar.