sudo chown -R $OWNER:$OWNER 命令错误

sudo chown -R $OWNER:$OWNER 命令错误

当我尝试在 Ubuntu 12 上创建新域时,我使用了以下命令:

sudo mkdir -p /var/www/domain.com/public_html

sudo chown -R $OWNER:$OWNER /var/www/domain.com/public_html

但是当我复制命令时我犯了一个错误,我只是复制了这个:

sudo chown -R $OWNER:$OWNER

然后按 ENTER,它会显示很多错误。

现在我所有的网站都无法使用了。我phpmyadmin也无法访问。

请帮我修复这个错误。

答案1

看起来您的网站遇到了更大的问题,因为运行该命令出现的错误sudo chown -R $OWNER:$OWNER应该是这样的:

chown:':' 后缺少操作数

尝试“chown --help”获取更多信息。

基本上说该命令根本没有执行任何操作,因为它没有任何意义,因为没有指定文件(缺少操作数)并且因此没有对您的系统进行任何更改。

没有变化,所以没问题。现在,继续运行其余命令。


我之前提到的更大问题是您无法再访问您的网站。您可能想针对该问题单独提问以获得所需的帮助。

但是,以下是一些基本知识:

我想说的是,我不太确定 $OWNER 是否正确,它也可能什么都不做,但这次没有错误。

您可以使用以下命令列出当前目录中所有文件的所有权和权限:

ls-l

要列出特定目录的文件,您可以像这样指定它以显示 public_html 的所有权和权限:

ls -l /var/www/domain.com

通常,所有文件和目录都应由 root 拥有,如下所示:

sudo chown -R root:root /var/www

如果您想将所有权更改为当前用户而不是 root,您可以使用此命令,该命令类似于您之前尝试运行的命令:

sudo chown -R $USER:$USER /var/www/domain.com/public_html

所有目录都应使用 chmod 设置为 755 (drwxr-xr-x)。

所有非目录文件(例如 index.html)都应更加严格,并应使用 chmod 设置为 644(-rw-r--r--)

您可以先将 /var/www 下的所有文件和目录递归设置为 755,然后再将各个文件设置为 644,如下所示:

sudo chmod -R 755 /var/www

这个将单个文件设置为 644 的示例

sudo chmod 644 /var/www/domain.com/index.html

此示例将把目录 public_html 中包含的所有文件(假设没有其他目录)设置为 644。

sudo chmod 644 /var/www/domain.com/public_html/*

再次使用ls -l来验证权限是否设置正确。

权限设置为 755 的目录的示例命令和输出:

ls -l / | grep var
drwxr-xr-x   1 root  root       30 Nov  22 19:25 var

示例命令和输出列出目录中所有文件并将适当的权限设置为 644:

ls -l /var/domain.com/public_html
-rw-r--r-- 1 root root   425 Dec  19 03:18 index.html
-rw-r--r-- 1 root root   425 Dec  19 03:18 example.html

相关内容