Hi, there
I have a ubuntu VM in PVE (pve1) that serves as a samba server. Let's call it fs (file server). In PVE/storage, I created a SMB/CIFS repository called fsRepo that uses the samba share. FsRepo stores backup, ISO and templates. Backup/restore all work well.
However, I noticed that if I use PVE GUI to download ISO or container templates into the SMB/CIFS share, the images are frequently corrupted (about 90% of the time). checksums would not match though the file size matches. I further found I can reproduce the corruption by executing wget with the samba share as the target, in pve shell.
It doesn't matter what ISO, what templates, or what URLs. There is no suspicious errors in the samba server log. Files as small as 100-200MB would corrupt.
I did some experiments to troubleshoot the issue. I would like to hear suggestions, and whether I should open a case in bug reports.
The environment:
The samba server is a ubuntu VM. I have been using it for the past 6-7 years for all file storage/access. There has been no issues. To rule out, I plan to use a Turnkey file server LXC to create a samba share. If this pattern can be reproduced again with the LXC instance, it would rule out the samba server.
Thanks.
I have a ubuntu VM in PVE (pve1) that serves as a samba server. Let's call it fs (file server). In PVE/storage, I created a SMB/CIFS repository called fsRepo that uses the samba share. FsRepo stores backup, ISO and templates. Backup/restore all work well.
However, I noticed that if I use PVE GUI to download ISO or container templates into the SMB/CIFS share, the images are frequently corrupted (about 90% of the time). checksums would not match though the file size matches. I further found I can reproduce the corruption by executing wget with the samba share as the target, in pve shell.
It doesn't matter what ISO, what templates, or what URLs. There is no suspicious errors in the samba server log. Files as small as 100-200MB would corrupt.
I did some experiments to troubleshoot the issue. I would like to hear suggestions, and whether I should open a case in bug reports.
The environment:
- PVE version: pve-manager/8.1.3/b46aac3b42da5d15 (running kernel: 6.5.11-4-pve)
- Install from 8.1.3 PVE ISO, no special customization or update done.
- In a pve host, if wget is executed in the pve host root shell with the SMB/CIFS mount as the target, corruption will happen unless I limit the download rate to 5MB/s.
- In a pve host, if wget is excuted in one vm with the SMB/CIFS mount as the target, and the samba share is in another vm, wget download will not corrupt even at high download rate.
- #1 and #2 can be reproduced independently on two pve hosts, one is Mac Mini, another is a Zotac mini PC.
- If wget is exectued in one pve host, and the samba server is on another pve host, corruption will not happen.
- Even if the samba server shares a ramdisk (e.g. /tmp/sharedFolder), the same pattern of #1 and #2 hold.
The samba server is a ubuntu VM. I have been using it for the past 6-7 years for all file storage/access. There has been no issues. To rule out, I plan to use a Turnkey file server LXC to create a samba share. If this pattern can be reproduced again with the LXC instance, it would rule out the samba server.
Thanks.
Last edited: