情况:Ubuntu 通过终端命令在系统上安装 USB 驱动器,与 Ubuntu 的 GUI 挂载配置相同
# http://askubuntu.com/q/648159/25388
gsettings set org.gnome.desktop.media-handling automount-open false
- 命令
ls /media/masi
给出空白。 - 您会在面板中看到磁盘图标。如果您单击它,文件管理器就会打开。现在,您可以
ls /media/masi
看到磁盘了。
我失败的剧本
USER="masi"
LABEL="MasiWeek" # https://unix.stackexchange.com/q/297425/16920
PARTION="sdb" #$(basename $(readlink $LABEL))
sudo mkdir -p /media/"$USER"/"$LABEL"
sudo mount /dev/"$PARTITION" /media/"$USER"/"$LABEL"
输出
mount: /dev is not a block device
系统:Linux Ubuntu 16.04 64位
硬件:Macbook Air 2013-mid
相关:当仅知道标签时查找分区的内核名称
答案1
由于 的定义中存在拼写错误,因此您的脚本无法运行PARTITION
。
因此,PARTITION
为空(而PARTION
包含您想要的内容)并且/dev/$PARTITION
变成/dev/
。
请注意,该变量$USER
已经包含用户名,因此无需设置它(除非您想从其他用户进行安装)。
答案2
相当于 Ubuntu GUI 中可移动媒体的挂载操作是
gvfs-mount -d device
或者
gvfs-mount --device=device
在哪里设备是块设备,例如/dev/sdb
。请注意,此命令以当前桌面会话的所有者身份执行,并将设备安装到目录中,而/media/<user>/<label>
不是安装到系统范围的安装点中,例如/mnt/<label>
。例如,安装 USB 记忆棒:
$ gvfs-mount --device=/dev/sdb
Mounted /dev/sdb at /media/steeldriver/KINGSTON
要确定命令中要使用的块设备gvfs-mount
,您可以使用blkid
,但是缓存可能无法准确反映可移动设备,因此您需要运行
sudo blkid -c /dev/null
该方法会在枚举设备之前清除缓存 - 但需要管理权限。对于非特权方法,您可以检查输出中gvfs-mount --list --detail
是否有标识卷的字符串 - 例如
Drive(2): Kingston DT Elite 3.0
Type: GProxyDrive (GProxyVolumeMonitorUDisks2)
ids:
unix-device: '/dev/sdb'
要卸载,您可以使用gvfs-mount -u
或gvfs-mount --unmount
例如
gvfs-mount --unmount /media/steeldriver/KINGSTON
答案3
@cas'评论在评论中比gvfs-mount
因为它也有label
选项更严格,从而更好地避免可能的并发症;我认为Ubuntu使用标签选项是为了稳定,所以我怀疑是否gvfs-mount --mount
默认使用
mount -L MasiWeek /media/masi/MasiWeek