我正在运行 16.04,并且正在尝试挂载 img 文件,但我没有选择这样做。
我如何添加挂载功能?最好是基于 GUI 的,并且只是上下文菜单选项,或者类似的东西,这样它就会显示在海豚的左侧。
谢谢
答案1
我找到了一种同样有效的命令行方法。我没有尝试 Furius ISO,因为我不想只安装一个程序来挂载 .IMG 文件,也不想在我的电脑上运行任何 GTK 软件Qt/KDE系统。
首先,如果磁盘像我的一样已满,则需要添加 .img 文件。
sudo losetup -f -P imageFileName.img
然后您需要弄清楚它是作为什么环回设备安装的。
lsblk -f
弄清楚要具体挂载哪个分区后,可以使用此命令。/dev/loop0p7将成为您的分区名称。
sudo mount /dev/loop0p7 /mnt/
我不确定这些信息是否会改变,但如果需要的话,您可以轻松地将其放入脚本中。
我还要补充一点,一旦你这样做,你就会获得 Dolphin 的入口。
答案2
Dolphin 上下文菜单服务
人们希望通过上下文菜单使用默认或自定义“服务”来实现这一点。这些是可以下载的 Dolphin 脚本(设置-配置海豚-服务-下载新服务,搜索“mount”或“iso”;它们是.desktop
应该转到~/.local/share/kservices5/ServiceMenus
或的文件usr/share/kservices5/ServiceMenus
)。
这些方法看起来很有希望,但大多数都行不通。很多都过时了,最新的方法评价也不高。幸运的是,也有例外:
KDE 服务(我目前写的文章中评价最高的也是最新的,并且适用于 Plasma 5.8):它似乎不能通过 Dolphin-Services 按钮安装;相反,它可以作为 tar.bz2 存档从以下位置下载:这里,解压后,在生成的文件夹中打开终端,运行命令即可安装sudo make install
。这是安装在系统级别的服务集合/usr/share/kservices5/ServiceMenus/
,还有安装在的脚本usr/share/applications
。
它会将图像挂载到与图像位于同一目录内的新创建的文件夹中;还有一个可以正常工作的卸载选项(因为图像未列在 Dolphin 设备列表中,所以这不受下面提到的单独应用程序问题的影响)。
我在这里看到的唯一问题是它以这种方式安装了大量服务。它附带了大量可能不需要的工具(如果未签入,它们可能会被隐藏设置-配置海豚-服务,但其上层菜单仍然可见。要解决此问题,可以小心地从 中删除不需要的服务文件/usr/share/kservices5/ServiceMenus
)。
最好还保存下载的包,以防您想通过解压来彻底卸载此工具,请在结果文件夹中打开终端并执行sudo make uninstall
。
我已经发布了用于挂载/卸载的简单上下文菜单服务(这里) 基于上面的一个,以防有人只想使用上面的 iso mount/unmount 选项。
请参阅链接中的描述,了解如何创建此简单服务。
或者 - 手动创建:
kate ~/bin/iso_manager-mount-image.sh
使用此内容(将其粘贴到这里以避免安装 KDE-Services 或上传脚本的需要):
#!/bin/bash
#################################################################
# For KDE-Services. 2012-2017. #
# By Geovani Barzaga Rodriguez <[email protected]> #
# Improved by Victor Guardiola (vguardiola) Jan 5 2014 #
# -Fixed the problem of [dir|file]name with whitespaces. #
#################################################################
PATH=/usr/local/bin:/usr/bin:/bin:/usr/local/sbin:/usr/sbin:/sbin:/home/$USER/bin
MOUNTEXIT=""
##############################
############ Main ############
##############################
cd "${1%/*}"
if [ "$1" == "${1%.*}.iso" ]; then
fuseiso -p "$1" "${1%.iso}"
MOUNTEXIT=$?
else
rename .ISO .iso *
kdialog --icon=ks-error --title="Mount ISO-9660 Image" \
--passivepopup="[Error] Can't mount ${1##*/}: Renamed extension of ISO image, because contain uppercase characters. Please try again."
exit 1
fi
if [ "$MOUNTEXIT" = "0" ]; then
kdialog --icon=ks-media-optical-mount --title="Mount ISO-9660 Image" --passivepopup="[Finished] ${1##*/} mounted."
else
kdialog --icon=ks-error --title="Mount ISO-9660 Image" \
--passivepopup="[Error] Can't mount ${1##*/}: Already mount or check image integrity."
exit 1
fi
exit 0
然后:
kate ~/.local/share/kservices5/ServiceMenus/mount-iso.desktop
内容如下:
[Desktop Entry]
Type=Service
ServiceTypes=KonqPopupMenu/Plugin
MimeType=application/x-cd-image;model/x.stl-binary
Actions=mount;unmount;
X-KDE-Priority=TopLevel
X-KDE-StartupNotify=false
Icon=application-x-cd-image
X-KDE-Submenu=Mount/unmount image
[Desktop Action unmount]
Name=Unmount
Icon=edit-redo
Exec=which fuser fusermount; if [ "$?" != "0" ];then kdialog --icon=ks-error --title="Unmount ISO-9660 Image" --passivepopup="[Error] Please install fuser and fusermount command and try again."; exit 1; else fuser -k %f; fusermount -u "$(ls "%f"|sed 's/.iso$//')"; rm -fr "$(ls "%f"|sed 's/.iso$//')"; kdialog --icon=ks-media-optical-umount --title="Unmount ISO-9660 Image" --passivepopup="[Finished] $(basename %f) unmounted.";fi
[Desktop Action mount]
Name=Mount
Icon=circular-arrow-shape
Exec=which fuseiso; if [ "$?" != "0" ];then kdialog --icon=ks-error --title="Mount ISO-9660 Image" --passivepopup="[Error] Please install fuseiso command and try again."; exit 1; else ~/bin/iso_manager-mount-image.sh %F;fi
考虑单独的程序:
由于问题被标记为 KDE/Kubuntu,我将尝试仅提及尽可能对 KDE/Qt 友好的程序,即带来很少非 kde 依赖项的程序。
丙酮异丙酮Plasma 5 仅附带三个补充包:fuseiso
和另外两个qt
基于 的包。
sudo apt install acetoneiso
要在 Dolphin 中看到它,您必须将该程序添加到 iso 文件的文件属性中。
然后,您可以在 Dolphin 的打开用选项:
这将安装图像,在 Dolphin 中打开它,并打开 Acetineiso 窗口,您可以在其中找到卸载选项。
gnome-disk-utility
尽管名字如此,但在 Plasma 5.8 中却没有非 kde 依赖项(实际上根本没有依赖项),并且它包含(除了gnome-disks
,在 Ubuntu 中也称为“磁盘”,默认)一个名为 的工具gnome-disk-image-mounter
。
sudo apt install gnome-disk-utility
然后可以在海豚中找到它打开用选项。
此时,图像不会在 Dolphin 中自动打开,但会在 Dolphin 左侧面板的设备。
该计划似乎缺少一个选项卸载图像:可以从 Dolphin 中的设备列表中完成。
不过,这里似乎存在某种 Dolphin 错误:一旦卸载,无论是通过 Acetoneiso 按钮还是通过 Dolphin 设备列表,列表条目都会保留在那里(在 的情况下称为“循环设备” gnome-disks
),如果选择该条目,将再次安装映像。该条目将保留在那里,直到系统重新启动(注销是不够的)。
这些程序也可以与服务菜单一起使用(但它们都缺少卸载命令)。
例如,除了上述方法外,还可以使用 Acetoneiso:
kate ~/.local/share/kservices5/ServiceMenus/acetoneiso-mount-iso.desktop
内容如下:
[Desktop Entry]
Type=Service
ServiceTypes=KonqPopupMenu/Plugin
MimeType=application/x-cd-image
Actions=mount
X-KDE-Priority=TopLevel
X-KDE-StartupNotify=false
Icon=application-x-cd-image
X-KDE-Menu=Mount with Acetoneiso
[Desktop Action mount]
Name=Mount with Acetoneiso
Icon=Acetino2
Exec=acetoneiso %f
愤怒的 ISO 卡口( furiusisomount
) 想要添加比上述更多的 gnome 包,包括 Nautilus,因此我在这个答案中将它放在一边。
The following additional packages will be installed:
fuseiso9660 gnome-desktop3-data libexempi3 libgail-3-0 libgnome-desktop-3-12 libmediaart-2.0-0 libnautilus-extension1a libtracker-sparql-1.0-0
libunity-protocol-private0 libunity-scopes-json-def-desktop libunity9 libzeitgeist-2.0-0 nautilus nautilus-data
答案3
Furius ISO Mount 可让您轻松安装您想要的内容。
我希望它会有用。