当我以用户身份在 Nautilus 中按“安全移除驱动器”到我的 USB 3.0 Transcent Storejet 25H3驱动器时,它会立即重新连接。
如果没有这种行为,我如何安全地删除它?
我认为唯一的解决方案是在 Ubuntu 中禁用自动挂载。我现在这样做了: 如何在 nautilus 的首选项中禁用自动挂载
但很遗憾,因为现在我的外部音乐库不再自动挂载了。
难道没有一个解决方案,硬盘在安全移除时不会重新安装?!
至少对这个 Ubuntu 有效:
$ lsb_release -d
Description: Ubuntu 14.04.1 LTS
Run Code Online (Sandbox Code Playgroud)
$ udisksctl mount --block-device /dev/$device
Run Code Online (Sandbox Code Playgroud)
...将以与自动挂载相同的样式挂载 /dev/xxx,
即 - 在/media/$USER/Disk_Label-or-UUID/
自动创建的最后一级目录中。
$ udisksctl unmount --block-device /dev/$device;
Run Code Online (Sandbox Code Playgroud)
...umount
以上内容,但不是'-eject' 存储卡/USB 读卡器内容。
$ gvfs-mount --eject "file:///media/$USER/DISK_LABEL"
Run Code Online (Sandbox Code Playgroud)
...最后似乎等于“安全删除”或“弹出”-并且无需立即重新安装。
注意:$ udisksctl power-off --block-device /dev/$device;
...否则将是一个“自然”的选择,但会受到立即重新安装的阻碍。
#! /bin/bash
#
for device in $(mount | grep "/media/$USER/" | cut -d" " -f1); do
echo Unmounting $device
udisksctl unmount --block-device $device
done
Run Code Online (Sandbox Code Playgroud)
如果你喜欢弹出,改变-f1
成-f3
的cut
命令,并与线udiskctl
带
gvfs-mount --eject "file://$device"
Run Code Online (Sandbox Code Playgroud)
(我认为 --- 您在正确引用带有空格的标签时可能会遇到问题;如果设备安装了多个分区,您会收到警告)。
$ lsblk
Run Code Online (Sandbox Code Playgroud)
... 将显示所有可用的块设备(除了 ram 磁盘,不需要 sudo)。
RAM 和循环 --> lsblk --all
.
调出 Dash(点击“超级”键)并输入“启动应用程序”,然后会出现“启动应用程序”,点击它。单击Add并在“名称”和“评论”字段中输入您想要的任何内容。然后用您的版本填写“命令”:
/bin/bash -c '/bin/sleep 5 && /usr/bin/udisksctl mount -b /dev/disk/by-label/GreenWD_3TB'
Run Code Online (Sandbox Code Playgroud)
.../dev/disk/by-label/GreenWD_3TB
从
展示中找到什么合适的ls -lR /dev/disk/* | less
归档时间: |
|
查看次数: |
6003 次 |
最近记录: |