httpd reload, поскольку вторая команда в bash не работает

Я пытаюсь запустить команду, которая выполняет одно действие, чтобы обновить сертификат, а затем перезагружает Apache.

Для этого я использую следующее:

sudo /home/ec2-user/letsencrypt/letsencrypt-auto --config 
/home/ec2-user/letsencrypt/cert.ini certonly --debug 
&& service httpd reload

Что дает мне следующее:

Updating letsencrypt and virtual environment dependencies......
Requesting root privileges to run with virtualenv:  /root/.local/share/letsencrypt/bin/letsencrypt --config /home/ec2-user/letsencrypt/secure_textinconfidence_com.ini certonly --debug
Version: 1.1-20080819
Version: 1.1-20080819

IMPORTANT NOTES:
 - Congratulations! Your certificate and chain have been saved at
   /etc/letsencrypt/live/secure.textinconfidence.com/fullchain.pem.
   Your cert will expire on 2016-05-03. To obtain a new version of the
   certificate in the future, simply run Let's Encrypt again.
 - If you like Let's Encrypt, please consider supporting our work by:

   Donating to ISRG / Let's Encrypt:   https://letsencrypt.org/donate
   Donating to EFF:                    https://eff.org/donate-le

Reloading httpd: not reloading due to configuration syntax error
                                                   [FAILED]

Однако когда я запускаю:

sudo service httpd configtest

Я получаю:

Syntax OK

Что-то не так с моей командой при объединении с сертификатом продление?

0
задан 9 February 2016 в 15:34
1 ответ

Как указано @chicks, оболочка интерпретирует часть && без sudo, таким образом:

sudo /home/ec2-user/letsencrypt/letsencrypt-auto --config 
/home/ec2-user/letsencrypt/cert.ini certonly --debug 
&& sudo service httpd reload

Сортирует проблему

3
ответ дан 4 December 2019 в 12:24

Теги

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