невозможно запустить сервис в systemd

Я пытаюсь запустить службу в Ubuntu 16.04. И написал этот .service файл

[Unit]
Description=Executing during boot

[Service]
Type=forking
ExecStart=/home/lokesh/Documents/script.sh
TimeoutSec=30
Restart=on-failure
RestartSec=30
StartLimitInterval=350
StartLimitBurst=10

[Install]
WantedBy=multi-user.target
Alias=startUp.service

Добавил этот сервисный файл в /etc/systemd/system/ И это файл сценария, поэтому в основном я пытаюсь выполнить простую операцию записи в файл

#!/bin/sh
echo "I'm feeling good" >> txt
echo "how are you" >> txt 

Перед перезапуском я протестировал файл сценария, он работает и создает текстовый файл с некоторыми текстами в нем. И затем последовали следующие шаги:

chmod u+x /path/to/script/script.sh
sudo systemctl start startUp.service
sudo systemctl stop startUp.service
sudo systemctl enable startUp.service

Но после перезагрузки я должен получить новый файл с именем txt с несколькими текстами. Но я не могу получить вывод. Это происходит из-за того, что служба не запущена или что-то не так с файлом службы или файлом сценария?

С уважением,

0
задан 22 November 2017 в 16:05

1 ответ

Любая программа, сценарий или служба, которая запускается во время загрузки, имеет ограниченную среду. Поэтому вы всегда должны использовать полные пути.
В этом случае вам нужно ввести полный путь, по которому нужно создать txt. Итак, согласно вашему примеру:

/ home / lokesh / Documents / txt

Я не удивлюсь, если файл txt будет находится в / root, при условии, что ваша служба запускается

0
ответ дан 22 November 2017 в 16:05

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

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