13

我面临一个恼人的问题。这很令人沮丧。我在学校使用计算机来学习 Coursera Startup 课程。我正在尝试连接到 Amazon EC2 实例。我下载了密钥对。我检查权限。

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权限就无法更改用户的权限吗?我会很感激任何帮助。

4

5 回答 5

20

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

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

你应该先运行chown

$ sudo chown -R $(whoami) .

接着

$ sudo chmod -R +rwX .

第一个命令将更改当前文件夹中所有内容的所有者以登录用户,然后授予他们读写执行权限。例如,您可能不应该如此大胆地更改所有权和权限。

于 2019-11-13T11:58:20.967 回答
6

我将文件复制到我的~/.ssh文件夹中,然后使用chmod. 做到了。

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

drwx------    8 roh21  108      272 Jun 26 17:26 .ssh

以及我最初使用的文件夹的权限

drwxrwxrwx    2 roh21  108     2048 Jun 23 06:32 startup

startup我很好奇为什么即使在多次尝试使用该chmod -R选项后我也无法更改文件夹的权限。

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

于 2013-06-27T19:58:33.723 回答
3

看起来您已经发现 Macintosh 并不严格同意 UNIX 权限位

最终,MacOS 设置了 ACL 位,Macintosh Finder 遵循这些位。

为了快速解决您的问题,在您的终端命令行中,输入“ open .”(或您的“”文件夹的路径startup),这将在您的 Macintosh Finder 中打开该文件夹。

然后对文件执行“获取信息”: 分享与权限

您可以在此处更改您的权限。

于 2013-06-22T21:32:53.310 回答
2

看到模式标志旁边的“@”了吗?这意味着存在与文件关联的扩展元数据。用ls -l@来看。该xattr命令将允许您查看和修改它们。那里可能有一些东西阻止您修改文件。

可能还有其他文件标志。使用ls -lO(capital-O) 查看这些。奇怪的是,这些标志之一是“uchg”标志,这意味着您的文件是不可变的。您可以chflags nouchg <filename>按照 أحمد طه 的建议删除它。

最后,文件可能附加了一个 ACL。用ls -le来看。

一般来说,如果你真的想知道与 Mac 上的文件相关的所有元数据,命令是ls -leO@.

于 2021-08-23T22:40:29.087 回答
0

你好,它会工作

chflags nouchg /path/folder/
于 2020-09-08T23:43:07.690 回答