Macos chmod无法更改权限

Macos chmod无法更改权限,macos,permissions,amazon-web-services,amazon-ec2,pem,Macos,Permissions,Amazon Web Services,Amazon Ec2,Pem,我正面临一个恼人的问题。这让人很沮丧。我正在学校用电脑上Coursera创业班。我正在尝试连接到AmazonEC2实例。我下载了密钥对。我检查权限 mac5-library:startup roh21$ ls -l total 6 -rw-rw-rw-@ 1 roh21 108 1692 Jun 22 16:45 startup-class-key.pem 所以,它不安全。所以我需要更改权限。我尝试: mac5-library:startup roh21$ chmod 400 startu

我正面临一个恼人的问题。这让人很沮丧。我正在学校用电脑上Coursera创业班。我正在尝试连接到AmazonEC2实例。我下载了密钥对。我检查权限

mac5-library:startup roh21$ ls -l
total 6
-rw-rw-rw-@ 1 roh21  108  1692 Jun 22 16:45 startup-class-key.pem
所以,它不安全。所以我需要更改权限。我尝试:

mac5-library:startup roh21$ chmod 400 startup-class-key.pem
mac5-library:startup roh21$ ls -l
total 6
-r--r--r--@ 1 roh21  108  1692 Jun 22 16:45 startup-class-key.pem
仍然对所有人具有读取权限。为了演示发生了什么,我这样做:

mac5-library:startup roh21$ chmod 600 startup-class-key.pem
mac5-library:startup roh21$ ls -l
total 6
-rw-rw-rw-@ 1 roh21  108  1692 Jun 22 16:45 startup-class-key.pem
如果没有root权限,是否无法更改用户的权限?我将非常感激任何形式的帮助。

最终,MacOS会设置ACL位,Macintosh Finder会遵守这些ACL位

要快速解决问题,请在终端命令行中键入“
open.
”(或“
启动
”文件夹的路径),这样将打开Macintosh Finder中的文件夹

然后对文件执行“获取信息”操作:


您可以在此处更改权限。

我将文件复制到我的
~/.ssh
文件夹,然后使用
chmod
更改权限。成功了

只是为了提供更多信息,ssh文件夹的权限

drwx------    8 roh21  108      272 Jun 26 17:26 .ssh
以及我最初使用的文件夹的权限

drwxrwxrwx    2 roh21  108     2048 Jun 23 06:32 startup
我很好奇,为什么即使多次尝试使用
chmod-R
选项,我仍然无法更改
startup
文件夹的权限


另外,请注意,我在学校图书馆中使用的是Mac OS X。

可能与最初的问题无关,但可能很有用。(尤其是像我这样的Unix新手)

如果您不是资源所有者,Chmod将不起作用

您应该先运行chown:

然后

$ sudo chmod -R +rwX .
第一个命令将当前文件夹中所有内容的所有者更改为登录用户,第二个命令将授予他们读写执行权限。 例如,您可能不应该如此大胆地更改所有权和权限

你好,它会工作的

chflags nouchg /path/folder/

文件是在外部磁盘上,还是在Amazon服务器上,或者类似的东西上?Gordon,两者都不是。有帮助的是,我将文件复制到我的~/.ssh文件夹,然后使用
chmod
更改权限。成功了。我不知道为什么。如果你能解释一下,我将非常感激。我唯一能想到的是,如果文件位于某个不完全支持权限的卷上。如果不是外部卷,可能是磁盘映像、其他类型的远程卷、Mac OS扩展格式以外的其他卷,。。。像这样的,迈克尔,谢谢你详细的回答。但这没有帮助-它没有给我在Get Info中更改权限的选项。我看到的只是编辑:帮助是,我将文件复制到我的~/.ssh文件夹,然后用
chmod
更改权限。成功了。我不知道为什么。如果你能在你的帖子里解释一下,我很乐意接受这个答案。非常感谢!比任何人的解决方案都好这太棒了。在项目目录中运行
sudochown-R$(whoami)。
为我解决了这个问题。非常感谢。太棒了。解决了我所有的sudo问题
chflags nouchg /path/folder/