Skip to content

NodeBB - Automatisch starten

NodeBB
  • Im Beitrag https://frank-mankel.org/topic/3/node-js-auf-dem-raspberry3-b-installieren habe ich berichtet, wie man node.js installiert. Darin liegt die ausführbare Datei node in /opt/node/bin. Das behalten wir jetzt erst mal so im Hinterkopf.

    Unter Debian arbeitet man mit systemd, ein System und Service Manager. Dieser Dienst sorgt dafür, das Dienste automatisch, z.B. beim Neustart des Servers gestartet werden. Dazu findet man im Ordner /etc/systemd/system eine ganze Reihe von Diensten. z.B.: sshd.service

    Gut, hier geht es aber um NodeBB. Von NodeBB gibt es eine Anleitung zum Thema, die findet man hier. Aber, wir verfeinern das Ganze hier noch ein wenig 😉

    nodebb.service

    [Unit]
    Description=NodeBB
    Documentation=https://docs.nodebb.org
    After=system.slice multi-user.target mongod.service
    
    [Service]
    Type=forking
    User=user
    
    StandardOutput=syslog
    StandardError=syslog
    SyslogIdentifier=nodebb
    
    WorkingDirectory=/home/user/nodebb
    PIDFile=/home/user/nodebb/pidfile
    ExecStart=/usr/bin/env node loader.js
    Restart=always
    
    [Install]
    WantedBy=multi-user.target
    

    Den User ersetzt ihr mit dem Namen Euren User's der NodeBB startet. Die NodeBB Installation liegt unter folgendem Pfad

    /home/user/nodebb/
    

    Den Dienst aktivieren

    sudo systemctl enable nodebb.service
    

    und starten

    sudo systemctl start nodebb.service
    

    Nun sollte der Dienst normalerweise beim Booten NodeBB starten, macht er aber bei mir um's verrecken nicht. Also Logfiles durchsuchen.

    Das sieht dort so aus

    May  3 21:15:07 one systemd[1]: Starting NodeBB...
    May  3 21:15:07 one nodebb[1366]: /usr/bin/env: ‘node’: No such file or directory
    May  3 21:15:07 one systemd[1]: nodebb.service: Control process exited, code=exited status=127
    May  3 21:15:07 one systemd[1]: Failed to start NodeBB.
    May  3 21:15:07 one systemd[1]: nodebb.service: Unit entered failed state.
    May  3 21:15:07 one systemd[1]: nodebb.service: Failed with result 'exit-code'.
    May  3 21:15:07 one systemd[1]: nodebb.service: Service hold-off time over, scheduling restart.
    May  3 21:15:07 one systemd[1]: Stopped NodeBB.
    

    Und nun kommen wir wieder auf den Anfang des Beitrages zu sprechen. Node ist die Anwendung node.js, die die Applikation NodeBB startet.

    Aus nodebb.service

    /usr/bin/env node loader.js
    

    node.js lädt die Datei loader.js, die im NodeBB Ordner liegt. So weit alles gut, aber bei unserer Installation, siehe den verlinkten Beitrag am Anfang, liegt die ausführbare Datei node in /opt/node/bin

    Ok, nun kann ich mir das Problem erklären, der User Root hat keinen Zugriff auf die Datei node. Und jetzt das Rätsel für mich, mein User für NodeBB hat Zugriff, mein User Root nicht. Stundenlang alles probiert. .profile editiert usw. Nichts brachte Erfolg. Ok, dann halt dirty 😞

    Ich habe dann die Datei nach /bin kopiert.

    cp /opt/node/bin/node /bin
    

    Danach hatte der User Root Zugriff auf die Datei und der nodebb.service funktioniert einwandfrei.

    Wer den Fehler kennt und eine Lösung für mich hat, immer her damit.

  • Rest-Server v0.13.0 released

    Restic
    2
    0 Stimmen
    2 Beiträge
    311 Aufrufe
    FrankMF
    Download Rest-Server und installieren Im Github Repository den aktuellen Release suchen. Hier am Beispiel der aktuellen Version 0.13.0 (27.07.2024) Datei herunterladen wget https://github.com/restic/rest-server/releases/download/v0.13.0/rest-server_0.13.0_linux_amd64.tar.gz Die Datei entpacken tar -xf rest-server_0.13.0_linux_amd64.tar.gz Ins Verzeichnis wechseln cd rest-server_0.13.0_linux_amd64 Wenn der Rest-Server läuft, dann muss man diesen erst mal stoppen. systemctl stop rest-server Danach kopiert man das File nach bin. Wer mag sichert vorher das alte File. cp rest-server /usr/local/bin Danach kann man den Rest-Server wieder starten. systemctl start rest-server Versionskontrolle root@rest-server:~# rest-server -v rest-server version rest-server 0.13.0 compiled with go1.22.5 on linux/amd64 Die Hilfe vom Rest-Server root@rest-server:~# rest-server -h Run a REST server for use with restic Usage: rest-server [flags] Flags: --append-only enable append only mode --cpu-profile string write CPU profile to file --debug output debug messages -h, --help help for rest-server --htpasswd-file string location of .htpasswd file (default: "<data directory>/.htpasswd)" --listen string listen address (default ":8000") --log filename write HTTP requests in the combined log format to the specified filename (use "-" for logging to stdout) --max-size int the maximum size of the repository in bytes --no-auth disable .htpasswd authentication --no-verify-upload do not verify the integrity of uploaded data. DO NOT enable unless the rest-server runs on a very low-power device --path string data directory (default "/tmp/restic") --private-repos users can only access their private repo --prometheus enable Prometheus metrics --prometheus-no-auth disable auth for Prometheus /metrics endpoint --tls turn on TLS support --tls-cert string TLS certificate path --tls-key string TLS key path -v, --version version for rest-server Systemd Wer noch ein passendes systemd File benötigt. [Unit] Description=Rest Server After=syslog.target After=network.target [Service] Type=simple User=rest-server Group=rest-server ExecStart=/usr/local/bin/rest-server --private-repos --tls --tls-cert /mnt/rest-server/<DOMAIN>/fullchain.pem --tls-key /mnt/rest-server/<DOMAIN>/key.pem --path /mnt/rest-server Restart=always RestartSec=5 # Optional security enhancements NoNewPrivileges=yes PrivateTmp=yes ProtectSystem=strict ProtectHome=yes ReadWritePaths=/mnt/rest-server [Install] WantedBy=multi-user.target
  • Restic v0.16.5 released

    Restic
    1
    0 Stimmen
    1 Beiträge
    127 Aufrufe
    Niemand hat geantwortet
  • Debian 12 - Bluetooth Ausfall nach Stromausfall

    Linux
    1
    0 Stimmen
    1 Beiträge
    136 Aufrufe
    Niemand hat geantwortet
  • NodeBB - 2.8.13 & 3.1.3 Security Release

    NodeBB
    1
    0 Stimmen
    1 Beiträge
    72 Aufrufe
    Niemand hat geantwortet
  • Ubuntu 21.04 (Hirsute Hippo) Beta

    Linux
    6
    +1
    0 Stimmen
    6 Beiträge
    494 Aufrufe
    FrankMF
    Seit heute ist Ubuntu mal wieder Geschichte. Bin wieder zurück auf Linux Mint Cinnamon. Die zwei wichtigsten Gründen Wenn ich unter Ubuntu (Wayland) VLC zum TV schauen an geschmissen habe, war in unregelmäßigen Abständen das UI in mehreren Fenster aufgegangen. Blöd nur, das man das TV Bild nicht zoomen konnte. Das Hauptproblem! Ab und zu passierte es, wenn ich auf das Firefox Icon geklickt habe, das der ganze Desktop einen Freeze hatte. Incl. unbenutzbarer Tastatur und Maus. Blieb dann leider nur der Reset. Blöd nur, das das immer dann passierte, wenn man es gerade gar nicht gebrauchen konnte. Bin dann wieder auf eine hoffentlich stabilere Distribution zurück gegangen. Nun wieder als X-Desktop. Wayland ist die Zukunft, da dort die Latenzen um Längen besser sind, als unter X. Aber, es bedarf da noch einer gewissen Entwicklungszeit. Wollen wir hoffen, das mit dem nächsten Ubuntu Release die Kinderkrankheiten ausgemerzt sind. [image: 1625860783134-d74e1c43-2a70-4ef0-ace5-7d8ac2c3e99a-grafik.png]
  • Restic v0.12.0 released

    Restic
    1
    0 Stimmen
    1 Beiträge
    230 Aufrufe
    Niemand hat geantwortet
  • Redis installieren

    Angeheftet Verschoben Redis
    1
    0 Stimmen
    1 Beiträge
    391 Aufrufe
    Niemand hat geantwortet
  • Let's Encrypt installieren

    Verschoben Let's Encrypt
    3
    0 Stimmen
    3 Beiträge
    1k Aufrufe
    FrankMF
    Wenn ihr alles richtig gemacht habt, dann könnt ihr Euer Zertifikat überprüfen lassen. Sollte dann so aussehen. [image: 1538314121022-index-resized.jpeg]