EssentialsX

EssentialsX

2M Downloads

Cannot run program "rdiff-backup world backups/world": error=2, No such file or directory

piojanu opened this issue ยท 0 comments

commented

Information

Full output of /ess version:

> [01:47:25] [Server thread/INFO]: CONSOLE issued server command: /ess version
> [01:47:25] [Server thread/INFO]: Server version: 1.16.3-R0.1-SNAPSHOT git-Spigot-2740d5a-890130b (MC: 1.16.3)
> [01:47:25] [Server thread/INFO]: EssentialsX version: 2.18.1.0
> [01:47:25] [Server thread/INFO]: EssentialsXSpawn version: 2.18.1.0
> [01:47:25] [Server thread/INFO]: EssentialsXProtect version: 2.18.1.0
> [01:47:25] [Server thread/INFO]: Vault is not installed. Chat and permissions may not work.
> [01:47:25] [Server thread/INFO]: You are running an unsupported server version!

Server startup log:

https://gist.github.com/piojanu/1bd869340d180975dd36d2c24c3285de

EssentialsX config:

https://gist.github.com/piojanu/c8cfe0686a2e7a2e5ee5382b055dfd3a

Details

Description:

After configuring Essentials Backup as in the example in the config it doesn't work.

Config:

backup:
  # Interval in minutes.
  interval: 30
  # If true, the backup task will run even if there are no players online.
  always-run: false
  # Unless you add a valid backup command or script here, this feature will be useless.
  # Use 'save-all' to simply force regular world saving without backup.
  # The example command below utilizes rdiff-backup: https://rdiff-backup.net/
  command: 'rdiff-backup world backups/world'

Error:

java.io.IOException: Cannot run program "rdiff-backup world backups/world": error=2, No such file or directory
at java.lang.ProcessBuilder.start(ProcessBuilder.java:1048) ~[?:1.8.0_262]
at com.earth2me.essentials.Backup.lambda$run$1(Backup.java:95) ~[?:?]
at org.bukkit.craftbukkit.v1_16_R2.scheduler.CraftTask.run(CraftTask.java:81) [server.jar:git-Spigot-2740d5a-890130b]
at org.bukkit.craftbukkit.v1_16_R2.scheduler.CraftAsyncTask.run(CraftAsyncTask.java:54) [server.jar:git-Spigot-2740d5a-890130b]
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) [?:1.8.0_262]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) [?:1.8.0_262]
at java.lang.Thread.run(Thread.java:748) [?:1.8.0_262]
Caused by: java.io.IOException: error=2, No such file or directory
at java.lang.UNIXProcess.forkAndExec(Native Method) ~[?:1.8.0_262]
at java.lang.UNIXProcess.<init>(UNIXProcess.java:247) ~[?:1.8.0_262]
at java.lang.ProcessImpl.start(ProcessImpl.java:134) ~[?:1.8.0_262]
at java.lang.ProcessBuilder.start(ProcessBuilder.java:1029) ~[?:1.8.0_262]

Steps to reproduce:

Pretty much any command with multiple arguments won't work. Try command: 'ls' and it will work. Try command: 'ls -a' and it won't work. This might be related to this issue I believe: https://stackoverflow.com/a/36917262/7983111.

Expected behavior:

Essentials Backup works.

Note that I can't simply put the script in the .sh file and run it. I can't add execution permissions to that file (no ssh cmd).