Форум русскоязычного сообщества Ubuntu


Хотите сделать посильный вклад в развитие Ubuntu и русскоязычного сообщества?
Помогите нам с документацией!

Автор Тема: Монтирование USB не-локальным пользователем в 18.04  (Прочитано 4641 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Karl500

  • Автор темы
  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 2267
    • Просмотр профиля
После установки 18.04 не-локальные (ldap) пользователи не могут монтировать usb-флешки: появляется окно "Unable to mount location. Not authorized to perform operation" при установке флешки в разъем.

Может кто знает, что и где подкрутить?

Пользователь добавил сообщение 08 Июня 2018, 16:40:36:
Все нашлось. На всякий случай подробно:

1. Для определения проблемы выполнил
udisksctl mount -b /dev/sdb1В ответ получил причину:
==== AUTHENTICATING FOR org.freedesktop.udisks2.filesystem-mount-other-seat ===
Для монтирования SanDisk Cruzer Pop (/dev/sdb1) требуется подтверждение подлинности пользователя
Multiple identities can be used for authentication:
 1.  toor,,, (toor)
 2.  VK,,,, (vk)
Choose identity to authenticate as (1-2):

2. В файле /user/share/polkit-1/actions/org.freedesktop.UDisks2.policy в соответствующем разделе <action id="org.freedesktop.udisks2.filesystem-mount-other-seat"> заменить
<allow_any>auth_admin</allow_any>
<allow_inactive>auth_admin</allow_inactive>
<allow_active>auth_admin_keep</allow_active>
на
<allow_any>yes</allow_any>
<allow_inactive>yes</allow_inactive>
<allow_active>yes</allow_active>

3. Перезапустить сервис
sudo service polkit restart
« Последнее редактирование: 08 Июня 2018, 16:40:36 от Karl500 »

Оффлайн AnrDaemon

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 28366
    • Просмотр профиля
Мне думается, это не самое корректное решение. На уровне chmod 777 некорректности.

Откуда именно берётся LDAP?
Хотите получить помощь? Потрудитесь представить запрошенную информацию в полном объёме.

Прежде чем [Отправить], нажми [Просмотр] и прочти собственное сообщение. Сам-то понял, что написал?…

Оффлайн ecc83

  • Старожил
  • *
  • Сообщений: 2121
  • Ubuntu Mate 22.04 LTS
    • Просмотр профиля
От имени нужного юзера:

sudo groupadd disk
sudo usermod -aG disk $USER

Создаете файл:

sudo nano /usr/share/polkit-1/rules.d/40-mount-without-pass.rules
с таким содержимым:

polkit.addRule(function(action, subject) {
    if (action.id == "org.freedesktop.udisks2.filesystem-mount-system" &&
    subject.isInGroup("disk") && subject.active) {
    return polkit.Result.YES;
    }
});

Оффлайн Karl500

  • Автор темы
  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 2267
    • Просмотр профиля
AnrDaemon, другого пока нет. ldap - с сервера openldap (используется smbldap-tools).

ecc83, не сработало. Причем ни так, ни с вариантом org.freedesktop.udisks2.filesystem-mount-other-seat

Некоторая сложность в том, что в группу нужно ввести ВСЕХ пользователей; поэтому у меня используется механизм /etc/security/group.conf
Соответственно, вместо группы disk я взял группу plugdev, куда все пользователи и так входят.

Оффлайн ecc83

  • Старожил
  • *
  • Сообщений: 2121
  • Ubuntu Mate 22.04 LTS
    • Просмотр профиля
ecc83, не сработало

Можно попробовать "подкрутить по месту" с учётом возникающих ошибок.
В любом случае создать правило для polkit более грамотное решение, чем всё всем разрешить.
Это дома на личном компе можно не париться :)

Оффлайн Karl500

  • Автор темы
  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 2267
    • Просмотр профиля
ecc83, ну, не "всё всем", а "монтировать всем". Да, спасибо за идею. Но странно, что даже такой вариант не работает:

if (action.id == "org.freedesktop.udisks2.filesystem-mount-other-seat") {
return polkit.Result.YES;
}




Пользователь добавил сообщение 09 Июня 2018, 10:24:08:
Кажется, проблема не в этом, а в том, что он почему-то не понимает, какой именно пользователь воткнул флешку - локальный (toor), или ldap (vk).
« Последнее редактирование: 09 Июня 2018, 10:24:08 от Karl500 »

Оффлайн AnrDaemon

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 28366
    • Просмотр профиля
Сами то понимаете, какую пургу гоните? :)
Флешку "втыкает" не пользователь, а система.
Хотите получить помощь? Потрудитесь представить запрошенную информацию в полном объёме.

Прежде чем [Отправить], нажми [Просмотр] и прочти собственное сообщение. Сам-то понял, что написал?…

Оффлайн Karl500

  • Автор темы
  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 2267
    • Просмотр профиля
Вы таки будете ржать, но я нашел причину. Не понимаю, какая связь, но:

а) стоит задать пароль root (т.е. разблокировать его), как после перезагрузки начинается такая вот хрень;
б) обратная блокировка root "штатным" средством (sudo passwd -l root) не помогает: нужно залезть руками в файл /etc/shadow и заменить строку пароля на символ *, после перезагрузки все опять штатно монтируется.

Ну и еще один пункт:

в) похоже, это реальная причина, по которой не нужно разблокировать root  ;)

PS Раньше такого не было; понятно, что баг - вот только чей...
« Последнее редактирование: 15 Июня 2018, 16:22:32 от Karl500 »

Оффлайн AnrDaemon

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 28366
    • Просмотр профиля
стоит задать пароль root
Не стоит так делать…
Хотите получить помощь? Потрудитесь представить запрошенную информацию в полном объёме.

Прежде чем [Отправить], нажми [Просмотр] и прочти собственное сообщение. Сам-то понял, что написал?…

 

Страница сгенерирована за 0.103 секунд. Запросов: 25.