This rsync lacks old-style --compress due to its external zlib. Try -zz.

jyclaudel

Cadet
Joined
Nov 25, 2021
Messages
7
Hi all,

Version: TrueNAS-12.0-U6.1
CPU: Intel(R) Xeon(R) E-2224 CPU @ 3.40GHz
Memory: 15.9GiB with ZFS Cache: 9.9 GiB
Total Disks : 4 (data) RAIDZ1, Model WDC, type HDD
2 (caches), Model:256G TOSHIBA, type SSD
Ethernet: Media Subtype: 1000baseT with no vlan

I got a rsync problem since I upgraded my FreeNAS-11.3-U5 to TrueNAS-12.0-U6.1.

I use software for backup named Backup Assist and the saves used rsync for backup data.
Since I upgrade to TrueNAS 12, the rsync transfer don't want to works and the error appear:

Code:
rsync: This rsync lacks old-style --compress due to its external zlib.  Try -zz.
rsync error: syntax or usage error (code 1) at main.c(1592) [server=3.1.3]
rsync: connection unexpectedly closed (0 bytes received so far) [sender]
rsync error: error in rsync protocol data stream (code 12) at io.c(601) [sender=3.0.7]


This is the command used by Backup Assist for the backup on my pool:
Code:
C:\ProgramData\BackupAssist v11\temp\Rsync\rsync.exe
-a
-z
--no-owner
--no-group
-H
--chmod=u+w,a+rX
--out-format="%o:%l:%b:%f:%i"
-ii
--modify-window=2
--filter=". /cygdrive/C/Users/Administrateur.WIN-VE07FNB77GJ/AppData/Local/Temp/47/l4xzutrb.ujf"
--8-bit-output
--progress
--rsh="'/cygdrive/C/ProgramData/BackupAssist v11/temp/Rsync/ssh.exe'
-o PasswordAuthentication=no
-o KbdInteractiveAuthentication=no
-o StrictHostKeyChecking=yes
-o UserKnownHostsFile='\"/cygdrive/C/ProgramData/BackupAssist v11/.ssh/known_hosts\"'
-i '/cygdrive/C/ProgramData/BackupAssist v11/.ssh/ba_id'
-o ServerAliveInterval=60
-p 22" "/cygdrive/C/Users/Administrateur.WIN-VE07FNB77GJ/AppData/Local/Temp/47/0igjctsi.om1/" "rovatti_sav@backup.antsys.fr:~/save_quotidienne"


and after that, the error appears.

This is not possible to change the command launched by Backup Assist, so I can't change the -a compression by -zz or simply remove the -a.

Code:
root@FREENAS01:~# rsync --version
rsync  version 3.1.3  protocol version 31
Copyright (C) 1996-2018 by Andrew Tridgell, Wayne Davison, and others.
Web site: http://rsync.samba.org/
Capabilities:
    64-bit files, 64-bit inums, 64-bit timestamps, 64-bit long ints,
    socketpairs, hardlinks, symlinks, IPv6, batchfiles, inplace,
    append, ACLs, xattrs, iconv, symtimes, no prealloc

rsync comes with ABSOLUTELY NO WARRANTY.  This is free software, and you
are welcome to redistribute it under certain conditions.  See the GNU
General Public Licence for details.

There is a possibility to solve this rsync problem?
There is a possibility to downgrade the rsync version without breaking the TrueNAS?

If I forgot some information, I apologize in advance.

Regards,
Jean-Yves.
 

sretalla

Powered by Neutrality
Moderator
Joined
Jan 1, 2016
Messages
9,703
There is a possibility to downgrade the rsync version without breaking the TrueNAS?
You can install whatever version you want in a jail without harming the host... then either link that version or just specify the path to it for your needed software.
 

ChrisRJ

Wizard
Joined
Oct 23, 2020
Messages
1,919
What about a wrapper script? As long as it is placed in the path before the binary ...
 

jyclaudel

Cadet
Joined
Nov 25, 2021
Messages
7
Hello guys,

First, thanks for your help and sorry for being late.

You can install whatever version you want in a jail without harming the host... then either link that version or just specify the path to it for your needed software.
I don't think it's possible to specify to my external software Backup Assist to use a specific rsync version in a jail.
I tell him to rsync on an IP address and he connects directly to the host.
Or maybe if it's possible, I don't know how to do it ...

What about a wrapper script? As long as it is placed in the path before the binary ...
What do you mean by wrapper script ?

Regards,
Jean-Yves.
 

ChrisRJ

Wizard
Joined
Oct 23, 2020
Messages
1,919
What do you mean by wrapper script ?
A script with the name rsync that by its position in the PATH gets executed instead of the actual command. In this script you could "translate" the options so that they are compatible with your rsync version.
 

jyclaudel

Cadet
Joined
Nov 25, 2021
Messages
7
I wanted to create a jail in the old release "11.3-RELEASE" for the project to put the args: "--rsync-path" on the rsync command for linking to the rsync version of this jail, but it gave me an error when I want to create the jail :

Code:
[EFAULT] ('Connection broken: OSError("(54, \'ECONNRESET\')")', OSError("(54, 'ECONNRESET')"))

Code:
Error: Traceback (most recent call last):
  File "/usr/local/lib/python3.9/site-packages/middlewared/job.py", line 367, in run
    await self.future
  File "/usr/local/lib/python3.9/site-packages/middlewared/job.py", line 405, in __run_body
    rv = await self.middleware.run_in_thread(self.method, *([self] + args))
  File "/usr/local/lib/python3.9/site-packages/middlewared/utils/run_in_thread.py", line 10, in run_in_thread
    return await self.loop.run_in_executor(self.run_in_thread_executor, functools.partial(method, *args, **kwargs))
  File "/usr/local/lib/python3.9/concurrent/futures/thread.py", line 52, in run
    result = self.fn(*self.args, **self.kwargs)
  File "/usr/local/lib/python3.9/site-packages/middlewared/schema.py", line 979, in nf
    return f(*args, **kwargs)
  File "/usr/local/lib/python3.9/site-packages/middlewared/plugins/jail_freebsd.py", line 913, in do_create
    raise CallError(fetch_job.error)
middlewared.service_exception.CallError: [EFAULT] ('Connection broken: OSError("(54, \'ECONNRESET\')")', OSError("(54, 'ECONNRESET')"))

Do you know guys why?
 
Top