bash: доступ запрещен, вспомогательный сценарий Owncloud

Я мало что знаю о Linux и создании серверов, но я хочу создать свой личный веб-диск owncloud, у меня на 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 "\ $ @" {{ 1}} EOM 
 

Сделайте вспомогательный скрипт исполняемым:

 chmod + x / usr / local / bin / occ 
 

В моем терминале я получаю такую ​​ошибку:

Terminal screenshot

Как заставить его работать?

0
задан 29 July 2021 в 10:27

2 ответа

Если вы получаете ошибку "permission denied", попробуйте следующее:

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 файл. (См. Как решить проблему "permission denied" при использовании sudo с перенаправлением в Bash?). Затем вы можете использовать команду chmod с sudo, а также.

0
ответ дан 20 August 2021 в 10:31

Это безумие, учебник использует ubuntu, где 'root' не может быть использован напрямую, тогда он предполагает, что вы вошли в систему как root.

Либо оберните код в другой скрипт и запустите его с помощью sudo, либо извлеките три строки для скрипта из кода и создайте скрипт непосредственно в редакторе. Если вы делаете последнее, удалите '' из последней строки, т.е. "\$@" станет "$@"

0
ответ дан 20 August 2021 в 10:31

Другие вопросы по тегам:

Похожие вопросы: