Параметры монтирования по умолчанию для автоматически монтируемых разделов NTFS (как добавить `noexec` и` fmask = 0111`?) [Закрыто]

9

Я использую автонастройку внешних USB-устройств, и она работает как положено, за исключением того, что разделы NTFS монтируются с включенным флагом исполняемости. Например:

/dev/sdb1 on /media/Elements type fuseblk (rw,nosuid,nodev,allow_other,blksize=4096,default_permissions)

Все нормальные файлы находятся -rwxrwxrwxв этом разделе. Я не доволен с x. Я знаю, что могу смонтировать его так, как хочу, если передам fmask=0111опцию.

Сейчас я использую Lucid, и предположим, что он использует какой-то новый механизм автоматической установки ( gvfs-mount?), Но я не знаю, как теперь можно изменить параметры монтажа по умолчанию. Настройки Gconf в не /system/storage/default_options/ntfs/mount_optionsимеют никакого эффекта.

Итак, как мне сделать fmask=0111опцию автонастройки по умолчанию для всех разделов NTFS? (Буду также признателен, если кто-нибудь объяснит, как работает текущий механизм автонастройки, как его настроить , и если параметры монтирования по умолчанию жестко запрограммированы, что я должен перекомпилировать, чтобы изменить их ).

Я знаю, что могу вставить строку в /etc/fstabи / или смонтировать вручную, но это не то решение, которое мне нужно, потому что 1) я не хочу редактировать /etc/fstabдля каждого внешнего диска, который я использую, 2) записи fstab появляются в панель Места наутилуса, даже если дисков нет. Вопрос в том, как изменить настройки по умолчанию .

Обновление: установкаudisks 1.0.1+git20100614 или более поздняя версия дает более разумные значения по умолчанию для NTFS, проблема в том, как пользователь может указать произвольные параметры монтирования.

sastanin
источник
Вероятно, это связанные ошибки: bugs.launchpad.net/ubuntu/+source/gnome-mount/+bug/78505 bugs.launchpad.net/ubuntu/+source/udisks/+bug/14335 и множество дубликатов. Кажется, что проблема решена в udisks 1.0.1 + git20100614-1 , но она еще не доступна для Lucid.
Састанин
4
Жаль, что этот вопрос был закрыт. Я также ищу способ форсирования определенных опций монтирования для заданных автоматически монтируемых файловых систем.
Mivk
1
@mivk Я также думаю, что закрытие было неуместным. Я искал способ автоматически смонтировать диски NTFS с "windows_names" ...
Вальдирий

Ответы:

1

если параметры монтажа по умолчанию жестко запрограммированы, то я должен перекомпилировать их для изменения

Отредактируйте файл device.c с вашими настройками по умолчанию:

mkdir -p build/udisks
cd build/udisks
apt-get source udisks
gedit udisks-1.0.1/src/device.c

Поиск ntfs_defaults, редактирование, сохранение и выход.
Если опции монтирования еще нет в ntfs_allowсписке ниже ntfs_defaults, необходимо также добавить эту новую опцию в ntfs_allow.

Построить (см. Другой ответ для пути pbuilder ):

cd udisks-1.0.1
dch -l custom "Mount custom defaults fix."
dpkg-buildpackage -b -us -uc -rfakeroot

Установите только что скомпилированный udisk:

sudo dpkg -i ../udisks_1.0.1-1ubuntu1custom1_amd64.deb
Nilfred
источник
1) Я спросил о NTFS , а не FAT. 2) Я не вижу, как предложенный patch ( 15-vfat-UTC.patch) позволит настроить noexecи fmaskсмонтировать параметры для разделов NTFS. Ваш ответ оффтоп и бесполезен.
Састанин
@jetxee 1) Посмотрите на строку: gedit udisks-1.0.1/src/device.cя не хочу помогать только вам, но в качестве общей помощи. 2) Просто пример того, как поделиться своим патчем с вашей конкретной проблемой. Я не буду делать твою домашнюю работу каждый раз, когда ты захочешь изменить любое другое значение по умолчанию. Просто найдите значения по умолчанию, когда где в device.c
Nilfred
1) ваша «общая помощь» о том, как создавать пакеты, является неполной, неуместной и плохо написанной, постарайтесь быть более точной в следующий раз; Ваше последнее редактирование, по крайней мере, дает ответ по теме (+1), но вы могли бы остановиться после «новой опции, чтобы разрешить», без нагрузки copy-paste 2). Я делал свои домашние задания очень давно, и, в частности, уже выложили подобный обходной путь , проблема которого остается: он по-прежнему не позволяет указать произвольные параметры монтирования .
Састанин
@jetxee 1) Вы должны собрать после редактирования device.c, остановившись здесь, оставив открытым еще один вопрос: как собрать? 2) Я нашел, что ваш ответ на свой вопрос полезен для моей конкретной проблемы, поэтому я даю сообществу то, что сообщество дает мне: я указываю произвольные параметры монтирования, следуя вашим указаниям (с таможенными обходами) 3) Вы слишком много отредактировали: мое время компиляции гораздо меньше, чем у вас, и установите меньше мусора, чем pbuilder. 4) Я согласен удалить share your changesчасть, включающую cp -pстроку резервного копирования: apt-get sourceбудет просто отменять любые ошибки.
Нильфред
Согласен. Теперь это хорошо написанный ответ. Спасибо.
Састанин
0

Я нашел обходной путь для проблемы исполняемых файлов на Lucid (это не должно требоваться на Maverick). Более новые udisks 1.0.1+git20100614не делают все файлы в разделе NTFS исполняемыми. Это решает мою конкретную проблему с исполняемыми файлами, но все равно не позволяет указывать произвольные параметры монтирования.

Ниже приведены пошаговые инструкции по созданию udisksпакета с обратным портированием .

Перейдите в каталог, куда вы хотите скачать исходные пакеты и скачать их:

wget https://launchpad.net/ubuntu/maverick/+source/udisks/1.0.1+git20100614-1/+files/udisks_1.0.1+git20100614.orig.tar.gz
wget https://launchpad.net/ubuntu/maverick/+source/udisks/1.0.1+git20100614-1/+files/udisks_1.0.1+git20100614-1.debian.tar.gz 
wget https://launchpad.net/ubuntu/maverick/+source/udisks/1.0.1+git20100614-1/+files/udisks_1.0.1+git20100614-1.dsc 

Для сборки более новой udisksя использовал pbuilder:

sudo aptitude install pbuilder
sudo pbuilder create
sudo pbuilder --update
sudo pbuilder --build udisks_1.0.1+git20100614-1.dsc 

Это может занять некоторое время, но это сработало для меня. Теперь вы можете установить новый пакет:

cd /var/cache/pbuilder/result/
ls *.deb
sudo dpkg -i udisks_1.0.1+git20100614-1_amd64.deb

Этот пакет должен быть предпочтительнее lucidпакетов package ( ):

$ apt-cache policy udisks
udisks:
  Installed: 1.0.1+git20100614-1
  Candidate: 1.0.1+git20100614-1
  Version table:
 *** 1.0.1+git20100614-1 0
        100 /var/lib/dpkg/status
     1.0.1-1ubuntu1 0
        500 http://it.archive.ubuntu.com/ubuntu/ lucid-updates/main Packages
     1.0.1-1build1 0
        500 http://it.archive.ubuntu.com/ubuntu/ lucid/main Packages

Теперь обычные файлы на автоматически монтируемых разделах NTFS больше не являются исполняемыми. Я надеюсь, что это исправление попадет в официальные обновления Lucid.

sastanin
источник
В моем Ubuntu 16.04 файлы в разделах NTFS по-прежнему исполняются по умолчанию. Мне пришлось настроить диск в fstab, чтобы исправить это.
Стефан Монов
-2

Это связано с тем, что диски NTFS не созданы для Linux, они созданы для Windows, а Windows делает все исполняемым по умолчанию.

Единственный способ сделать их неисполняемыми по умолчанию - это отредактировать fstab для каждого диска или переключить их на fat32.

dkuntz2
источник
Это отвечает на неправильный вопрос. NTFS-разделы хорошо работают в Linux, и исполняемый бит можно отключить во всех файлах с параметром fmask = 0111. Вопрос в том, как мне настроить современный механизм автоматического монтирования Ubuntu ?
Састанин
Вы не можете прочитать второй абзац. Вам придется переключить все эти диски на fat32, чтобы они были совместимы и неисполняемы по умолчанию.
dkuntz2
Выбор FAT32 или NTFS не имеет ничего общего с настройкой маски.
Райан К. Томпсон
Но по умолчанию файлы на жестких дисках установлены на неисполняемые. Отсюда и вид решения.
dkuntz2