Error adding SFTP Share

Hi everyone, I’m new to the world of Rockstor, I’m still studying and experimenting with it, the goal would be to connect it to a Veeam B&R infrastructure, such as Backup Repository in Direct attached storage mode. After selecting the Linux machine it asks me for credentials and here comes the first problem: it wants an SSH connection. However, trying to get around the problem using SFTP, on Rockstore I came across this second problem:

Traceback (most recent call last):
File “/opt/rockstor/src/rockstor/rest_framework_custom/generic_view.py”, line 41, in _handle_exception
yield
File “/opt/rockstor/src/rockstor/storageadmin/views/sftp.py”, line 82, in post
rsync_for_sftp(chroot_loc)
File “/opt/rockstor/src/rockstor/system/ssh.py”, line 303, in rsync_for_sftp
copy(l, “{}{}”.format(chroot_loc, l))
File “/usr/lib64/python3.11/shutil.py”, line 431, in copy
copyfile(src, dst, follow_symlinks=follow_symlinks)
File “/usr/lib64/python3.11/shutil.py”, line 256, in copyfile
with open(src, ‘rb’) as fsrc:
^^^^^^^^^^^^^^^
FileNotFoundError: [Errno 2] No such file or directory: ‘/lib64/libz.so.1’

how to solve?
Thanks

Hi @mpidala , and welcome!

Thank you for your report; I may have an idea as to what is happening here but could you confirm the OS version you are using? Is it Leap 15.6?

The reason I’m asking is because we’re copying some libs required when creating our chroot and these may have shifted a bit in Leap 15.6. I can’t check that myself for the moment unfortunately, but if you’re game, the following should tell us what’s needed:

ldd /usr/bin/rsync
ldd /bin/bash

Hope this helps,

2 Likes

thanks for the reply Flox, I confirm that I have version 15.6. I didn’t quite understand where I should launch the commands you suggested, however the web UI shell doesn’t work for me, so I launched them directly on the Linux machine (I inserted photos of the commands launched) I tried configuring the SFTP share again, but still the same error. Maybe a reboot would be needed?

2 Likes

Thanks a lot for the prompt reply, @mpidala, that’s exactly what we needed to know. It does look like what I was thinking about, however: we need to update our list of linked libraires as these were updated.

We define these at rockstor-core/src/rockstor/system/ssh.py at 3f8d02b61f38c0a906423b6a371d17c837f52299 · rockstor/rockstor-core · GitHub

As you can see, the path to some of these has now changed, which is why it is failing currently.

The commands you ran are just listing what these two binaries require so it is normal for you to still see the issue, unfortunately. The only way to fix it is to update the list to which I linked above, I’m afraid.

I took the liberty to summarize the above in new issue report here:

3 Likes

Good, but on a practical level for us simple users, do we have to wait for an official update or do we have to manually change something?

Hi @mpidala ,

@phillxnet started working on a proper fix for this right away and they now have submitted a PR to integrate it into what I believe should be our next testing release. Please see below:

2 Likes

if you gotta have it, and can’t wait, you could update the file with the static library files/paths with the new path for that one library that currently throws the error and restart Rockstor after the edit … the final resolution that @phillxnet works on is more dynamic in determining what the paths are, so that would land as the final fix as per the above pull request.

2 Likes

@mpidala Thanks again for all the helpful feedback here.

We now have the following testing release:

that is expected to resolve the issue created as a result of this forum thread.

Hope that helps.

2 Likes