[LINUX] Verwendung von Variablen in systemd Unit-Definitionsdateien

Wir zeigen Ihnen, wie Sie ** Variablen ** in der Einheitendefinitionsdatei verwenden, wenn Sie einen Dienst mit dem Befehl systemctl starten.

Umgebung

1. Geben Sie eine Variable in der Einheitendefinitionsdatei an

Sie können Variablen mit "Umgebung" in der Einheitendefinitionsdatei angeben. Erstellen Sie hier eine Unit-Definitionsdatei von test.service und überprüfen Sie diese.

/etc/systemd/system/test.service


[Unit]
Description=TestService

[Service]
Environment=TEST_VALUE1=display1
Environment=TEST_VALUE2=display2
ExecStart=/bin/echo ${TEST_VALUE1} ${TEST_VALUE2}

Beginnen Sie mit systemctl start test.

[root@CENTOS7 ~]# systemctl start test
[root@CENTOS7 ~]#

Überprüfen Sie mit journalctl -u test.

[root@CENTOS7 ~]# journalctl -u test
--Die Protokolle beginnen am Tag 2019-12-29 17:19:15 JST,Ende am Tag 2019-12-29 18:07:04 JST.
29. Dezember 18:07:04 CENTOS7 systemd[1]: Started TestService.
29. Dezember 18:07:04 CENTOS7 echo[1398]: display1 display2

Die Werte der Variablen "TEST_VALUE1", "TEST_VALUE2", "display1", "display2" werden angezeigt.

2. Geben Sie Umgebungsvariablen in der Einheitendefinitionsdatei an

Sie können EnvironmentFile in der Unit-Definitionsdatei verwenden, um die Umgebungsvariablendatei anzugeben. Erstellen Sie hier eine Unit-Definitionsdatei von test2.service und überprüfen Sie diese.

/etc/sysconfig/test2


TEST_VALUE1=display1
TEST_VALUE2=display2

/etc/systemd/system/test2.service


[Unit]
Description=Test2Service

[Service]
EnvironmentFile=/etc/sysconfig/test2
ExecStart=/bin/echo ${TEST_VALUE1} ${TEST_VALUE2}

Beginnen Sie mit systemctl start test2.

[root@CENTOS7 ~]# systemctl start test2
[root@CENTOS7 ~]#

Überprüfen Sie mit journalctl -u test2.

[root@CENTOS7 ~]# journalctl -u test2
--Die Protokolle beginnen am Tag 2019-12-29 17:19:15 JST,Ende am Tag 2019-12-29 18:19:45 JST.
29. Dezember 18:19:45 CENTOS7 systemd[1]: Started Test2Service.
29. Dezember 18:19:45 CENTOS7 echo[1444]: display1 display2

Die in / etc / sysconfig / test2 eingestellten Werte der Variablen TEST_VALUE1 und TEST_VALUE2, display1 und display2 werden angezeigt.

Ergänzung

Selbst wenn Sie "TEST_VALUE1 = $ PATH" usw. in der Umgebungsvariablendatei "/ etc / sysconfig / test2" angeben, wird "$ PATH" nicht wie unten gezeigt erweitert.

/etc/sysconfig/test2


TEST_VALUE1=display1
TEST_VALUE2=$PATH
[root@CENTOS7 ~]# systemctl start test2
[root@CENTOS7 ~]# journalctl -u test2
--Die Protokolle beginnen am Tag 2019-12-29 17:19:15 JST,Ende am Tag 2019-12-29 18:25:04 JST.
29. Dezember 18:25:04 CENTOS7 systemd[1]: Started Test2Service.
29. Dezember 18:25:04 CENTOS7 echo[1457]: display1 $PATH

das ist alles

Recommended Posts

Verwendung von Variablen in systemd Unit-Definitionsdateien
Verwendung von SQLite in Python
Wie man MySQL mit Python benutzt
Verwendung von ChemSpider in Python
Verwendung von PubChem mit Python
Verwendung diskreter Werte als Variablen in Scipy optimieren
Verwendung berechneter Spalten in CASTable
Dynamisches Definieren von Variablen in Python
Verwendung von Google Test in C-Sprache
Verwendung von Funktionen in separaten Dateien Perl-Version und Python-Version
Verwendung von Anacondas Interpreter mit PyCharm
Verwendung von __slots__ in der Python-Klasse
Verwendung regulärer Ausdrücke in Python
So verwenden Sie Map in ViewPager von Android
Lesen von CSV-Dateien mit Pandas
Verwendung ist und == in Python
Verwendung der C-Bibliothek in Python
Zusammenfassung zum Importieren von Dateien in Python 3
Verwendung der Python-Bildbibliothek in der Python3-Serie
Zusammenfassung der Verwendung von MNIST mit Python
So überprüfen / extrahieren Sie Dateien im RPM-Paket
So erhalten Sie die Dateien im Ordner [Python]
Wie man tkinter mit Python in Pyenv benutzt
Verwenden Sie os.getenv, um Umgebungsvariablen in Python abzurufen
Wie benutzt man Python-Shell
Hinweise zur Verwendung von tf.data
Verwendung von virtualenv
Wie benutzt man Seaboan?
Wie man Shogun benutzt
Verwendung von Pandas 2
Verwendung von Virtualenv
Verwendung von numpy.vectorize
Verwendung von pytest_report_header
Wie man teilweise verwendet
Wie man Bio.Phylo benutzt
Verwendung von SymPy
Wie man x-means benutzt
Verwendung von IPython
Verwendung von virtualenv
Wie benutzt man Matplotlib?
Verwendung von iptables
Wie benutzt man numpy?
Verwendung von TokyoTechFes2015
Wie benutzt man venv
Verwendung des Wörterbuchs {}
Wie benutzt man Pyenv?
Verwendung der Liste []
Wie man Python-Kabusapi benutzt
Verwendung von OptParse
Verwendung von return
Wie man Imutils benutzt
[Für Anfänger] Wie man den Befehl say mit Python benutzt!
[Python] So erweitern Sie Variablen in einer Zeichenfolge
Ein Memorandum zur Verwendung von Keras 'keras.preprocessing.image
So laden Sie Dateien in Google Drive mit Google Colaboratory
Verwendung von Bootstrap in der generischen Klassenansicht von Django