I have multiple instances of Ghost running on a DigitalOcean Droplet. When going through the backup process, I was unable to backup the sites because they weren’t running. When I tried to start the sites, I received this error. This same error prevents start, backup, and update. I even attempted to restore the Droplet backup, but encountered the same errors.
Because I wasn’t able to complete a backup, I would rather not reinstall Ghost. But it seems that may be the only way I can restore my sites. I have older local versions, but I will lose data. I was able to successfully backup the MySQL databases.
stephen@builders:~$ cd /var/www/designadmin.com/
stephen@builders:/var/www/designadmin.com$ ghost start
Love open source? We’re hiring Node.js Engineers to work on Ghost full-time.
https://careers.ghost.org/product-engineer-node-js
+ sudo systemctl is-active ghost_designadmin-com
? Sudo Password [hidden]
✔ Checking system Node.js version - found v16.15.1
✔ Ensuring user is not logged in as ghost user
✔ Checking if logged in user is directory owner
✔ Checking current folder permissions
+ sudo systemctl is-active ghost_designadmin-com
✔ Validating config
✔ Checking folder permissions
✔ Checking file permissions
✔ Checking memory availability
✔ Checking binary dependencies
✔ Checking systemd unit file
✔ Checking systemd node version - found v16.15.1
✖ Starting Ghost: designadmin-com
A SystemError occurred.
Message: Systemd process manager has not been set up or is corrupted.
Help: Run ghost setup linux-user systemd and try again.
Debug Information:
OS: Ubuntu, v20.04.4 LTS
Node Version: v16.15.1
Ghost Version: 5.2.2
Ghost-CLI Version: 1.21.0
Environment: production
Command: 'ghost start'
Try running ghost doctor to check your system for known issues.
You can always refer to https://ghost.org/docs/ghost-cli/ for troubleshooting.
stephen@builders:~$ cd /var/www/stephenbau.com
stephen@builders:/var/www/stephenbau.com$ ghost doctor
Love open source? We’re hiring Node.js Engineers to work on Ghost full-time.
https://careers.ghost.org/product-engineer-node-js
✔ Checking system Node.js version - found v16.15.1
✔ Checking logged in user
✔ Ensuring user is not logged in as ghost user
✔ Checking if logged in user is directory owner
✔ Checking current folder permissions
✔ Checking system compatibility
✔ Checking for a MySQL installation
+ sudo systemctl is-active ghost_stephenbau-com
? Sudo Password [hidden]
✔ Validating config
✔ Checking folder permissions
✔ Checking file permissions
✔ Checking memory availability
✔ Checking binary dependencies
✔ Checking free space
✔ Checking systemd unit file
✖ Checking systemd node version - found v16.15.1
One or more errors occurred.
1) SystemError
Message: Ghost v4.19.1 is not compatible with Node v16.15.1
Help: Check the version of Node configured in /lib/systemd/system/ghost_stephenbau-com.service and update it to a compatible version
Debug Information:
OS: Ubuntu, v20.04.4 LTS
Node Version: v16.15.1
Ghost Version: 4.19.1
Ghost-CLI Version: 1.21.0
Environment: production
Command: 'ghost doctor'
Try running ghost doctor to check your system for known issues.
You can always refer to https://ghost.org/docs/ghost-cli/ for troubleshooting.
stephen@builders:/var/www/stephenbau.com$ ghost setup systemd
Love open source? We’re hiring Node.js Engineers to work on Ghost full-time.
https://careers.ghost.org/product-engineer-node-js
Systemd service has already been set up. Skipping Systemd setup
ℹ Setting up Systemd [skipped]
I have several sites running on this server. I was trying to update Ubuntu for Ghost 5.0. I gave up on reviving my old sites, because I was intending to create a new instance running Ghost 5.0. I should have created a new droplet, but my intention was to update all the sites to 5.0 and things failed horribly. However, I was able to successfully install Ghost 5.2.2 for Luna Solterra.
I waited for the servers to start, and a few minutes later, ran ghost ls again, and the same servers that I had run ghost stop after this backup were still not able to start.
If I run ghost doctor on the sites, everything returns fine. But, if I try to start the stopped sites, I get the error.
stephen@builders:/var/www/builderscollective.com$ ghost doctor
✔ Checking system Node.js version - found v14.16.1
✔ Checking logged in user
✔ Ensuring user is not logged in as ghost user
✔ Checking if logged in user is directory owner
✔ Checking current folder permissions
✔ Checking system compatibility
✔ Checking for a MySQL installation
+ sudo systemctl is-active ghost_builderscollective-com
Instance is currently running
ℹ Validating config [skipped]
✔ Checking folder permissions
✔ Checking file permissions
✔ Checking content folder ownership
✔ Checking memory availability
✔ Checking binary dependencies
✔ Checking free space
✔ Checking systemd unit file
✔ Checking systemd node version - found v14.16.1
stephen@builders:/var/www/builderscollective.com$ cd ../designadmin.com
stephen@builders:/var/www/designadmin.com$ ghost doctor
✔ Checking system Node.js version - found v14.16.1
✔ Checking logged in user
✔ Ensuring user is not logged in as ghost user
✔ Checking if logged in user is directory owner
✔ Checking current folder permissions
✔ Checking system compatibility
✔ Checking for a MySQL installation
+ sudo systemctl is-active ghost_designadmin-com
✔ Validating config
✔ Checking folder permissions
✔ Checking file permissions
✔ Checking memory availability
✔ Checking binary dependencies
✔ Checking free space
✔ Checking systemd unit file
✔ Checking systemd node version - found v14.16.1
stephen@builders:/var/www/designadmin.com$ ghost start
+ sudo systemctl is-active ghost_designadmin-com
✔ Checking system Node.js version - found v14.16.1
✔ Ensuring user is not logged in as ghost user
✔ Checking if logged in user is directory owner
✔ Checking current folder permissions
+ sudo systemctl is-active ghost_designadmin-com
✔ Validating config
✔ Checking folder permissions
✔ Checking file permissions
✔ Checking memory availability
✔ Checking binary dependencies
✔ Checking systemd unit file
✔ Checking systemd node version - found v14.16.1
✖ Starting Ghost: designadmin-com
A SystemError occurred.
Message: Systemd process manager has not been set up or is corrupted.
Help: Run ghost setup linux-user systemd and try again.
Debug Information:
OS: Ubuntu, v20.04.2 LTS
Node Version: v14.16.1
Ghost Version: 4.19.1
Ghost-CLI Version: 1.17.4
Environment: production
Command: 'ghost start'
Try running ghost doctor to check your system for known issues.
You can always refer to https://ghost.org/docs/ghost-cli/ for troubleshooting.
stephen@builders:/var/www/designadmin.com$ ghost start
+ sudo systemctl is-active ghost_designadmin-com
✔ Checking system Node.js version - found v14.16.1
✔ Ensuring user is not logged in as ghost user
✔ Checking if logged in user is directory owner
✔ Checking current folder permissions
+ sudo systemctl is-active ghost_designadmin-com
✔ Validating config
✔ Checking folder permissions
✔ Checking file permissions
✔ Checking memory availability
✔ Checking binary dependencies
✔ Checking systemd unit file
✔ Checking systemd node version - found v14.16.1
✖ Starting Ghost: designadmin-com
A SystemError occurred.
Message: Systemd process manager has not been set up or is corrupted.
Help: Run ghost setup linux-user systemd and try again.
Debug Information:
OS: Ubuntu, v20.04.2 LTS
Node Version: v14.16.1
Ghost Version: 4.19.1
Ghost-CLI Version: 1.17.4
Environment: production
Command: 'ghost start'
Try running ghost doctor to check your system for known issues.
You can always refer to https://ghost.org/docs/ghost-cli/ for troubleshooting.
stephen@builders:/var/www/designadmin.com$ ghost setup linux-user systemd
You are running an outdated version of Ghost-CLI.
It is recommended that you upgrade before continuing.
Run `npm install -g ghost-cli@latest` to upgrade.
+ sudo chown -R ghost:ghost /var/www/designadmin.com/content
? Sudo Password [hidden]
✔ Setting up "ghost" system user
Systemd service has already been set up. Skipping Systemd setup
ℹ Setting up Systemd [skipped]
stephen@builders:/var/www/designadmin.com$ cd content/
stephen@builders:/var/www/designadmin.com/content$ ll
total 32
drwxrwxr-x 8 ghost ghost 4096 Oct 19 2021 ./
drwxrwxr-x 5 stephen stephen 4096 Oct 20 2021 ../
drwxrwxr-x 2 ghost ghost 4096 Oct 19 2021 apps/
drwxrwxr-x 2 ghost ghost 4096 Oct 20 2021 data/
drwxrwxr-x 4 ghost ghost 4096 Oct 20 2021 images/
drwxrwxr-x 2 ghost ghost 4096 Oct 19 2021 logs/
drwxrwxr-x 2 ghost ghost 4096 Oct 19 2021 settings/
drwxrwxr-x 2 ghost ghost 4096 Oct 19 2021 themes/
stephen@builders:/var/www/designadmin.com/content$ cd ..
stephen@builders:/var/www/designadmin.com$ sudo chown -R stephen:stephen /var/www/designadmin.com/content
stephen@builders:/var/www/designadmin.com$ ll
total 28
drwxrwxr-x 5 stephen stephen 4096 Oct 20 2021 ./
drwxr-xr-x 14 stephen stephen 4096 Oct 23 2021 ../
-rw-rw-r-- 1 stephen stephen 112 Jun 7 18:48 .ghost-cli
-rw-rw-r-- 1 stephen stephen 547 Oct 19 2021 config.production.json
drwxrwxr-x 8 stephen stephen 4096 Oct 19 2021 content/
lrwxrwxrwx 1 stephen stephen 40 Oct 19 2021 current -> /var/www/designadmin.com/versions/4.19.1/
drwxr-xr-x 3 stephen stephen 4096 Oct 19 2021 system/
drwxrwxr-x 3 stephen stephen 4096 Oct 19 2021 versions/
You could also check the startup status with systemctl list-unit-files --type=service --state=enabled. Are all sites listed? Is vendor enabled for each? And finally, the output from ls -Flai /lib/systemd/system/ghost* will tell you which user runs each Ghost site.
The problem was finally resolved by creating a snapshot of the DigitalOcean Droplet of the backup when I had all the sites working. I used that snapshot to create a new Droplet. I waited for the DNS to resolve, then ran ghost ls and it showed that all the sites were running.
But on the frontend, I was still getting a 502 Bad Gateway error. I had thought that the DNS still hadn’t resolved, but when I was checking the IP address with ping, the DNS had definitely resolved.
I discovered that the same sites that had failed on the other Droplet were not actually running. I found that ghost stop failed for these sites.
stephen@bau:/var/www/stephenbau.com$ ghost stop
+ sudo systemctl is-active ghost_stephenbau-com
✖ Stopping Ghost: stephenbau-com
A SystemError occurred.
Message: Systemd process manager has not been set up or is corrupted.
Help: Run ghost setup linux-user systemd and try again.
Debug Information:
OS: Ubuntu, v20.04.2 LTS
Node Version: v14.16.1
Ghost Version: 4.19.1
Ghost-CLI Version: 1.17.4
Environment: production
Command: 'ghost stop'
Try running ghost doctor to check your system for known issues.
You can always refer to https://ghost.org/docs/ghost-cli/ for troubleshooting.
stephen@bau:/var/www/stephenbau.com$ ghost setup linux-user systemd
You are running an outdated version of Ghost-CLI.
It is recommended that you upgrade before continuing.
Run `npm install -g ghost-cli@latest` to upgrade.
+ sudo chown -R ghost:ghost /var/www/stephenbau.com/content
✔ Setting up "ghost" system user
Systemd service has already been set up. Skipping Systemd setup
ℹ Setting up Systemd [skipped]
stephen@bau:/var/www/stephenbau.com$ ghost start
+ sudo systemctl is-active ghost_stephenbau-com
Ghost is already running! For more information, run:
ghost ls
stephen@bau:/var/www/stephenbau.com$ ghost stop
+ sudo systemctl is-active ghost_stephenbau-com
+ sudo systemctl stop ghost_stephenbau-com
✔ Stopping Ghost: stephenbau-com
stephen@bau:/var/www/stephenbau.com$ ghost ls
+ sudo systemctl is-active ghost_builderscollective-com
+ sudo systemctl is-active ghost_designadmin-com
+ sudo systemctl is-active ghost_faithhopelove-ca
+ sudo systemctl is-active ghost_imaginaxiom-com
+ sudo systemctl is-active ghost_socialarc-com
+ sudo systemctl is-active ghost_designinfluences-com
+ sudo systemctl is-active ghost_stephenbau-com
+ sudo systemctl is-active ghost_therecipebox-club
+ sudo systemctl is-active ghost_stopresetgo-builderscollective-org
+ sudo systemctl is-active ghost_world-builderscollective-org
┌────────────────────────────────────┬─────────────────────────────────────────────┬─────────┬──────────────────────┬────────────────────────────────────────────┬──────┬─────────────────┐
│ Name │ Location │ Version │ Status │ URL │ Port │ Process Manager │
├────────────────────────────────────┼─────────────────────────────────────────────┼─────────┼──────────────────────┼────────────────────────────────────────────┼──────┼─────────────────┤
│ builderscollective-com │ /var/www/builderscollective.com │ 4.19.1 │ running (production) │ https://builderscollective.com │ 2369 │ systemd │
├────────────────────────────────────┼─────────────────────────────────────────────┼─────────┼──────────────────────┼────────────────────────────────────────────┼──────┼─────────────────┤
│ designadmin-com │ /var/www/designadmin.com │ 4.19.1 │ running (production) │ https://designadmin.com │ 2370 │ systemd │
├────────────────────────────────────┼─────────────────────────────────────────────┼─────────┼──────────────────────┼────────────────────────────────────────────┼──────┼─────────────────┤
│ faithhopelove-ca │ /var/www/faithhopelove.ca │ 4.19.1 │ running (production) │ https://faithhopelove.ca │ 2371 │ systemd │
├────────────────────────────────────┼─────────────────────────────────────────────┼─────────┼──────────────────────┼────────────────────────────────────────────┼──────┼─────────────────┤
│ imaginaxiom-com │ /var/www/imaginaxiom.com │ 4.19.1 │ running (production) │ https://imaginaxiom.com │ 2372 │ systemd │
├────────────────────────────────────┼─────────────────────────────────────────────┼─────────┼──────────────────────┼────────────────────────────────────────────┼──────┼─────────────────┤
│ socialarc-com │ /var/www/socialarc.com │ 4.19.1 │ running (production) │ https://socialarc.com │ 2373 │ systemd │
├────────────────────────────────────┼─────────────────────────────────────────────┼─────────┼──────────────────────┼────────────────────────────────────────────┼──────┼─────────────────┤
│ designinfluences-com │ /var/www/designinfluences.com │ 4.19.1 │ running (production) │ https://designinfluences.com │ 2374 │ systemd │
├────────────────────────────────────┼─────────────────────────────────────────────┼─────────┼──────────────────────┼────────────────────────────────────────────┼──────┼─────────────────┤
│ stephenbau-com │ /var/www/stephenbau.com │ 4.19.1 │ stopped │ n/a │ n/a │ n/a │
├────────────────────────────────────┼─────────────────────────────────────────────┼─────────┼──────────────────────┼────────────────────────────────────────────┼──────┼─────────────────┤
│ therecipebox-club │ /var/www/therecipebox.club │ 4.19.1 │ running (production) │ https://therecipebox.club │ 2376 │ systemd │
├────────────────────────────────────┼─────────────────────────────────────────────┼─────────┼──────────────────────┼────────────────────────────────────────────┼──────┼─────────────────┤
│ stopresetgo-builderscollective-org │ /var/www/stopresetgo.builderscollective.org │ 4.19.1 │ running (production) │ https://stopresetgo.builderscollective.org │ 2377 │ systemd │
├────────────────────────────────────┼─────────────────────────────────────────────┼─────────┼──────────────────────┼────────────────────────────────────────────┼──────┼─────────────────┤
│ world-builderscollective-org │ /var/www/world.builderscollective.org │ 4.20.1 │ running (production) │ https://world.builderscollective.org │ 2378 │ systemd │
└────────────────────────────────────┴─────────────────────────────────────────────┴─────────┴──────────────────────┴────────────────────────────────────────────┴──────┴─────────────────┘
stephen@bau:/var/www/stephenbau.com$ ghost start
+ sudo systemctl is-active ghost_stephenbau-com
✔ Checking system Node.js version - found v14.16.1
✔ Ensuring user is not logged in as ghost user
✔ Checking if logged in user is directory owner
✔ Checking current folder permissions
+ sudo systemctl is-active ghost_stephenbau-com
✔ Validating config
✔ Checking folder permissions
✔ Checking file permissions
✔ Checking content folder ownership
✔ Checking memory availability
✔ Checking binary dependencies
✔ Checking systemd unit file
✔ Checking systemd node version - found v14.16.1
+ sudo systemctl start ghost_stephenbau-com
+ sudo systemctl is-enabled ghost_stephenbau-com
✔ Starting Ghost: stephenbau-com
------------------------------------------------------------------------------
Your admin interface is located at:
https://stephenbau.com/ghost/
I had to go through this process for each of the failed sites.
ghost setup linux-user systemd
ghost stop
ghost start
I still have no idea what happened, or how the systemd files became corrupted, or why they were not able to be fixed on the original server, but I am glad this has finally been resolved.