On 15/06/14 22:47, Denys Vlasenko wrote: > On Friday 13 June 2014 11:28, Jack Mitchell wrote: >> I have recently upgraded to busybox v1.18.3 to v1.22.1 and seem to have >> discovered a bug in zcat. >> >> I'm not entirely sure what the problem is, but files don't seem to be >> extracted correctly. The following procedure creates a basic filesytem >> image, gzips it on the host then scp's it to the target where zcat fails >> to properly extract it, while gunzip -c succeeds. It's very similar to >> my use-case and shows the issue. >> >> On the host: >> >> [jack@jackArch busybox-test]$ dd if=/dev/zero of=test.img bs=1MB count=100 >> 100+0 records in >> 100+0 records out >> 100000000 bytes (100 MB) copied, 0.157787 s, 634 MB/s >> >> [jack@jackArch busybox-test]$ mkfs.ext3 test.img >> mke2fs 1.42.9 (28-Dec-2013) >> Allocating group tables: done >> Writing inode tables: done >> Creating journal (4096 blocks): done >> Writing superblocks and filesystem accounting information: done >> >> [jack@jackArch busybox-test]$ sudo mount test.img /mnt/tmp >> [sudo] password for jack: >> >> [jack@jackArch busybox-test]$ ls -la /mnt/tmp >> total 17 >> drwxr-xr-x 3 root root 1024 Jun 12 17:14 . >> drwxr-xr-x 10 root root 4096 Jun 9 13:18 .. >> drwx------ 2 root root 12288 Jun 12 17:14 lost+found >> >> [jack@jackArch busybox-test]$ sudo umount /mnt/tmp >> >> [jack@jackArch busybox-test]$ dd if=test.img bs=1k | gzip -v9 > test-zcat >> 97656+1 records in >> 97656+1 records out >> 100000000 bytes (100 MB) copied, 0.574901 s, 174 MB/s >> 99.9% >> >> [jack@jackArch busybox-test]$ scp test-zcat [email protected]:/mnt/persist >> test-zcat >> 100% 108KB 108.5KB/s 00:00 >> >> >> On the target: >> >> target# pwd >> /mnt/persist >> >> target# ls -lah test-zcat >> -rw-r--r-- 1 root root 108.5K Jun 13 09:19 test-zcat >> >> target# time zcat test-zcat > test.img >> real 0m 0.00s >> user 0m 0.00s >> sys 0m 0.00s >> >> target# ls -lah test.img >> -rw-r--r-- 1 root root 108.5K Jun 13 09:20 test.img >> >> target# mount test.img /mnt/tmp/ >> mount: wrong fs type, bad option, bad superblock on /dev/loop4, >> missing codepage or helper program, or other error >> >> In some cases useful info is found in syslog - try >> dmesg | tail or so. >> >> target# time gunzip -c test-zcat > test2.img >> real 0m 1.90s >> user 0m 1.31s >> sys 0m 0.58s >> >> target# ls -lah test2.img >> -rw-r--r-- 1 root root 95.4M Jun 13 09:21 test2.img >> >> target# mount test2.img /mnt/tmp/ >> >> target# ls -la /mnt/tmp/ >> drwxr-xr-x 3 root root 1024 Jun 12 16:14 . >> drwxr-xr-x 9 root root 4096 Jun 12 16:32 .. >> drwx------ 2 root root 12288 Jun 12 16:14 lost+found >> >> If you have any questions please let me know and I'll do my best to help. > > > Please try current git. I remember there was a fix for this. >
Hi Denys, Correct, zcat works as expected at the current git HEAD. Cheers, Jack. -- Jack Mitchell ([email protected]) Embedded Systems Engineer Cambridgeshire, UK http://www.embed.me.uk -- _______________________________________________ busybox mailing list [email protected] http://lists.busybox.net/mailman/listinfo/busybox
