Saya menggunakan CentOS 7. Bagaimana cara mengetahui mengapa layanan gagal untuk memulai? Saya telah membuat layanan ini
[rails@server ~]$ sudo cat /usr/lib/systemd/system/nodejs.service
[Unit]
Description=nodejs server
[Service]
User=rails
Group=rails
ExecStart=/home/rails/NodeJSserver/start.sh
ExecStop=/home/rails/NodeJSserver/stop.sh
[Install]
WantedBy=multi-user.target
File menunjuk ke ini
[rails@server ~]$ cat /home/rails/NodeJSserver/start.sh
#!/bin/bash
forever start /home/rails/NodeJSserver/server.js
Saya dapat menjalankan file ini dengan baik dengan sendirinya. Tetapi ketika saya mencoba dan menjalankannya sebagai bagian dari layanan, saya perhatikan bahwa server nodeJS saya belum dimulai. Bahkan ketika saya memeriksa "sudo systemctl --state = gagal," Saya tidak melihat kesalahan apa pun ...
[rails@server ~]$ sudo systemctl enable NodeJSserver
[rails@server ~]$ sudo systemctl start NodeJSserver
[rails@server ~]$
[rails@server ~]$
[rails@server ~]$ forever list
info: No forever processes running
[rails@server ~]$
[rails@server ~]$
[rails@server ~]$ sudo systemctl --state=failed
UNIT LOAD ACTIVE SUB DESCRIPTION
● nginx.service loaded failed failed The nginx HTTP and reverse proxy server
● systemd-sysctl.service loaded failed failed Apply Kernel Variables
● systemd-vconsole-setup.service loaded failed failed Setup Virtual Console
LOAD = Reflects whether the unit definition was properly loaded.
ACTIVE = The high-level unit activation state, i.e. generalization of SUB.
SUB = The low-level unit activation state, values depend on unit type.
3 loaded units listed. Pass --all to see loaded but inactive units, too.
To show all installed unit files use 'systemctl list-unit-files'.
Bagaimana saya mencari tahu mengapa layanan saya gagal untuk memulai?
journalctl -u nodejs
seharusnya memberi Anda pesan kesalahan yang lebih bermakna.