Автоматически предлагать установить разрешение на выполнение для сценариев оболочки

Вы неправильно понимаете назначение этой строки в юнит-файле:

Environment="LOGPATH=/var/log/menu/menu-core-price-update"

Это свойство предназначено для установки каталога, в который ваше приложение Java будет входить, если оно того пожелает. Но если приложение не создает журналы через log4j или любой другой регистратор, который он использует, журналов в этом месте не будет.

В службах systemd все журналы для службы приложений выполняются через journald. Для просмотра журналов приложений:

$ journalctl -u menu-core-price-update.service

Пример

Вот первые 10 строк логов моего sshd

$ journalctl -u sshd.service -n 10
-- Logs begin at Tue 2018-07-17 16:01:01 EDT, end at Sat 2018-07-21 03:05:37 EDT. --
Jul 21 00:55:04 centos7 sshd[9059]: Connection closed by 127.0.0.1 port 33718 [preauth]
Jul 21 00:55:04 centos7 sshd[9067]: Connection closed by 127.0.0.1 port 33720 [preauth]
Jul 21 00:55:08 centos7 sshd[9078]: pam_unix(sshd:auth): authentication failure; logname= uid=
Jul 21 00:55:10 centos7 sshd[9078]: Failed password for user1 from 127.0.0.1 port 33722 ssh2
Jul 21 00:55:10 centos7 sshd[9078]: error: maximum authentication attempts exceeded for user1
Jul 21 00:55:10 centos7 sshd[9078]: Disconnecting: Too many authentication failures [preauth]
Jul 21 00:55:21 centos7 sshd[9110]: Connection closed by 127.0.0.1 port 33724 [preauth]
Jul 21 00:55:21 centos7 sshd[9118]: Connection closed by 127.0.0.1 port 33726 [preauth]
Jul 21 00:55:23 centos7 sshd[9129]: Accepted password for user1 from 127.0.0.1 port 33728 ssh2
Jul 21 02:24:41 centos7 sshd[9433]: Accepted publickey for vagrant from 10.0.2.2 port 50662 ss

Ссылки

0
11.08.2020, 23:31
1 ответ

Вместо создания сценариев рассмотрите возможность создания функций(и преобразования существующих сценариев в функции ). Таким образом, вам больше никогда не придется беспокоиться о разрешениях.

Скрипты легко конвертируются в функции:

  1. Удалите расширение .shиз имени файла. (Технически необязательно, но это соглашение .)
  2. Убедитесь, что родительский каталог файла находится в вашем $fpath.
  3. autoloadваша функция в вашем .zshrc.

Если вам нужны разные функции для разных проектов, рассмотрите возможность использованияhttps://github.com/direnv/direnv. Таким образом, каждый проект может иметь свои собственные функции $fpathи autoloaded.

0
18.03.2021, 23:13

Теги

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