自动安装USB驱动器,无需GUI(半替换)


8

为了最小化Debian的安装,我一直在使用halevt来启用USB驱动器的自动挂载。Halevt是可靠的,除了安装软件包外,不需要任何配置。现在,halevt已经从Debian Testing中删除了,我正在寻找替代品,但是似乎没有其他替代品可以这么简单。

哪种自动挂载USB驱动器的实用程序最轻巧,最简单,最稳定?

编辑:我从来没有能够使udev以我想要的方式工作。问题在于udev规则始终以root身份运行,因此媒体以root身份挂载。可以硬编码以特定用户的身份挂载,但是似乎您无法制定一个以当前用户身份挂载的规则。根据文档,使用MODE值应该可以,但是似乎未在Debian中实现。因此,如果需要自动挂载,我仍然必须使用halevt。否则,我将使用pmount。


至少,我假设您的意思是没有X和Gnome / KDE?
Mikel

1
没有桌面环境和系统服务的Debian安装。因此,使用X但不使用GNOME / KDE。
2011年

嗯,目前Halevt处于稳定,测试和不稳定状态。
Faheem Mitha 2014年

Answers:


3

HAL的基于磁盘的功能已被udevudisk取代。

在“ 自动挂载UDisk的包装器”页面上,有一个完整的示例说明如何使用udev进行此操作:

/etc/udev/rules.d/11-media-by-label-auto-mount.rules

KERNEL!="sd[a-z][0-9]", GOTO="media_by_label_auto_mount_end"

# Import FS infos
IMPORT{program}="/sbin/blkid -o udev -p %N"

# Get a label if present, otherwise specify one
ENV{ID_FS_LABEL}!="", ENV{dir_name}="%E{ID_FS_LABEL}"
ENV{ID_FS_LABEL}=="", ENV{dir_name}="usbhd-%k"

# Global mount options
ACTION=="add", ENV{mount_options}="relatime"
# Filesystem-specific mount options
ACTION=="add", ENV{ID_FS_TYPE}=="vfat|ntfs", ENV{mount_options}="$env{mount_options},utf8,gid=100,umask=002"

# Mount the device
ACTION=="add", RUN+="/bin/mkdir -p /media/%E{dir_name}", RUN+="/bin/mount -o $env{mount_options} /dev/%k /media/%E{dir_name}"

# Clean up after removal
ACTION=="remove", ENV{dir_name}!="", RUN+="/bin/umount -l /media/%E{dir_name}", RUN+="/bin/rmdir /media/%E{dir_name}"

# Exit
LABEL="media_by_label_auto_mount_end"

有关udev的更多信息:

还有一些基于udisk的选项,它们等同于halevt:

我在测试库中找不到任何,因此您可能必须找到第三方apt库,或者按照他们的指示在自己的计算机上编译软件。


我希望有一个简单的解决方案,例如halevt,只需“安装<package>,您就完成了”。我将不得不查看那些软件​​包。
user5184

复制上面的代码,将其粘贴到建议的文件(/etc/udev....rules)中,并希望您已完成。
Mikel

曾在两台Debian机器上尝试过此方法,但效果不佳。1.所有设备均安装为root。2.自动卸载有时会失败,从而使节点在重新引导后保持不变。3.某些未通电的驱动器根本无法安装。4.几次文件传输失败。我没有遇到这些问题halevt
user5184 2011年

2

如果不想使用hal,则可以使用udev规则自动安装驱动器。Arch Wiki在此处提供了有关规则的出色文章:

https://wiki.archlinux.org/index.php/Udev#Auto_mounting_USB_devices

您还可以考虑使用udiskie之类的东西(位于AUR中):

https://wiki.archlinux.org/index.php/Udiskie

还有一个脚本可以将udiskie集成到您的Openbox菜单中


谢谢,这很有帮助!我确实阅读了Udev的Arch文档,但是并没有真正解释如何编写自己的规则,这让我有些恼火,因为在复制和粘贴之前我想了解它的作用。看看它是否能装上我的东西。顺便说一句,与Udev相比,使用HAL有什么好处?反之亦然?
kelinu 2011年

HAL已被弃用,并且不再开发,因此-迟早,您将需要移至其他安排。Wiki页面上的第一
条规

好的,谢谢...我会坚持使用Udev,然后使该规则正常运行
kelinu 2011年

1

您可能应该考虑设置自己的udev,hal或hotplug规则以自动安装驱动器,甚至在连接时运行命令。您也可以研究 pmount

有很多针对Linux的自动挂载程序,您只需找出最适合您的工作的方式即可。

还应注意,您可以像gnome一样从较大的DE运行许多零件,而无需运行整个零件。您应该能够将gnome-volume-manager与在会话中使用时分开使用。


我认为udev是自动安装程序,对吗?我默认在Arch Linux上安装了该软件,但是我不确定它是如何工作的...任何人对此都有任何见识吗?
kelinu 2011年

是。试用ArchLinux Udev文档
Caleb

gnome-volume-manager也是一种专有的自动挂载器吗?
kelinu 2011年

1
因为gnome也是开源的,所以您对形容词“专有”的使用没有多大意义,但是,是的,GVM只是pmount的更高级的automount包装器。
Caleb
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.