Jump to content
Korean Random

Linux: UDisks2: Параметры монтирования по умолчанию


Recommended Posts

Собственно, вопрос к опытным пользователям Linux. Сам использую относительно недавно, в тонкостях еще толком не разобрался, поэтому прошу сильно не пинать.
Недавно обновил свой Debian с Jessie до Stretch. Одним из замеченных существенных изменений стало изменение дефолтных прав доступа при монтировании ntfs - все файлы по умолчанию стали исполняемыми (x-flag, execute permissions), хотя никаких конфигов по этой части я не трогал. Речь идет о монтировании через графическую оболочку, KDE.

Почему это внезапно стало проблемой? Очень большая вероятность случайно ввести имя файла, не указав программу для запуска, и если при этом это будет текстовый файл без шебанга, баш начнет его весело выполнять, со всеми вытекающими последствиями. Что ну совсем не круто.

Из анализа параметров mount, udisksctl и т.д. выяснил, что для решения проблемы нужно дописать в параметры монтирования dmask=022,fmask=133.

Но есть одна очень существенная проблема. Прописать это в fstab не вариант, потому как это касается не конкретного раздела, а вообще любого ntfs-раздела. Монтирование вручную не рассматривается в принципе, как и другие аналогичные варианты.

Из анализа структуры всего этого дела было установлено примерно следующее (прошу не пинать сильно, если где-то ошибся): "монтирование" из графической оболочки через D-Bus пинает демон UDisks2, который собственно получает данные из udev и монтирует раздел в отведенную для него папку.

Найти какую-то адекватную информацию по файлам конфигурации для ntfs-3g тоже не получилось, есть сомнения что они в принципе существуют (а все параметры передаются через командную строку).
Дефолтные опции для ntfs в самом UDisks2 прописаны в исполняемых файлах, и как их поменять через файлы конфигурации я не нашел (может быть плохо искал), а вариант с пересборкой пакета не рассматриваю по вполне понятным причинам. Утилита udisksctl без проблем принимает на вход необходимые дополнительные параметры, но опять же, это "ручной вариант", а в данном случае нужно (насколько я понимаю) прописать их по дефолту для всех ntfs-filesystem.

Взаимодействие между KDE и UDisks2 осуществляется через D-Bus, на тему перехвата и подмены сообщений тоже ничего адекватного найти не удалось. Если такое вообще возможно.

Ну и собственно, можно ли прописать где-то опции монтирования в KDE, или там тоже очередной хардкодинг, выяснить пока не удалось.

 

Вопрос, как уже многие догадались, звучит достаточно просто - как и где можно прописать опции монтирования по умолчанию для конкретного типа файловой системы, не привязываясь к конкретному тому/диску/etc, и не редактируя исходники, чтобы эти опции применялись желательно только при монтировании через графическую оболочку?

  • Upvote 1
Link to comment
Short link
Share on other sites

В принципе, как временное решение можно использовать udisksctl, но решением это назвать сложно - пинать каждый раз командную строку...

udisksctl unmount -b /dev/sdb3 && udisksctl mount -b /dev/sdb3 -o dmask=022,fmask=133
remount () { udisksctl unmount "$@" && udisksctl mount -o dmask=022,fmask=133 "$@"; }; remount -b /dev/sdb3

Хотя с другой стороны влияние флага исполняемости на работу графической оболочки пока не замечено, там все равно используются mime-ассоциации. Проблема по большей части именно консольная. Но тем не менее, писать каждый раз команду на перемонтирование... как-то неправильно, да и неудобно.

  • Upvote 1
Link to comment
Short link
Share on other sites

  • 3 months later...

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...