Я пытаюсь изменить права доступа к моему ключевому файлу key.pem
в Cygwin 1.7.11. У него есть флаги разрешений:-rw-rw----
chmod -c 600 key.pem
Доклады:
режим 'key.pem' изменен с 0660 (rw-rw ----) на 0600 (rw -------)
Тем не мение:
ls -l key.pem
все еще сообщает
Флаги разрешений key.pem по-прежнему: -rw-rw ----
Вот почему я спрашиваю, что SSH жалуется:
Разрешения 0660 для 'key.pem' слишком открыты.
когда я пытаюсь войти в мой экземпляр Amazon EC2. Это проблема с Cygwin & Windows 8 NTFS или я что-то упустил?
windows
cygwin
windows-8-preview
chmod
Castaa
источник
источник
Ответы:
Я использую Cygwin в Win8CP, и у меня была та же проблема. Это определенно ошибка Cygwin, но есть обходной путь: попробуйте запустить:
Более длинное объяснение состоит в том, что по какой-то причине Cygwin's
/etc/passwd
и/etc/group
поколение ставят пользовательскую / основную группу по умолчанию какNone
. И вы не можете изменить разрешениеNone
, поэтомуchmod
группа for не имеет никакого эффекта.Я не пытался восстановить
passwd
/group
файлы самостоятельно, но я сделалchgrp -R Users ~/.ssh
(или, если вы находитесь в предварительной версии Windows 8, с именем группыHomeUsers
). После этого вы можете сделать,chmod 0600
и все будет работать, как ожидалось.chgrp
КUsers
группе может быть сделано в зависимости от того , в других подобных случаях вы найдете. Это даже работает, как и ожидалось, поскольку Cygwin помещает пользователей вUsers
группу в качестве вторичной группы (вместо основной , что было бы правильным поведением).источник
Users
она не будет работать. Используйте,cat /etc/group
чтобы проверить, что вы должны заменитьUsers
. На нидерландском языке, например, вам придется заменитьUsers
наGebruikers
.Начиная с Cygwin 1.7.34 (2015-02-04) метод, который изменяет группу на
Users
более не работает. Вместо этого вам нужно использоватьsetfacl
утилиту Cygwin .Скажем, если вы хотите установить файловый режим, чтобы
644 (rw-r--r--)
сделать это:или используйте более длинный формат:
или скопируйте его режим
getfacl
из файлаfoo
вbar
:Полное руководство находится в разделе «setfacl» руководства пользователя Cygwin . Интересно, почему Cygwin еще не изменил
chmod
утилиту аналогичным образом.источник
Вот скрипт, который использует предложение Люка Ли, но поддерживает восьмеричные аргументы, такие как chmod. Это обеспечивает основу, которая может быть расширена. хотя в настоящее время он поддерживает только восьмеричные аргументы, необходимые для исправления прав доступа к каталогу и файлам key.pem и / или ~ / .ssh.
Я использовал это, чтобы исправить мои каталог и файлы .ssh:
источник
setfacl
сам по себе это ужасно.источник
Если у вас установлен git bash, запустите ту же команду (
chmod -c 600 key.pem
) с git bash и избегайте Cygwin .источник
Эту проблему можно решить, запустив команду ssh-keygen из терминала cygwin (кроме обычной командной строки Windows). Я сделал это в моей машине Windows8.
источник
Запустите установщик Cygwin и обновите его. Ошибка должна быть исправлена.
источник