首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >为什么我不能在Windows 8 CP上使用Cygwin中的chmod?

为什么我不能在Windows 8 CP上使用Cygwin中的chmod?
EN

Stack Overflow用户
提问于 2012-03-05 12:45:57
回答 5查看 14.6K关注 0票数 36

我无法在Windows 8的Cygwin中使用chmod组权限,因此我无法使用ssh密钥ssh连接到服务器。

Bash提示警告:“'/home/KeepZero/.ssh/id_rsa‘的权限0660太开放了。要求其他人不能访问您的私钥文件。”

代码语言:javascript
复制
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
EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2012-04-17 20:03:18

执行ls -al,您将看到您的文件不属于任何组(无)。

只需对您的文件执行一次chgrp Users *,您就会再次恢复正常。

票数 70
EN

Stack Overflow用户

发布于 2012-12-07 08:28:53

Roi Danton's solution可以工作,但是它不能解决根本原因,并且该问题将在您想要更改权限的任何用户创建的文件中再次出现。

要永久解决问题,请执行以下操作:

  1. /etc/group中查找"Users“组的组ID (或与您的区域设置对应的组名)。

在我的安装中,这是545 (您的里程可能会有所不同)。cat /etc/group|egrep '^Users:'将为您提供正确的行。行中的第三个字段是组id。(cat /etc/group|egrep '^Users:'|cut -f3 -d':'只获取id)。

  • 编辑您的/etc/passwd文件。找到您的用户的记录。第四个字段是用户的“主组”。它被错误地设置为不存在的组。将该数字更改为您在上面步骤1中找到的数字。保存etc密码文件。

  • 关闭任何打开的Cygwin窗口/终端,然后打开一个新窗口/终端。创建一个新文件。它应该有一组“用户”,并且您应该能够根据需要更改其权限。
票数 48
EN

Stack Overflow用户

发布于 2014-03-08 00:12:25

出现此问题的一个可能原因是您已将.ssh文件夹复制到实际的pc上...

创建您自己的文件夹,然后您就可以获得正确的用户组。不复制文件夹...它们被分配到不匹配的用户组。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9561759

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档