LINUX.ORG.RU

Монтирование флешек в Ubuntu 18.04

 ,


0

1

Добрый день!

Стоит Ubuntu 18.04, Openbox.

Nautilus не монтирует флешки автоматически, пишет «Not authorized to perform operation». Создал правило /etc/polkit-1/rules.d/00-mount.rules

polkit.addRule(function(action, subject) {
if (action.id == "org.freedesktop.udisks2.filesystem-mount-system"
&& subject.isInGroup("wheel")) {
return polkit.Result.YES;
}
});
Ничего не поменялось (пользователь в группе wheel).

Решил пойти другим путём, создал правило для udev /etc/udev/rules.d/80-test.rules

ACTION=="add" KERNEL=="sd[c-z][0-9]" RUN+="/home/user/bin/mount.sh %k"
ACTION=="remove" KERNEL=="sd[c-z][0-9]" RUN+="/home/user/bin/umount.sh %k"
Да, я понимаю, что можно было всё в нем прописать, но для наглядности сделал отдельный файл /home/user/bin/mount.sh
#!/bin/bash
device="$1"
sudo mkdir -p /mnt/$device
sudo mount /dev/$device /mnt/$device -t vfat -o rw,users,suid,uid=1000,gid=1000,umask=0000,dmask=0000
Теперь при втыкании флешки создается /mnt/sdc1 drwxr-xr-x 2 root root 4096 Nov 17 19:15 sdc1/ и файлов внутри не видно.

Если же вручную запустить mount.sh sdc1, то всё нормально, файлы внутри видны: drwxrwxrwx 2 user user 8192 Jan 1 1970 sdc1/

Что не так? Буду рад всем советам, как сделать автомонтирование флешек.



Последнее исправление: shatll (всего исправлений: 4)

Ответ на: комментарий от anti_win

(бред, конечно): попробуй примонтировать в другом файловом менеджере.

Конечно бред. Монтирование происходит без какого-либо фм. Это знает каждый, кто работает через консоль.

anonymous
()
Ответ на: комментарий от anti_win

Попробовал, ничего не изменилось

shatll
() автор топика
Ответ на: комментарий от anti_win

Тем не менее попробовал, результат тот же: pcmanfm пишет «Not authorized to perform operation»

shatll
() автор топика
Ответ на: комментарий от Vsevolod-linuxoid
policykit-1 is already the newest version (0.105-20ubuntu0.18.04.5).
shatll
() автор топика

в каких группах состоит юзер? и обрати внимание: через udev у тебя root владелец, через «ручное монтирование» user

anymouze ★★
()
Ответ на: комментарий от anymouze
user@HomePC:~$ groups
user adm lp cdrom sudo audio dip plugdev lxd pulse-access tftp wheel diskusers

и обрати внимание: через udev у тебя root владелец, через «ручное монтирование» user

добавил в скрипт строку sudo chown user:user /mnt/$device, но лучше не стало, папке даются права user, но файлы по прежнему не видны внутри, то есть флешка просто не монтируется

shatll
() автор топика
Ответ на: комментарий от anti_win

В sudoers уже прописано

user  ALL = NOPASSWD: /bin/mount, /bin/umount
, но сегодня где-то читал, что это не работает в свежих версиях. Могу ошибаться

shatll
() автор топика
Ответ на: комментарий от shatll

Интересно, а если подключить репозитории более старой (или более новой) убунты и достать оттуда gvfs и fuse? Как ваше мнение, уважаемая публика?

anti_win ★★
()
Ответ на: комментарий от anti_win

Мнение такое, что ты несешь рандомную ерунду без понимания. Если ты вчера поставил линукс, не стоит давать советы направо и налево.

anonymous
()
Ответ на: комментарий от shatll

Могу ошибаться, но у тебя скрипт при вызове его udev выполняется от root (но, в ubuntu же пользователь root по умолчанию отсутствует?). При «ручном» монтировании от user всё как надо…

Ты правильно пишешь

файлы по прежнему не видны внутри

простому смертному пользователю файлы root-а не показывают. В GUI-файломенеджерах такие каталоги могут помечаться «замочком» и туда просто войти нельзя… После подключения флешки и автомонтирования (а я уверен, что флешка всё же монтируется) выполни в терминале команду mount без параметров или sudo ls /путь к точке монтирования флешке/ – думаю ты убедишься, что носитель смонтировался, но доступен только root-у…

Вот насколько твой скрипт подходит для выполнения udev? Я прошелся по цепочке статей ArchWiki и там не рекомендуют использовать mount для udev – Udisks. Или через юниты systemd…

anymouze ★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.