В моем терминале cygwin
я не мог изменить файлы в моем домашнем каталоге
$ echo $HOME
/home/user123
$ cd $HOME
$ pwd
/home/user123
$ ls -ld .
drwxr-xr-x+ 1 user123 None 0 Jan 2 16:46 .
$ touch foo
touch: cannot touch `foo': Permission denied
$ whoami
user123
Однако, если я запускаю от имени Run as administrator
при запуске терминала cygwin
, я могу изменить файл
$ echo $HOME
/home/user123
$ cd $HOME
$ pwd
/home/user123
$ touch foo
$ ls -ld foo
-rw-r--r-- 1 user123 None 0 Jan 2 17:00 foo
$ whoami
user123
Как я могу исправить эту проблему? Спасибо!
Обновить
Я проверил свойства папки, как записано Windows, это показывает, что флажок «Только для чтения» был установлен. (Смотрите скриншот ниже.) Я пытался снять его, но это не помогло. Также я заметил две вещи:
- Метка флажка гласит «Только для чтения (применяется только к файлам в папке). Означает ли это, что папки не помечены как «Только для чтения», независимо от состояния флажка? Видимо моя текущая проблема заключается в том, что домашняя папка помечена как доступная только для чтения (кроме администратора). Как мне это изменить?
Когда я попытался изменить статус «Только для чтения» (снял флажок и «
Apply
), у меня появилось много всплывающих окон, в которых говорилосьПроизошла ошибка применения атрибутов к файлу Доступ запрещен.
Соответствующие пути к файлам - это все файлы, начинающиеся с точки (.) (UNIX скрытые файлы). В своей работе я выбрал опцию Ignore
для этих всплывающих окон.
Обновление 2
Ниже приведен скриншот для вкладки безопасности. Обратите внимание, что кнопка « Add
неактивна (хотя я делал это с помощью « Run as administrator
). Кроме того, когда я вошел на вкладку, появляется всплывающее окно с этим сообщением:
The permissions on user123 are incorrectly ordered,
which may cause some entries to be ineffective.
Еще один вопрос: как мне узнать, как два пользователя с длинными числовыми идентификаторами (S-1-5-21 -...) сопоставляются с символическими именами пользователей?