MSYS2 permissions

в Windows 10, с MSYS2 я fstab to:

none / cygdrive binary,posix=0,acl,user 0 0

Я не могу установить разрешения на выполнение с chmod, несмотря на acl установить в fstab:

# echo > foo
# ls -l foo                              
-rw-r--r-- 1 ant None 1 Jun  1 19:18 foo 
# chmod +x foo
# ls -l foo                              
-rw-r--r-- 1 ant None 1 Jun  1 19:18 foo

в Cygwin, установка того же fstab, за тот же файл я получаю:

# ls -l foo                                         
-rwxrwx---+ 1 ant None 1 Jun  1 19:18 foo        

что является ожидаемым поведением.

23
задан antonio
11.03.2023 1:29 Количество просмотров материала 3143
Распечатать страницу

1 ответ

хорошо, я потратил довольно много времени на это, поэтому позвольте мне захватить мои выводы:

изменение fstab помогает, Но вы должны chmod файл через путь, который проходит через точку монтирования. Другими словами:

mkdir /c/test # Outside MSYS2 root (/).
cd /c/test
touch foo
chmod +x foo # works but presumably won't if inside MSYS root.
chmod +x /c/test/foo # works and presumably will if inside MSYS root.
chmod +x c:\test\foo # does not work -- go figure.

довольно безмозглая, если вы спросите мое скромное мнение. И решение кажется довольно простым: переход от noacl к acl на всех монтированиях MSYS2 по умолчанию (корневое крепление MSYS2 создается автоматически, и нет никакого способа изменить на acl из fstab -- correction: предположительно возможно с опцией override mount).

1
отвечен Boris Kolpackov 2023-03-12 09:17

Постоянная ссылка на данную страницу: [ Скопировать ссылку | Сгенерировать QR-код ]

Ваш ответ

Опубликуйте как Гость или авторизуйтесь

Имя
Вверх