当cd
进入我的一个目录时openfire
,返回以下错误:
bash: cd: openfire: Permission denied
有没有办法解决?
当cd
进入我的一个目录时openfire
,返回以下错误:
bash: cd: openfire: Permission denied
有没有办法解决?
@user812954 的回答非常有帮助,但我必须分两步执行此操作:
sudo su
cd directory
然后,要退出“超级用户”模式,只需键入exit
.
进入超级用户模式,cd进入你无权进入的目录。Sudo 需要管理员密码。
sudo su
cd directory
如果它是您拥有的目录,请授予您对它的访问权限:
chmod u+rx,go-w openfire
这将授予您使用目录和其中的文件 ( x
) 并列出其中的文件( ) 的权限r
;它还拒绝组和其他人对该目录的写入权限,这通常是正确的(尽管有时您可能希望允许组在您的目录中创建文件 - 但如果您这样做,请考虑在目录上使用粘性位)。
如果它是其他人的目录,您可能需要所有者的帮助来更改权限,以便您可以访问它(或者您需要帮助root
来更改您的权限)。
chmod +x openfire
为我工作。它将执行权限添加到 openfire 文件夹。
或者,您可以执行以下操作:
sudo -s
cd directory
你有几个选择:
x
对该目录具有 e ecute 权限的用户帐户。x
执行权限。
chmod(1)
更改权限或setfacl(1)
命令为您的用户帐户添加访问控制列表条目。(这也需要使用该acl
选项挂载文件系统;有关挂载参数的详细信息,请参见mount(8)
和fstab(5)
。)如果不了解更多问题,就不可能提出正确的方法;为什么目录权限设置的方式是?为什么需要访问该目录?
除非您有 sudo 权限来更改它或在您自己的用户组/帐户中更改它,否则您将无法进入它。
在终端中查看man chmod
有关更改目录权限的更多信息。
我知道这篇文章很旧,但是对于 Linux 机器上的上述答案,我必须做的是:
sudo chmod +x 目录