Risposte:
Il udisks
comando è molto probabilmente quello che stai cercando.
Mentre sudo unmount /dev/sdXY
funzionerà, udisks può farlo senza permessi di livello root (sudo).
Se si dispone di un'unità /dev/sdXY
, montata, dove X è una lettera che rappresenta il disco USB e Y è il numero di partizione (in genere 1), è possibile utilizzare i seguenti comandi per rimuovere l'unità in modo sicuro:
udisks --unmount /dev/sdXY
udisks --detach /dev/sdX
Per un esempio pratico, se ho /dev/sdb1
montato la partizione , la eseguo per smontarla e staccarla:
udisks --unmount /dev/sdb1
udisks --detach /dev/sdb
Inizialmente ho trovato questo attraverso questa domanda: https://superuser.com/a/430470/176493 .
Nelle nuove distribuzioni di Ubuntu (non sono sicuro di quando si è verificato lo switch), udisks2 è installato invece di udisks.
Mirroring dei comandi sopra, per smontare e scollegare un disco con udisks2:
udisksctl unmount -b /dev/sdXY
udisksctl power-off -b /dev/sdX
Esempio se il mio disco è /dev/sdb1
:
udisksctl unmount -b /dev/sdb1
udisksctl power-off -b /dev/sdb
Detach failed: Not Authorized
quando provo a eseguirlo senza i privilegi di root. (Non è un problema serio, ma una piccola correzione.)
udisks
.
sudo
, ma ho anche umount
ed prima di provare --detach
. È una versione fidata del server Ubuntu.
L'effettivo equivalente dell'operazione di montaggio / smontaggio Nautilus è gvfs-mount -m -d /dev/ice /some/directory
e gvfs-mount -u /some/directory
. Questo utilizza la stessa API utilizzata da Nautilus, il file system virtuale GIO (gvfs), che fornisce diversi strumenti per utilizzare diversi servizi come punti di montaggio, come smb, NFS, FTP, dispositivi a blocchi, ecc.
Per identificare quale dispositivo è necessario smontare basta usare gvfs-mount -l
quale dovrebbe essere sufficiente.
Questa soluzione ha la particolarità che non richiede autorizzazioni elevate, poiché tutto è gestito dai servizi umount / gvfsd / polkit, che ricorda ulteriormente la somiglianza con il comportamento di Nautilus.
udisks
(suggerito in altre risposte) come "il modo in cui" gli utenti non root montano e smontano i dischi rimovibili sul desktop, come indicato qui gvfs-mount
possono utilizzare altri meccanismi. (Sul mio sistema Ubuntu MATE Utopic, il pacchetto udisks non è nemmeno installato.)
gio
quale è il sostituto di gvfs-mount.
Una volta che conosci il dispositivo, possibilmente usando le df
informazioni come nella risposta @rcpao , il modo migliore per "espellere" il disco è, imho, usando lo stesso comando che utilizza l'interfaccia grafica:
udisksctl unmount --block-device /dev/sdc1
Ho uno script per fare un backup su un disco che so verrà montato sotto /media/romano/movlin
, e dopo il backup faccio:
sync
udisksctl unmount -b $(mount | grep movlin | cut -d" " -f1)
Qui, mount | grep movlin | cut -d" " -f1
estrarrà il dispositivo che è montato sotto l'etichetta "movlin", (sarebbe /dev/sdc1
in quel caso), e poi lo smonta.
sync
prima udisksctl unmount
?
sync; sync; sync && poweroff
...
udisks
non è più presente di default in Ubuntu udisksctl
potrebbe essere una soluzione preferita. udisksctl power-off --block-device /dev/sdc
spegne la luce su un'unità flash USB esterna in modo che possa essere adatto come il prossimo comando per seguire il tuo.
df per trovare il punto di montaggio della tua unità 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
Smontare usando / dev / sdc1 o / media / rcpao / SD024-64GB.
rcpao@bun:~$ sudo umount /dev/sdc1
[sudo] password for rcpao:
rcpao@bun:~$
o
rcpao@bun:~$ sudo umount /media/rcpao/SD024-64GB
[sudo] password for rcpao:
rcpao@bun:~$
Dovresti essere in grado di vedere l'icona di espulsione dell'unità flash scomparire in nautilus non appena umount termina.
df
sembra molto utile per identificare dove si trova il dispositivo.
udisks --detach
è utile per staccare completamente le unità dopo lo smontaggio.
df
e umount
sono utility UNIX standard. È sempre bene conoscerli, perché funzioneranno sempre, mentre udisks
dipende da dbus e udisksd in esecuzione .
cp /path/to /drive && umount drive
. Questo ha reso 2 unità flash (temporaneamente) non scrivibili fino a quando ho capito che era il comando a causarlo. L'esecuzione di "Scansione e riparazione" su un computer Windows ha corretto le unità. La risposta di DaboRoss qui sotto è molto più sicura.
eject
dal pacchetto di espulsione :
sudo eject /dev/sdX
appare a umount
tutte le partizioni e porta il dispositivo in uno stato che è necessario rimuovere e ricollegarlo per rimontarlo.