-
Notifications
You must be signed in to change notification settings - Fork 65
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
failed to fully extract large tar file #171
Comments
|
🆗, I was able to reproduce the issue. I can workaround it by adding Please try to see if that works for you. |
-Im running slackware 64 bits with kernel 5.15.145 I have tried to frame the glitch but failed because its intermittent. Mount with --attr-timeout 1 but the error messages keep appearing from time to time. I also tried triggering /proc/sys/vm/drop_caches with similar results. This unrelated ticket docker/hub-feedback#727 seems very similar and using bsdtar instead of tar works for me but I wonder what other things could be silently causing corruption |
Can you try mount with |
With -o use_ino the filesystem gets quirky. A "ls" doesn't show files. If I "touch" a new file it doesn't get listed neither but if I do a "ls FILE" it does just like a "stat FILE" does too... If I "mkdir" a directory it doesnt appear with "ls" neither but I can "cd" into it. Is that behaviour normal? |
I pushed two commits on the branch use_ino that may solve the problem you see. If you don't want to compile it yourself, you can download the binary from GitHub Action. Please test it. |
You are not seeing in |
Sorry the delay to answer I had many inconvenients in the week and I also wanted to take a couple of days at least to test many times with different system loads. The default mount options dont always trigger tar error, but it consistently got triggered when the system was paging. And when it got triggered it also got triggered on the next test iteration. The use_ino mode (with the last bugfixes) on the other hand never triggered the error. The issue seems solved to me. Data encrypted with use_ino mode is 100% compatible with the default settings, right? |
Yes, the data are compatible between use_ino and not. It only changes what libfuse uses for its internal data structures. |
THIS SITUATION ONLY HAPPENS WHEN THE METADATA DIRECTORY RESIDES IN in-memory /tmp (tmpfs).
I dont know if this is directly related to securefs, I tried in gocryptfs and it runs flawlessly. But on secure's mount:
time tar xf linux-5.15.19.tar.xz && time sync
tar: linux-5.15.19/arch/arm64/boot/dts/arm: Directory renamed before its status could be extracted
tar: linux-5.15.19/arch/arm64/boot/dts: Directory renamed before its status could be extracted
tar: linux-5.15.19/arch/arm64/boot: Directory renamed before its status could be extracted
tar: linux-5.15.19/arch/arm64: Directory renamed before its status could be extracted
tar: Exiting with failure status due to previous errors
real 0m33.21s
user 0m21.24s
sys 0m06.66s
And this has effectively created corruption:
diff -uqr gomon/linux-5.15.19 secmon/linux-5.15.19
Files gomon/linux-5.15.19/arch/arm64/boot/dts/arm/vexpress-v2m-rs1.dtsi and secmon/linux-5.15.19/arch/arm64/boot/dts/arm/vexpress-v2m-rs1.dtsi differ
Files gomon/linux-5.15.19/scripts/dtc/include-prefixes/arm64/arm/vexpress-v2m-rs1.dtsi and secmon/linux-5.15.19/scripts/dtc/include-prefixes/arm64/arm/vexpress-v2m-rs1.dtsi differ
The text was updated successfully, but these errors were encountered: