我对 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