Как изменить полномочия файла для недавно сгенерированных файлов в largefiles каталоге Подвижных?

Я нашел решение здесь:

там я нашел:

$ amixer -c0 cset iface=MIXER,name='Input Source',index=1 'Front Mic' # (Record from Front Mic)

немного измененный согласно моей звуковой карте и установке (звуковая карта по умолчанию, другое упорядочивание объектов):

$ amixer cset name='Input Source',index=0 'Rear Mic'

3
23.02.2012, 11:27
2 ответа

Оказывается, что это - проблема в Подвижном и что нет легкого обходного решения для Подвижных 2.1. Я только что отправил три патча к Подвижному mailinglist для фиксации этого —, надо надеяться, Вы будете видеть фиксацию в Подвижных 2.1.1 через неделю.

Проблема состоит в том, что largefiles расширение создает .hg/largefiles/<hash> файлы путем записи данных во временный файл, который затем позже переименован к настоящему имени. Это создает свои временные файлы с помощью стандарта tempfile модуль в Python. Модуль ограничивает полномочия 600 так как Вы обычно не хотите, чтобы кто-либо считал Ваши временные файлы. largefiles расширение не приняло это во внимание и просто переименовало файл.

Мои патчи фиксируют это путем взятия полномочий .hg/store во внимание при создании временных файлов. Это должно привести largefiles в соответствие с остальной частью Подвижного.

2
27.01.2020, 21:20
  • 1
    Эй, большое спасибо за то, что взглянул в это и придумал ;) –  haraldkl 23.02.2012, 21:31
  • 2
    @haraldkl: Без проблем, это была интересная проблема. Патчи были поставлены в очередь Matt, таким образом, необходимо видеть их в выпуске патча через неделю! –  Martin Geisler 24.02.2012, 08:49

Я не знаю, существует ли Подвижный ответ, но здесь является универсальным ответом, который может или не может работать в зависимости от точно, как Подвижный выбирает полномочия файла.

Включите списки управления доступом (ACLs) в файловой системе. (См. этот ответ для инструкций.) Затем устанавливает ACL по умолчанию и текущий ACL для рабочей копии, чтобы предоставить доступ дополнительному пользователю или группе, которая требует доступа.

setfacl -R -d -m group:www-data:rwx /path/to/working/copy
setfacl -R -m group:www-data:rwx /path/to/working/copy
2
27.01.2020, 21:20
  • 1
    Большое спасибо! Я на самом деле уже нашел этот ответ с setfacl, однако прямо сейчас я не имею ACLs активированным в той системе и выбрал бы решение, которое работало бы без них. –  haraldkl 17.02.2012, 19:50
  • 2
    я пробую этот точный метод, значение по умолчанию g:www-data:r-x, установлен/path/to/repo и/path/to/repo/.hg Однако, если я делаю hg надевает сервер, иногда файлы в/path/to/repo/.hg/store не становятся созданными с полномочиями по умолчанию и не удаются быть считанными апачем из других пользователей. Они не большие файлы, и я должен непрерывно делать setfacl - Комната g:www-data:r-x/path/to/repo. Какие-либо идеи, почему это происходит? –  Budric 05.06.2012, 17:28
  • 3
    @Budric Не бесцеремонно. Это могло бы иметь некоторое отношение, как hg работает. Задайте новый вопрос. Предоставьте столько подробной информации, сколько Вы можете (идеально, показать, как воспроизвести эту проблему от hg init вперед). –  Gilles 'SO- stop being evil' 05.06.2012, 21:33

Теги

Похожие вопросы