Автономные USB-накопители без графического интерфейса (замена)

8

Для минимальной установки Debian я использовал halevtавтоматическое подключение USB-накопителей. Halevtявляется надежным и не требует настройки, за исключением установки пакета. Теперь halevtон был удален из тестирования Debian, и я ищу замену, но ни одна из альтернатив не кажется такой простой.

Какая утилита для автоматического подключения USB-накопителей будет самой легкой, простой и стабильной?

РЕДАКТИРОВАТЬ: Я никогда не мог заставить Udev работать так, как я хотел. Проблема в том, что правила udev всегда запускаются как root, поэтому носители монтируются как root. Можно жестко закодировать монтирование как конкретного пользователя, но, кажется, вы не можете создать правило, которое монтируется как текущий пользователь. Согласно документации, это должно быть возможно со значением MODE, но, похоже, оно не реализовано в Debian. Так что, если требуется автонастройка, мне все равно придется использовать halevt. В противном случае я использую pmount.

user5184
источник
Под минимальным я предполагаю, что вы имеете в виду не X и Gnome / KDE?
Микель
1
Установка Debian без рабочего стола и системных служб. Итак, с X, но без GNOME / KDE.
user5184
Хм, на данный момент Halevtработает стабильно, тестируется и нестабильно.
Фахим Митха

Ответы:

3

Дисковые функции HAL были заменены на udev и udisks .

Вот полный пример того, как использовать udev для этого, на странице упаковщиков Automounting UDisks :

/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:

Есть также несколько опций, основанных на udisks, которые будут новым эквивалентом halevt:

Я не смог найти ни одного из них в репозитории для тестирования , поэтому вам, возможно, придется найти сторонний репозиторий apt или следовать их инструкциям, чтобы скомпилировать программное обеспечение на своем компьютере.

Mikel
источник
Я надеюсь на простое решение, такое как halevt, просто «Установите <пакет> и все готово». Мне придется посмотреть на эти пакеты.
user5184
Скопируйте приведенный выше код, вставьте его в предложенный файл (/etc/udev....rules), и, надеюсь, все готово.
Микель
Пробовал это на двух машинах Debian, но это не работает. 1. Все устройства смонтированы как root. 2. Иногда происходит автоматическое отключение, что приводит к тому, что узел остается постоянным после перезагрузки. 3. Некоторые жесткие диски не подключаются вообще. 4. Несколько раз не удалась передача файлов. У меня не было ни одной из этих проблем halevt.
user5184
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 .

jasonwryan
источник
Спасибо, это очень помогает! Я читал документацию по Arch для Udev, но она не объясняет, как именно писать свои собственные правила, что меня раздражает, потому что я хочу понять, что он делает, прежде чем просто скопировать и вставить его. Я попробую и посмотрим, монтирует ли он мои вещи. Кстати, в чем преимущество использования HAL перед Udev или наоборот?
Келину
HAL устарела и больше не разрабатывается, поэтому рано или поздно вам придется перейти к другим соглашениям. Первое правило на странице вики должно выполнить то, что вы после ...
jasonwryan
Хорошо, спасибо ... тогда я буду придерживаться Udev, и я получу, что это правило работает должным образом
kelinu
1

Вероятно, вам следует установить собственные правила udev, hal или hotplug для автоматического монтирования дисков и даже запускать команды при их подключении. Вы также можете посмотреть в pmount .

Существует множество автомонтировщиков для linux, вам просто нужно выяснить, что лучше всего подходит для вашей работы.

Также имейте в виду, что вы можете запускать много частей из больших DE, таких как gnome, не выполняя полную версию. Вы должны иметь возможность использовать gnome-volume-manager отдельно от его использования для вашего сеанса.

Калеб
источник
Я думаю, что Udev - это автомонтер, верно? У меня это установлено по умолчанию с Arch Linux, но я не уверен, как это работает ... у кого-нибудь есть понимание этого?
Келину
Да. Попробуйте ArchLinux документы Udev .
Калеб
Кстати, gnome-volume-manager - это тоже своеобразный автомонтировщик?
Келину
1
Использование прилагательного «проприетарный» не имеет особого смысла, поскольку gnome также является открытым исходным кодом, но да, GVM - всего лишь немного более интересная оболочка для автомонтирования вокруг pmount.
Калеб