В настоящее время я монтирую раздел NTFS при запуске, используя следующую строку в / etc / fstab:
/dev/sda3 /media/data ntfs nls=iso8859-1,umask=000
Для моей установки Ubuntu 11.10 все выглядит так, как будто все файлы и папки принадлежат root
- и поскольку NTFS в действительности не поддерживает ту же систему управления правами, я не могу изменить ее после завершения монтирования. Независимо от того, что я делаю, в ls -l
любом месте раздела NTFS будут перечислены все файлы и папки как принадлежащие root:root
.
Тем не менее, это вызывает некоторые проблемы для меня. В частности, некоторые приложения, работающие под моей учетной записью (называемые tomas
), жалуются на права доступа. Кроме того, всякий раз, когда я пытаюсь скопировать ( cp
) или переместить ( mv
) файлы из одного из моих разделов ext3 в раздел NTFS, я получаю сообщения об ошибках:
mv: preserving times for `[path to new file]`: Operation not permitted
или, аналогично
mv: preserving permissions for ...
Поможет ли монтирование раздела от моего имени вместо root? Если да, то как мне это сделать в fstab?
Обновить:
Теперь я изменил параметры в соответствии с предложениями и пришел к этому:
nls=iso8859-1,permissions,users,umask=000,uid=tomas,gid=tomas
ls -l
теперь показывает все файлы, принадлежащие мне, а не пользователю root, и кажется, что некоторые проблемы, которые у меня были раньше, решены. Однако не все из них.
Когда я запускаю Eclipse, я получаю сообщение об ошибке, что файл, связанный с android-sdk, не может быть запущен: В доступе отказано. ls -l
говорит мне следующее о файле:
-rwxrwxrwx 1 tomas tomas 159620 2011-11-29 14:50 adb*
Это выглядит так, как я хочу. Но если я пытаюсь запустить его ( ./adb
в терминале), я также получаю сообщения об отказе в разрешении. Но если я запускаю его sudo
, он работает (я полагаю - по крайней мере, он не выдает мне сообщение об ошибке, но вообще не дает никакого вывода, что, я думаю, не должно ...)
Почему указанный выше файл с разрешениями на выполнение для всех по- прежнему не может быть выполнен кем-либо еще, кроме root
? Как мне изменить способ монтирования файловой системы таким, какой он есть?
Обновление 2:
Хорошо, теперь я пошел немного дальше. Путем монтажа с этими опциями
nls=iso8859-1,permissions,users,auto
Я получил все разрешения, установленные так, как я от них ожидаю, chown
и chmod
фактически изменил настройки файлов (по крайней мере, в соответствии с ls -l
) = D
НО моя система все еще ведет себя странным образом. adb
Права доступа к файлу сценария указаны выше, но ни я, ни Eclipse не можем запустить его без ошибок «Отказано в доступе». Но, насколько я вижу, в файле установлены все необходимые флаги ( o=rwx
должно быть достаточно, верно?). Почему это не работает?
Обновление 3
Хорошо, у меня все работает на стороне Ubuntu, со следующими опциями:
nls=iso8859-1,permissions,users,auto,exec
Однако, когда я пытаюсь получить доступ к файлам на разделе из Windows, настройки безопасности все перепутались. Во всех файлах (из тех немногих, которые я изучал) новая учетная запись Account Unknown(long GUID)
была добавлена в список пользователей и имеет полные права. Права большинства других пользователей уменьшены, поэтому у меня нет прав на то, что я ожидаю. Примечательно, что «Все» больше не имеют права на «Переместить папку / выполнить».
Это можно решить, просто выбрав раздел и разрешив «Все» делать что-либо в корневой папке, а затем сказать, чтобы он делал это рекурсивно, но я бы предпочел этого не делать, так как боюсь, что на это уйдут дни ...
источник
users Allow every user to mount and unmount the filesystem. This option implies the options noexec, ... unless overridden by subsequent options, as in the option line users,exec,dev,suid)
. Так что добавьтеexec
к вашим опциям, и я считаю, что проблема с отказом в разрешении для выполнения должна быть решена.Ответы:
В столбце параметров добавьте
permissions
иauto
(и, возможно,user
илиusers
)permissions
: (Опция NTFS-3G) Установите стандартные разрешения для создаваемых файлов и используйте стандартное управление доступом.auto
: Будет установлен при загрузке и сmount -a
user
: Разрешить обычному пользователю монтировать файловую системуusers
: Разрешить каждому пользователю монтировать и размонтировать файловую системуЗатем измените владельца файловой системы:
Моя линия в
/etc/fstab
Смонтировать и перечислить разрешения
Смена владельца и список новых разрешений
По умолчанию ntfs-3g монтирует раздел noexec, nosuid и nodev.
noexec
: Не разрешать прямое выполнение любых двоичных файлов в смонтированной файловой системе.nosuid
: Не допускайте вступления в силу битов set-user-identifier или set-group-identifier.nodev
: Не интерпретируйте символ и не блокируйте специальные устройства в файловой системе.Чтобы переопределить это и разрешить выполнение файлов, используйте
exec
Теперь мы получаем
источник
nls=iso8859-1,permissions,users,umask=000
:) и перезагрузки, теперь я могу перемещать и копировать файлы без сообщений об ошибках. Все файлы по-прежнему отображаются как принадлежащиеroot:root
даже послеsudo chown -R tomas:tomas /media/data
. Пока что это не проблема, но из любопытства: почему?umask=000
umask=000
эквивалентноchmod 777
- umask определяет все флаги, которые вы не хотите устанавливать в файлах. Я согласен, что это нелогично, но это все здесь: ubuntuforums.org/showpost.php?p=9092899&postcount=4Используйте параметры
uid
иgid
(или используйте функцию сопоставления пользователей) файла mount.ntfs (8)источник
uid
иgid
работают, но разрешения теперь поддерживаются в ntfs-3g, и эти опции переопределяютсяpermissions
. См .: b.andre.pagesperso-orange.fr/permissions.htmlnls=iso8859-1,permissions,users
размонтировать и заново смонтировать раздел.root:root
и Eclipse жалуется на разрешения.Мой теперь работает отлично, когда я изменяю линию fstab на
источник
Как насчет использования
udisks
? Он может легко монтировать разделы NTFS с вашим пользователем в качестве владельца.Пример (введите его в командной строке):
Вы также можете добавить эту команду для запуска приложений, и она будет автоматически монтироваться при входе в систему.
Ссылка: AutomaticsMountPartitions
источник