Tips on installing XO
-
Again... seems like a rights issue. What changes did you make to the config.toml file? Also, did you see this statement in the documentation?
In this config file, you can change default ports (80 and 443) for xo-server. If you are running the server as a non-root user, you will need to set the port to 1024 or higher.
-
@Danp, I just did the following:
$ cd packages/xo-server $ mkdir -p ~/.config/xo-server $ cp sample.config.toml ~/.config/xo-server/config.toml
-
@jasonnix said in Tips on installing XO:
cat: /home/xo/.config/xo-server/config.z-auto.json: No such file or directory
It is trying to create the file, but can't due to the rights issue. You may want to start over and try installing as root to avoid these problems.
-
Hi @Danp,
I used sudo. The file is located at /root/.config/xo-server/config.z-auto.json. -
@jasonnix There are settings that need to be configured to run correctly under sudo. Did you make that?
-
@Danp, Not really. Which settings?
-
@jasonnix It is in the documentation at the very bottom.
-
Hi @Danp,
Do you mean this?
I did:# rm -rf node_modules # yarn # yarn build
Then:
# nano config.toml useSudo = true
After it:
# nano /etc/sudoers xo ALL=(root)NOPASSWD: /bin/mount, /bin/umount, /bin/findmnt
Then, I tried to install XO as a system service:
# yarn global add forever yarn global v1.22.21 [1/4] Resolving packages... [2/4] Fetching packages... [3/4] Linking dependencies... [4/4] Building fresh packages... success Installed "forever@4.0.3" with binaries: - forever Done in 6.52s. # # forever start dist/cli.mjs warn: --minUptime not set. Defaulting to: 1000ms warn: --spinSleepTime not set. Your script will exit if it does not stay up for at least 1000ms info: Forever processing file: dist/cli.mjs (node:742838) Warning: Accessing non-existent property 'padLevels' of module exports inside circular dependency (Use `node --trace-warnings ...` to show where the warning was created) (node:742838) Warning: Accessing non-existent property 'padLevels' of module exports inside circular dependency (node:742838) Warning: Accessing non-existent property 'padLevels' of module exports inside circular dependency root@XO:/usr/local/src/xen-orchestra-master/packages/xo-server# yarn global add forever yarn global v1.22.21 [1/4] Resolving packages... [2/4] Fetching packages... [3/4] Linking dependencies... [4/4] Building fresh packages... success Installed "forever@4.0.3" with binaries: - forever Done in 5.91s. # # forever-service install orchestra -r xo -s dist/cli.mjs forever-service version 0.5.11 Platform - Debian GNU/Linux 12 (bookworm) Could not provision service Service is already present
Finally:
# /sbin/service orchestra status β orchestra.service - LSB: forever-service startup script for orchestra Loaded: loaded (/etc/init.d/orchestra; generated) Active: active (exited) since Mon 2024-03-11 05:42:09 EDT; 6min ago Docs: man:systemd-sysv-generator(8) Process: 743635 ExecStart=/etc/init.d/orchestra start (code=exited, status=0/SUCCESS) CPU: 19ms Mar 11 05:42:05 XO systemd[1]: Starting orchestra.service - LSB: forever-service startup script for orchestra... Mar 11 05:42:07 XO orchestra[743635]: Starting orchestra Mar 11 05:42:09 XO systemd[1]: Started orchestra.service - LSB: forever-service startup script for orchestra.
-
Hello,
Any idea to solve this? I have to manually start XO with theforever start dist/cli.mjs
command and when I reboot the server, the service doesn't start automatically! -
@jasonnix said in Tips on installing XO:
Hello,
Any idea to solve this? I have to manually start XO with theforever start dist/cli.mjs
command and when I reboot the server, the service doesn't start automatically!Did you enable that service to start at boot with systemctl enable orchestra.service?
This will make the Xen Orchestra service start automatically on each and every boot.
-
Hi @john-c,
I did:# systemctl enable orchestra.service orchestra.service is not a native service, redirecting to systemd-sysv-install. Executing: /lib/systemd/systemd-sysv-install enable orchestra
Then I rebooted the system and checked the service:
# systemctl status orchestra.service β orchestra.service - LSB: forever-service startup script for orchestra Loaded: loaded (/etc/init.d/orchestra; generated) Active: active (exited) since Wed 2024-03-27 08:10:55 EDT; 1min 11s ago Docs: man:systemd-sysv-generator(8) Process: 514 ExecStart=/etc/init.d/orchestra start (code=exited, status=0/SUCCESS) CPU: 30ms Mar 27 08:10:49 XO systemd[1]: Starting orchestra.service - LSB: forever-service startup script for orchestra... Mar 27 08:10:53 XO orchestra[514]: Starting orchestra Mar 27 08:10:55 XO systemd[1]: Started orchestra.service - LSB: forever-service startup script for orchestra.
XO is not running:
# ss -tupln Netid State Recv-Q Send-Q Local Address:Port Peer Address:Port Process udp UNCONN 0 0 0.0.0.0:111 0.0.0.0:* users:(("rpcbind",pid=468,fd=5),("systemd",pid=1,fd=37)) udp UNCONN 0 0 [::]:111 [::]:* users:(("rpcbind",pid=468,fd=7),("systemd",pid=1,fd=39)) tcp LISTEN 0 511 127.0.0.1:6379 0.0.0.0:* users:(("redis-server",pid=515,fd=6)) tcp LISTEN 0 4096 0.0.0.0:111 0.0.0.0:* users:(("rpcbind",pid=468,fd=4),("systemd",pid=1,fd=36)) tcp LISTEN 0 511 [::1]:6379 [::]:* users:(("redis-server",pid=515,fd=7)) tcp LISTEN 0 4096 [::]:111 [::]:* users:(("rpcbind",pid=468,fd=6),("systemd",pid=1,fd=38))
Can't login to XO:
This site canβt be reached
-
@jasonnix I think it's time you try and use an installation script. You're clearly having issues that are specific to you.
I'd just give up on this "I don't trust scripts" thing you have if you can't figure this process out, which is really straight-forwards.
-
You may want to try removing the service and then installing it again.
-
Hi @Danp,
How? -
@jasonnix Documentation for
forever
can be found at https://github.com/zapty/forever-service -
@Danp, according to the XO documentation I ran the following command:
$ sudo forever-service install orchestra -r "Current_UserName" -s dist/cli.mjs
Is this wrong?
-
@jasonnix AFAIK it is correct. I've never personally used
forever
, so my advice is only based on what you've posted to this thread.This part looked suspicious, so that is why I recommended removal / recreation --
# forever start dist/cli.mjs warn: --minUptime not set. Defaulting to: 1000ms warn: --spinSleepTime not set. Your script will exit if it does not stay up for at least 1000ms info: Forever processing file: dist/cli.mjs (node:742838) Warning: Accessing non-existent property 'padLevels' of module exports inside circular dependency (Use `node --trace-warnings ...` to show where the warning was created) (node:742838) Warning: Accessing non-existent property 'padLevels' of module exports inside circular dependency (node:742838) Warning: Accessing non-existent property 'padLevels' of module exports inside circular dependency
-
Hi @Danp,
I did:# sudo forever-service delete orchestra forever-service version 0.5.11 Platform - Debian GNU/Linux 12 (bookworm) Service orchestra deleted successfully
What is the next step? Should I run
$ sudo forever-service install orchestra -r "Current_UserName" -s dist/cli.mjs
command again? -
These are the steps shown in the documentation --
yarn global add forever yarn global add forever-service # Be sure to edit the path below to where your install is located! cd /home/username/xen-orchestra/packages/xo-server/ # Change the username below to the user owning XO forever-service install orchestra -r username -s dist/cli.mjs
I don't see where you previously ran the line to install
forever-service
. Is that no longer needed?To answer your question, Yes, you would rerun that command after switching to the correct directory as shown above.
-
Hi @Danp,
I did the following commands:# yarn global add forever yarn global v1.22.21 [1/4] Resolving packages... [2/4] Fetching packages... [3/4] Linking dependencies... [4/4] Building fresh packages... success Installed "forever@4.0.3" with binaries: - forever Done in 5.19s. # # yarn global add forever-service yarn global v1.22.21 [1/4] Resolving packages... [2/4] Fetching packages... [3/4] Linking dependencies... [4/4] Building fresh packages... success Installed "forever-service@0.5.11" with binaries: - forever-service - get-forever-config Done in 4.48s. # # forever-service install orchestra -r xo -s dist/cli.mjs forever-service version 0.5.11 Platform - Debian GNU/Linux 12 (bookworm) orchestra provisioned successfully Commands to interact with service orchestra Start - "sudo service orchestra start" Stop - "sudo service orchestra stop" Status - "sudo service orchestra status" Restart - "sudo service orchestra restart" # # sudo service orchestra start # # sudo service orchestra status β orchestra.service - LSB: forever-service startup script for orchestra Loaded: loaded (/etc/init.d/orchestra; generated) Active: active (exited) since Thu 2024-03-28 08:38:18 EDT; 22s ago Docs: man:systemd-sysv-generator(8) Process: 199365 ExecStart=/etc/init.d/orchestra start (code=exited, status=0/SUCCESS) CPU: 19ms Mar 28 08:38:16 XO systemd[1]: Starting orchestra.service - LSB: forever-service startup script for orchestra... Mar 28 08:38:17 XO orchestra[199365]: Starting orchestra Mar 28 08:38:18 XO systemd[1]: Started orchestra.service - LSB: forever-service startup script for orchestra. # # systemctl enable orchestra.service orchestra.service is not a native service, redirecting to systemd-sysv-install. Executing: /lib/systemd/systemd-sysv-install enable orchestra
Then I rebooted the system, but XO is not running:
# ss -tupln Netid State Recv-Q Send-Q Local Address:Port Peer Address:Port Process udp UNCONN 0 0 0.0.0.0:111 0.0.0.0:* users:(("rpcbind",pid=472,fd=5),("systemd",pid=1,fd=37)) udp UNCONN 0 0 [::]:111 [::]:* users:(("rpcbind",pid=472,fd=7),("systemd",pid=1,fd=39)) tcp LISTEN 0 4096 0.0.0.0:111 0.0.0.0:* users:(("rpcbind",pid=472,fd=4),("systemd",pid=1,fd=36)) tcp LISTEN 0 511 127.0.0.1:6379 0.0.0.0:* users:(("redis-server",pid=517,fd=6)) tcp LISTEN 0 511 [::1]:6379 [::]:* users:(("redis-server",pid=517,fd=7)) tcp LISTEN 0 4096 [::]:111 [::]:* users:(("rpcbind",pid=472,fd=6),("systemd",pid=1,fd=38))
The log shows me the following error:
2024-03-28T12:45:02.002Z xo:main WARN Access denied. 2024-03-28T12:45:02.003Z xo:main WARN Ports < 1024 are often reserved to privileges users. β EACCES: permission denied, open '/home/xo/.config/xo-server/config.z-auto.json' Error: EACCES: permission denied, open '/home/xo/.config/xo-server/config.z-auto.json' {"level":"error","message":"Forever detected script exited with code: 1"} {"level":"error","message":"Script restart attempt #28"}
What should I do if I want to completely remove XO and use the script xenorchestra_installer?