Inhaltsverzeichnis
Linux-Dienst kann keine Systemumgebungsvariablen verwenden
Detaillierte Beschreibung
Service-Datei
Über protokollbezogene Konfiguration, Kann unter https://blog.csdn.net/www_dong/article/details/128053496 eingesehen werden.
Heim Betrieb und Instandhaltung Betrieb und Wartung von Linux So lösen Sie das Problem, dass der Linux-Dienst keine Systemumgebungsvariablen verwenden kann

So lösen Sie das Problem, dass der Linux-Dienst keine Systemumgebungsvariablen verwenden kann

May 16, 2023 pm 07:28 PM
linux service

    Linux-Dienst kann keine Systemumgebungsvariablen verwenden

    Detaillierte Beschreibung

    Ich habe ein MySQL erstellt Vorher Während der Installation mit mehreren Instanzen ist die Installation erfolgreich und Linux kann erfolgreich gestartet werden. Das Verschieben von support-files/mysqld_multi.server in das Verzeichnis /etc/init.d/ und das Festlegen des Startvorgangs (chkconfig xxx on) schlägt jedoch fehl. ?? Bei verschiedenen Versuchen habe ich festgestellt, dass es in einer normalen Umgebung verwendet werden kann, die von /etc/profile festgelegte MySQL-Umgebungsvariable kann jedoch nicht in dem von der Shell erstellten Dienst gedruckt werden 🎜#Meine /etc/frofile-Datei:

    export PATH=/usr/local/mysql/bin:$PATH
    Nach dem Login kopieren
    #🎜 🎜#Ausführung: Sie können sehen, dass MySQL-Umgebungsvariablen festgelegt sind

    [root@localhost init.d]# echo $PATH
    /usr/local/mysql/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin
    Nach dem Login kopieren

    Dann definieren wir ein System-V-Skript

    [root@localhost init.d]# vi /etc/init.d/mysqlmul
    #!/bin/bash
    
    #chkconfig: - 75 15
    #description: test
    Nach dem Login kopieren

    Berechtigungen erteilen und auf Dienst setzen#🎜🎜 #
    [root@localhost init.d]#chmod +x /etc/init.d/mysqlmul
    [root@localhost init.d]#chkconfig --add mysqlmul
    Nach dem Login kopieren

    Dienst ausführen: Als Ergebnis sehen Sie, dass keine MySQL-Umgebungsvariable vorhanden ist

    [root@localhost init.d]# service mysqlmul start
    /sbin:/usr/sbin:/bin:/usr/bin
    Nach dem Login kopieren

    Lösung#🎜 🎜#

    1. Gerade in /etc/init.d/xxx export PATH=/usr/local/mysql/bin:$PATH

    zum eingestellten Dienst hinzufügen . Hinweis:

    beim Einfügen eines Shell-Skripts Wenn Sie es in einen Dienst einfügen, müssen Sie PATH und andere Umgebungen einrichten.

    Verwendung von Umgebungsvariablendateien in Servicedateien

    Testvorbereitung

    C++-Testprogramm

    Der Inhalt von LogTest.cpp ist wie folgt:

    // 测试代码
    
    #include <stdio.h>
    #include <iostream>
    
    using namespace std;
    
    int main(int argc, const char* argv[])
    {
        int size = 0;
        // 解析传入参数(argc和argv),代码略
        // ...
        
    	cout << size <<endl;
        
    	while(1);
    	return 0;
    }
    Nach dem Login kopieren

    Service-Datei

    LogTest.service-Datei

    [Unit]
    Description=LogTest
    After=network.target 
    
    [Service]
    Type=simple
    EnvironmentFile=-/etc/sysconfig/LogTest
    ExecStart=/usr/local/MyTest/LogTest -s ${TESTSIZE}
    ExecStop=/bin/kill -s QUIT $MAINPID
    StandardOutput=syslog
    StandardError=syslog
    SyslogIdentifier=LogTest
    
    [Install]
    WantedBy=multi-user.target
    Nach dem Login kopieren

    Umgebungsvariablendatei #🎜 🎜#

    Die Umgebungsvariablendatei LogTest wird im Verzeichnis /etc/sysconfig/ abgelegt.

    # 环境变量文件,可根据需要新增
    TESTSIZE=10
    Nach dem Login kopieren
    Testprozess

    1) Kompilieren Sie das C++-Testprogramm und kopieren Sie das Testprogramm in das Verzeichnis /usr/local/MyTest/.

    cp LogTest /usr/local/MyTest/

    2) Protokollkonfiguration

    Über protokollbezogene Konfiguration, Kann unter https://blog.csdn.net/www_dong/article/details/128053496 eingesehen werden.

    3) Laden der Servicedatei

    # 文件拷贝
    cp LogTest.service /usr/lib/systemd/system
    
    # 文件加载
    systemctl daemon-reload
    
    # 程序启动
    systemctl start LogTest
    
    # 查看进程是否启动成功
    ps -aux | grep LogTest
    Nach dem Login kopieren
    4) LogTest-Programmprotokoll anzeigen

    # 进入日志所在目录
    cd /var/log
    
    # 查看LogTest.log
    cat LogTest.log
    Nach dem Login kopieren
    Hinweis: Das Protokoll druckt 10 aus, was darauf hinweist, dass der gesamte Vorgang abgeschlossen ist ist erfolgreich#🎜 🎜#

    Das obige ist der detaillierte Inhalt vonSo lösen Sie das Problem, dass der Linux-Dienst keine Systemumgebungsvariablen verwenden kann. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

    Erklärung dieser Website
    Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

    Heiße KI -Werkzeuge

    Undresser.AI Undress

    Undresser.AI Undress

    KI-gestützte App zum Erstellen realistischer Aktfotos

    AI Clothes Remover

    AI Clothes Remover

    Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

    Undress AI Tool

    Undress AI Tool

    Ausziehbilder kostenlos

    Clothoff.io

    Clothoff.io

    KI-Kleiderentferner

    AI Hentai Generator

    AI Hentai Generator

    Erstellen Sie kostenlos Ai Hentai.

    Heißer Artikel

    R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
    3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
    R.E.P.O. Beste grafische Einstellungen
    3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
    R.E.P.O. So reparieren Sie Audio, wenn Sie niemanden hören können
    4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
    WWE 2K25: Wie man alles in Myrise freischaltet
    1 Monate vor By 尊渡假赌尊渡假赌尊渡假赌

    Heiße Werkzeuge

    Notepad++7.3.1

    Notepad++7.3.1

    Einfach zu bedienender und kostenloser Code-Editor

    SublimeText3 chinesische Version

    SublimeText3 chinesische Version

    Chinesische Version, sehr einfach zu bedienen

    Senden Sie Studio 13.0.1

    Senden Sie Studio 13.0.1

    Leistungsstarke integrierte PHP-Entwicklungsumgebung

    Dreamweaver CS6

    Dreamweaver CS6

    Visuelle Webentwicklungstools

    SublimeText3 Mac-Version

    SublimeText3 Mac-Version

    Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

    Wofür ist Linux eigentlich gut? Wofür ist Linux eigentlich gut? Apr 12, 2025 am 12:20 AM

    Linux eignet sich für Server, Entwicklungsumgebungen und eingebettete Systeme. 1. Als Serverbetriebssystem ist Linux stabil und effizient und wird häufig zur Bereitstellung von Anwendungen mit hoher Konreise verwendet. 2. Als Entwicklungsumgebung bietet Linux effiziente Befehlszeilen -Tools und Paketmanagementsysteme, um die Entwicklungseffizienz zu verbessern. 3. In eingebetteten Systemen ist Linux leicht und anpassbar und für Umgebungen mit begrenzten Ressourcen geeignet.

    So sehen Sie den Instanznamen von Oracle So sehen Sie den Instanznamen von Oracle Apr 11, 2025 pm 08:18 PM

    Es gibt drei Möglichkeiten, Instanznamen in Oracle anzuzeigen: Verwenden Sie den "SQLPLUS" und "Instance_name aus v $ Instance". Befehle in der Befehlszeile. Verwenden Sie den "show Instance_name;" Befehl in SQL*Plus. Überprüfen Sie die Umgebungsvariablen (Oracle_sid unter Linux) über den Task -Manager des Betriebssystems, den Oracle Enterprise Manager oder über das Betriebssystem.

    Verwenden von Docker mit Linux: eine umfassende Anleitung Verwenden von Docker mit Linux: eine umfassende Anleitung Apr 12, 2025 am 12:07 AM

    Die Verwendung von Docker unter Linux kann die Entwicklung und die Bereitstellungseffizienz verbessern. 1. Installieren Sie Docker: Verwenden Sie Skripte, um Docker auf Ubuntu zu installieren. 2. Überprüfen Sie die Installation: Führen Sie die Sudodockerrunhello-Welt aus. 3. Basisnutzung: Erstellen Sie einen Nginx-Container-Dockerrun-Namemy-Nginx-P8080: 80-DNGinx. 4. Erweiterte Verwendung: Erstellen Sie ein benutzerdefiniertes Bild, erstellen und führen Sie mit Dockerfile aus. 5. Optimierung und Best Practices: Befolgen Sie Best Practices zum Schreiben von Dockerfiles mit mehrstufigen Builds und DockerComponpose.

    So starten Sie Apache So starten Sie Apache Apr 13, 2025 pm 01:06 PM

    Die Schritte zum Starten von Apache sind wie folgt: Installieren Sie Apache (Befehl: sudo apt-Get-Get-Installieren Sie Apache2 oder laden Sie ihn von der offiziellen Website herunter). (Optional, Linux: sudo systemctl

    Was tun, wenn der Port Apache80 belegt ist Was tun, wenn der Port Apache80 belegt ist Apr 13, 2025 pm 01:24 PM

    Wenn der Port -80 -Port der Apache 80 besetzt ist, lautet die Lösung wie folgt: Finden Sie den Prozess, der den Port einnimmt, und schließen Sie ihn. Überprüfen Sie die Firewall -Einstellungen, um sicherzustellen, dass Apache nicht blockiert ist. Wenn die obige Methode nicht funktioniert, konfigurieren Sie Apache bitte so, dass Sie einen anderen Port verwenden. Starten Sie den Apache -Dienst neu.

    So überwachen Sie die NGINX SSL -Leistung auf Debian So überwachen Sie die NGINX SSL -Leistung auf Debian Apr 12, 2025 pm 10:18 PM

    In diesem Artikel wird beschrieben, wie die SSL -Leistung von NGINX -Servern auf Debian -Systemen effektiv überwacht wird. Wir werden Nginxexporter verwenden, um Nginx -Statusdaten in Prometheus zu exportieren und sie dann visuell über Grafana anzeigen. Schritt 1: Konfigurieren von Nginx Erstens müssen wir das Modul stub_status in der nginx -Konfigurationsdatei aktivieren, um die Statusinformationen von Nginx zu erhalten. Fügen Sie das folgende Snippet in Ihre Nginx -Konfigurationsdatei hinzu (normalerweise in /etc/nginx/nginx.conf oder deren inklusive Datei): location/nginx_status {stub_status

    So beginnen Sie mit der Überwachung von Oracle So beginnen Sie mit der Überwachung von Oracle Apr 12, 2025 am 06:00 AM

    Die Schritte zum Starten eines Oracle -Listeners sind wie folgt: Überprüfen

    So richten Sie im Debian -System einen Recyclingbehälter ein So richten Sie im Debian -System einen Recyclingbehälter ein Apr 12, 2025 pm 10:51 PM

    In diesem Artikel werden zwei Methoden zur Konfiguration eines Recycling -Bin in einem Debian -System eingeführt: eine grafische Schnittstelle und eine Befehlszeile. Methode 1: Verwenden Sie die grafische Schnittstelle Nautilus, um den Dateimanager zu öffnen: Suchen und starten Sie den Nautilus -Dateimanager (normalerweise als "Datei") im Menü Desktop oder Anwendungen. Suchen Sie den Recycle Bin: Suchen Sie nach dem Ordner recycelner Behälter in der linken Navigationsleiste. Wenn es nicht gefunden wird, klicken Sie auf "Andere Speicherort" oder "Computer", um sie zu suchen. Konfigurieren Sie Recycle Bin-Eigenschaften: Klicken Sie mit der rechten Maustaste auf "Recycle Bin" und wählen Sie "Eigenschaften". Im Eigenschaftenfenster können Sie die folgenden Einstellungen einstellen: Maximale Größe: Begrenzen Sie den im Recycle -Behälter verfügbaren Speicherplatz. Aufbewahrungszeit: Legen Sie die Erhaltung fest, bevor die Datei automatisch im Recyclingbehälter gelöscht wird

    See all articles