bash:权限被拒绝,Owncloud 帮助脚本

bash:权限被拒绝,Owncloud 帮助脚本

我对 Linux 和服务器创建了解不多,但我想创建自己的私人云网络驱动器,我在 Raspberry pi4 上安装了 Linux Ubuntu 20.04 服务器。我已经开始使用这个教程但我一开始遇到了问题。当我尝试创建辅助脚本(?):

创建 occ 帮助脚本

创建一个辅助脚本来简化运行 occ 命令。

FILE="/usr/local/bin/occ"
/bin/cat <<EOM >$FILE
#! /bin/bash
cd /var/www/owncloud
sudo -E -u www-data /usr/bin/php /var/www/owncloud/occ "\$@"
EOM

使帮助脚本可执行:

chmod +x /usr/local/bin/occ

在我的终端中我收到这种错误:

终端截图

如何让它工作?

答案1

这太疯狂了,本教程使用的是 ubuntu,其中“root”不能直接使用,然后它假定您已以 root 身份登录。

要么将代码包装在另一个脚本中,然后使用 sudo 运行该脚本,要么从代码中提取脚本的三行,然后直接使用编辑器创建脚本。如果选择后者,请从最后一行中删除 '',即“\$@”变为“$@”

答案2

如果您收到权限被拒绝错误,您可以尝试以下操作:

FILE="/usr/local/bin/occ"
sudo tee "$FILE" <<'EOM'
#! /bin/bash
cd /var/www/owncloud
sudo -E -u www-data /usr/bin/php /var/www/owncloud/occ "$@"
EOM

这将tee与 一起运行sudo,它应该允许写入文件/usr/local/bin/occ。(参见在 Bash 中使用带重定向的 sudo 时如何解决“权限被拒绝”问题?)那么您也可以使用chmod命令。sudo

相关内容