我无法在Windows 8的Cygwin中使用chmod组权限,因此我无法使用ssh密钥ssh连接到服务器。
Bash提示警告:“'/home/KeepZero/.ssh/id_rsa‘的权限0660太开放了。要求其他人不能访问您的私钥文件。”
KeepZero@t400win8 ~
$ ls
test
KeepZero@t400win8 ~
$ ls -l
total 0
-rwxrwx--- 1 KeepZero KeepZero 0 Mar 4 15:07 test
KeepZero@t400win8 ~
$ chmod 700 test
KeepZero@t400win8 ~
$ ls -l test
-rwxrwx--- 1 KeepZero KeepZero 0 Mar 4 15:07 test
KeepZero@t400win8 ~
$ chmod 777 test
KeepZero@t400win8 ~
$ ls -l test
-rwxrwxrwx 1 KeepZero KeepZero 0 Mar 4 15:07 test
发布于 2012-04-17 12:03:18
执行ls -al
,您将看到您的文件不属于任何组(无)。
只需对您的文件执行一次chgrp Users *
,您就会再次恢复正常。
发布于 2012-12-07 00:28:53
Roi Danton's solution可以工作,但是它不能解决根本原因,并且该问题将在您想要更改权限的任何用户创建的文件中再次出现。
要永久解决问题,请执行以下操作:
/etc/group
中查找"Users“组的组ID (或与您的区域设置对应的组名)。在我的安装中,这是545 (您的里程可能会有所不同)。cat /etc/group|egrep '^Users:'
将为您提供正确的行。行中的第三个字段是组id。(cat /etc/group|egrep '^Users:'|cut -f3 -d':'
只获取id)。
/etc/passwd
文件。找到您的用户的记录。第四个字段是用户的“主组”。它被错误地设置为不存在的组。将该数字更改为您在上面步骤1中找到的数字。保存etc
密码文件。
发布于 2014-03-07 16:12:25
出现此问题的一个可能原因是您已将.ssh文件夹复制到实际的pc上...
创建您自己的文件夹,然后您就可以获得正确的用户组。不复制文件夹...它们被分配到不匹配的用户组。
https://stackoverflow.com/questions/9561759
复制