未经许可进入目录


117

cd荷兰国际集团到我的目录一个叫openfire返回以下错误:

bash: cd: openfire: Permission denied

有没有办法解决?

Answers:


149

@ user812954的答案非常有帮助,除了我必须分两步执行此操作:

sudo su
cd directory

然后,要退出“超级用户”模式,只需键入exit


107

进入超级用户模式,然后cd进入您无权进入的目录。Sudo需要管理员密码。

sudo su
cd directory

2
完美的答案!
gaurav

46

如果它是您拥有的目录,请授予自己访问它的权限:

chmod u+rx,go-w openfire

这样,您就可以使用目录及其中的文件(x)并列出其中的文件(r);它还会拒绝组和其他人对该目录的写权限,这通常是正确的(尽管有时您可能希望允许组在目录中创建文件-但如果这样做,请考虑使用目录上的粘性位)。

如果它是其他人的目录,则可能需要所有者提供一些帮助来更改权限,以便您可以访问它(或者需要帮助root来更改权限)。


现在已经搜寻了一个小时,试图解决以下事实:如果不使用“ sudo”(我知道一定是错误的),我将无法进行SSH-并且此问题已得到解决。最后!
GrayedFox

25

chmod +x openfire为我工作。它将执行权限添加到openfire文件夹。


我不确定@Winnemucca。我以前没有和docker合作过。但我认为它可以
wcyn

6

您有几种选择:

  • 使用其他用户帐户,该用户帐户x对该目录具有执行权限。
  • 更改目录的权限,以允许您的用户帐户具有x执行权限。
    • 使用chmod(1)更改权限或
    • 使用该setfacl(1)命令为您的用户帐户添加访问控制列表条目。(这还需要使用该acl选项挂载文件系统;有关mount参数的详细信息,请参见mount(8)fstab(5)。)

如果不进一步了解问题,就不可能提出正确的方法。为什么目录权限按原样设置?为什么需要访问该目录?



1

除非您拥有sudo权限来更改它或其在您自己的用户组/帐户中的权限,否则您将无法进入它。

man chmod在终端中签出有关更改目录权限的更多信息。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.