Я попытаюсь ответить настолько лучше всего, как я могу, не настолько знакомый с systemd.
Сценарий, который предоставлен, является просто стандартным, таким образом, можно всегда запускать его с script_name start
.
Из того, что я видел в страницах справочника systemd, можно определить зависимости, и лучший должен был бы использовать Прежде и После определенных целей. При рассмотрении файлов существует псевдоним от runlevel 2 3 и 4, чтобы всегда быть multiuser.target.
если Вы делаете systemctl зависимости списка basic.target, можно легко выяснить, где Вы хотите, чтобы Ваш сервис запустился.
[Unit]
Description=my Service
Before=basic.target
After=local-fs.target
[Service]
Type=simple
ExecStart=/path/to/script start
ExecStop=/path/to/script stop
сохраните пример файла/usr/lib/systemd/myservice.service. systemctl, включают myservice.service.
Что показывает locale
? Если он показывает, что для «LC _ALL» установлено значение, вам может потребоваться unset
его.
unset LC_ALL
Тогда попробуйте:
export LANG="en_US.UTF-8"
export LC_COLLATE="C"
export LC_TIME="en_US.UTF-8"
Если это работает, добавьте эти экспорты в свой файл ~/.bashrc
. (и, возможно, команда unset LC_ALL
до этого тоже)
LC_ALL
This variable determines the values for all locale categories. The value of the LC_ALL environment variable has precedence over any of the other environment variables starting with LC_ (LC_COLLATE, LC_CTYPE, LC_MESSAGES, LC_MONETARY, LC_NUMERIC, LC_TIME) and the LANG environment variable.
http://pubs.opengroup.org/onlinepubs/7908799/xbd/envvar.html