Page 1 of 2

fsarchiver on slackware-current

Posted: Sun Nov 28, 2010 12:31 am
by myoung
I am using slackware-current and up until last week I was using fsarchiver 0.6.8 to do system partition backups using a command like:
fsarchiver savefs -A -a -z 3 -s 4300 /backuphost/xxxx-rootfs-201011182135.fsa /dev/sda2

Now I get an error:
backup cmd is: fsarchiver savefs -A -a -z 3 -s 4300 /backuphost/xxxx-rootfs-201011262135.fsa /dev/sda2
Archive will be split into volumes of 4508876800 bytes (4.20 GB)
filesys.c#204,generic_mount(): partition [/dev/sda2] cannot be mounted on [/tmp/fsa/20101126-213520-00] as [ext3] with options [user_xattr,acl]
oper_save.c#1032,filesystem_mount_partition(): can't detect and mount filesystem of partition [/dev/sda2], cannot continue.
removed /backuphost/xxx-rootfs-201011262135.fsa

I have upgraded to fsarchiver 0.6.10 using "SlackBuilds.org" fsarchiver scripts and repeated with no change at all to the error.

I booted from a systemrescuecd-x86-1.6.3.iso disk and used basically the same fsarchiver command and it worked fine.
The only change from 18/11/2010 - 26/11/2010 is the new slackware packages, which are actually quite extensive.

My Google searches have returned nothing useful.

my C and linux understanding is not good enough to enable me to fix fsarchiver even after it tells me the error occurs in filesys.c line 204.

Anyone using Slackware-current and fsarchiver know the answer?

Re: fsarchiver on slackware-current

Posted: Sun Nov 28, 2010 8:27 am
by admin
1) You can use advanced verbose / debug mode to get more details (-vvvvv or -ddddd). It's the same thing but -d prints to the debug file and -v to the console
2) Can you mount the partition by hand with these options:
mount -o user_xattr,acl /dev/sda2 /var/tmp/somewhere
3) You can also try on slackware with the fsarchiver-static package from the official download page

Re: fsarchiver on slackware-current

Posted: Mon Nov 29, 2010 12:33 pm
by myoung
Successfully mounted:
mount -o user_xattr,acl /dev/sda2 /mnt/tmp
ls -la /mnt/tmp
....
where /dev/sda2 is / the root partition

Failed:
fsarchiver savefs -dddd -vvvv -A -a -z 3 -s 4300 /backuphost/xxxx-rootfs-201011292252.fsa /dev/sda2
where
/dev/sda2 is / the root partition
/backuphost is an nfs mount partition

log:
Creating logfile in /var/log/fsarchiver_2010-11-29_22-52-52_31567.log
Running fsarchiver version=[0.6.10], fileformat=[FsArCh_002]
Mounting filesystem on /dev/sda2...
oper_save.c#1023,filesystem_mount_partition(): partition /dev/sda2 is not mounted
fs_ext2.c#471,extfs_test(): the filesystem type determined by the extfs features is [ext3]
fs_ext2.c#471,extfs_test(): the filesystem type determined by the extfs features is [ext3]
fs_ext2.c#432,extfs_mount(): extfs_mount(partition=[/dev/sda2], mnt=[/tmp/fsa/20101129-225252-00], fsbuf=[ext3])
the filesystem of [/dev/sda2] type determined by the features is [ext3]
filesys.c#202,generic_mount(): trying to mount [/dev/sda2] on [/tmp/fsa/20101129-225252-00] as [ext3] with options [user_xattr,acl]
filesys.c#204,generic_mount(): partition [/dev/sda2] cannot be mounted on [/tmp/fsa/20101129-225252-00] as [ext3] with options [user_xattr,acl]
fs_ext2.c#471,extfs_test(): the filesystem type determined by the extfs features is [ext3]
fs_xfs.c#167,xfs_test(): (be32_to_cpu(sb.sb_magicnum)=00000000) != (XFS_SUPER_MAGIC=58465342)
oper_save.c#1032,filesystem_mount_partition(): can't detect and mount filesystem of partition [/dev/sda2], cannot continue.
oper_save.c#1211,oper_save(): archive_filesystem(/dev/sda2) failed
oper_save.c#1334,oper_save(): THREAD-MAIN1: exit error
oper_save.c#1338,oper_save(): THREAD-MAIN1: exit
thread_comp.c#280,compression_function(): THREAD-COMP: exit success
thread_archio.c#100,thread_writer_fct(): THREAD-WRITER: exit success
removed /backuphost/xxxx-rootfs-201011292252.fsa

Tested with locally compiled fsarchiver-0.6.10 and static binary downloaded from fsarchiver, same result.

Re: fsarchiver on slackware-current

Posted: Mon Nov 29, 2010 4:11 pm
by admin
The interesting line is that:

Code: Select all

filesys.c#204,generic_mount(): partition [/dev/sda2] cannot be mounted on [/tmp/fsa/20101129-225252-00] as [ext3] with options [user_xattr,acl]
1) Can you check if that filesystem is mounted as ext3 or ext4 when you mount it using the command line ?
2) Do you have a security thing like selinux enabled ?
3) Do you have something interesting in /var/log/messages or in dmesg ?
4) Can you run fsarchiver from strace and post the log (or a link to a compressed file on an http/ftp host) here:

Code: Select all

strace -o /var/tmp/fsarchiver.log fsarchiver savefs -A -a -z 3 -s 4300 /backuphost/xxxx-rootfs-201011292252.fsa /dev/sda2
The log file should be quite small as it fails immediately

Re: fsarchiver on slackware-current

Posted: Tue Nov 30, 2010 11:46 am
by myoung
1.) mount -t ext3 -o defaults,user_xattr,acl /dev/sda2 /tmp/fsa/20101129-225219-00
no errors
ls /tmp/fsa/20101129-225219-00
....
list of files on /

2.) No I do not have a security thing like selinux enabled (whatever that is)

3.) No entries are added to /var/log/messages or dmesg when the fsarchiver command is run.

Interesting!
I ran the mount command above but forgot to umount
I ran a fsarchiver command like:
fsarchiver savefs -A -a -z 3 -s 4300 /backuphost/xxxx-rootfs-201011302109.fsa /dev/sda2
to check /var/log/messages and dmesg
and the fsarchiver program is running. It did not fail as before. Also finished with no errors!
I will wait until it finishes, umount and try again.

Random thoughts:
Is the program waiting long enough for the mount to occur?
I have had trouble mounting DVD in scripts, such that the mount command seems to return long before the
DVD is really mounted and ready to use.

4.) strace -o /var/tmp/fsarchiver.log fsarchiver savefs -A -a -z 3 -s 4300 /backuphost/zzz-mytest.fsa /dev/sda2

strace log:
execve("/usr/sbin/fsarchiver", ["fsarchiver", "savefs", "-A", "-a", "-z", "3", "-s", "4300", "/backuphost/zzz-mytest.fsa", "/dev/sda2"], [/* 60 vars */]) = 0
brk(0) = 0x8082000
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xb786d000
access("/etc/ld.so.preload", R_OK) = -1 ENOENT (No such file or directory)
open("/etc/ld.so.cache", O_RDONLY) = 3
fstat64(3, {st_mode=S_IFREG|0644, st_size=153177, ...}) = 0
mmap2(NULL, 153177, PROT_READ, MAP_PRIVATE, 3, 0) = 0xb7847000
close(3) = 0
open("/lib/libpthread.so.0", O_RDONLY) = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\360J\0\0004\0\0\0"..., 512) = 512
fstat64(3, {st_mode=S_IFREG|0755, st_size=117379, ...}) = 0
mmap2(NULL, 98816, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0xb782e000
mmap2(0xb7843000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x14) = 0xb7843000
mmap2(0xb7845000, 4608, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0xb7845000
close(3) = 0
open("/lib/librt.so.1", O_RDONLY) = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\240\30\0\0004\0\0\0"..., 512) = 512
fstat64(3, {st_mode=S_IFREG|0755, st_size=38541, ...}) = 0
mmap2(NULL, 33360, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0xb7825000
mmap2(0xb782c000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x6) = 0xb782c000
close(3) = 0
open("/lib/liblzma.so.5", O_RDONLY) = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\0\34\0\0004\0\0\0"..., 512) = 512
fstat64(3, {st_mode=S_IFREG|0755, st_size=147910, ...}) = 0
mmap2(NULL, 132116, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0xb7804000
mmap2(0xb7824000, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x20) = 0xb7824000
close(3) = 0
open("/lib/libblkid.so.1", O_RDONLY) = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0P9\0\0004\0\0\0"..., 512) = 512
fstat64(3, {st_mode=S_IFREG|0755, st_size=122096, ...}) = 0
mmap2(NULL, 120812, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0xb77e6000
mmap2(0xb7802000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x1c) = 0xb7802000
close(3) = 0
open("/lib/libuuid.so.1", O_RDONLY) = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\0\r\0\0004\0\0\0"..., 512) = 512
fstat64(3, {st_mode=S_IFREG|0755, st_size=11408, ...}) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xb77e5000
mmap2(NULL, 14168, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0xb77e1000
mmap2(0xb77e4000, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x2) = 0xb77e4000
close(3) = 0
open("/usr/lib/libz.so.1", O_RDONLY) = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0000\26\0\0004\0\0\0"..., 512) = 512
fstat64(3, {st_mode=S_IFREG|0755, st_size=77096, ...}) = 0
mmap2(NULL, 79884, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0xb77cd000
mmap2(0xb77e0000, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x12) = 0xb77e0000
close(3) = 0
open("/lib/libbz2.so.1", O_RDONLY) = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\200\17\0\0004\0\0\0"..., 512) = 512
fstat64(3, {st_mode=S_IFREG|0755, st_size=70360, ...}) = 0
mmap2(NULL, 69160, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0xb77bc000
mmap2(0xb77cc000, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x10) = 0xb77cc000
close(3) = 0
open("/usr/lib/liblzo2.so.2", O_RDONLY) = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\340\36\0\0004\0\0\0"..., 512) = 512
fstat64(3, {st_mode=S_IFREG|0755, st_size=136728, ...}) = 0
mmap2(NULL, 130136, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0xb779c000
mmap2(0xb77bb000, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x1e) = 0xb77bb000
close(3) = 0
open("/lib/libgcrypt.so.11", O_RDONLY) = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\240F\0\0004\0\0\0"..., 512) = 512
fstat64(3, {st_mode=S_IFREG|0755, st_size=469804, ...}) = 0
mmap2(NULL, 473388, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0xb7728000
mmap2(0xb7799000, 12288, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x70) = 0xb7799000
close(3) = 0
open("/lib/libgpg-error.so.0", O_RDONLY) = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\20\6\0\0004\0\0\0"..., 512) = 512
fstat64(3, {st_mode=S_IFREG|0755, st_size=11748, ...}) = 0
mmap2(NULL, 14696, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0xb7724000
mmap2(0xb7727000, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x2) = 0xb7727000
close(3) = 0
open("/lib/libc.so.6", O_RDONLY) = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\300m\1\0004\0\0\0"..., 512) = 512
fstat64(3, {st_mode=S_IFREG|0755, st_size=1646965, ...}) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xb7723000
mmap2(NULL, 1448360, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0xb75c1000
mprotect(0xb771c000, 4096, PROT_NONE) = 0
mmap2(0xb771d000, 12288, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x15b) = 0xb771d000
mmap2(0xb7720000, 10664, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0xb7720000
close(3) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xb75c0000
set_thread_area({entry_number:-1 -> 6, base_addr:0xb75c0930, limit:1048575, seg_32bit:1, contents:0, read_exec_only:0, limit_in_pages:1, seg_not_present:0, useable:1}) = 0
mprotect(0xb771d000, 8192, PROT_READ) = 0
mprotect(0xb782c000, 4096, PROT_READ) = 0
mprotect(0xb7843000, 4096, PROT_READ) = 0
mprotect(0xb788b000, 4096, PROT_READ) = 0
munmap(0xb7847000, 153177) = 0
set_tid_address(0xb75c0998) = 32049
set_robust_list(0xb75c09a0, 0xc) = 0
futex(0xbf94abf0, FUTEX_WAKE_PRIVATE, 1) = 0
futex(0xbf94abf0, FUTEX_WAIT_BITSET_PRIVATE|FUTEX_CLOCK_REALTIME, 1, NULL, bf94ac00) = -1 EAGAIN (Resource temporarily unavailable)
rt_sigaction(SIGRTMIN, {0xb7832520, [], SA_SIGINFO}, NULL, 8) = 0
rt_sigaction(SIGRT_1, {0xb78325a0, [], SA_RESTART|SA_SIGINFO}, NULL, 8) = 0
rt_sigprocmask(SIG_UNBLOCK, [RTMIN RT_1], NULL, 8) = 0
getrlimit(RLIMIT_STACK, {rlim_cur=8192*1024, rlim_max=RLIM_INFINITY}) = 0
uname({sys="Linux", node="zeus", ...}) = 0
brk(0) = 0x8082000
brk(0x80a3000) = 0x80a3000
access("/etc/gcrypt/fips_enabled", F_OK) = -1 ENOENT (No such file or directory)
open("/proc/sys/crypto/fips_enabled", O_RDONLY) = 3
fstat64(3, {st_mode=S_IFREG|0444, st_size=0, ...}) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xb786c000
read(3, "0\n", 1024) = 2
close(3) = 0
munmap(0xb786c000, 4096) = 0
write(2, "Archive will be split into volum"..., 65) = 65
geteuid32() = 0
rt_sigprocmask(SIG_SETMASK, [INT TERM], NULL, 8) = 0
gettimeofday({1291116824, 755133}, NULL) = 0
stat64("/dev/sda2", {st_mode=S_IFBLK|0660, st_rdev=makedev(8, 2), ...}) = 0
mmap2(NULL, 8388608, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS|MAP_STACK, -1, 0) = 0xb6dc0000
mprotect(0xb6dc0000, 4096, PROT_NONE) = 0
clone(child_stack=0xb75bf444, flags=CLONE_VM|CLONE_FS|CLONE_FILES|CLONE_SIGHAND|CLONE_THREAD|CLONE_SYSVSEM|CLONE_SETTLS|CLONE_PARENT_SETTID|CLONE_CHILD_CLEARTID, parent_tidptr=0xb75bfbd8, {entry_number:6, base_addr:0xb75bfb70, limit:1048575, seg_32bit:1, contents:0, read_exec_only:0, limit_in_pages:1, seg_not_present:0, useable:1}, child_tidptr=0xb75bfbd8) = 32050
mmap2(NULL, 8388608, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS|MAP_STACK, -1, 0) = 0xb65c0000
mprotect(0xb65c0000, 4096, PROT_NONE) = 0
clone(child_stack=0xb6dbf444, flags=CLONE_VM|CLONE_FS|CLONE_FILES|CLONE_SIGHAND|CLONE_THREAD|CLONE_SYSVSEM|CLONE_SETTLS|CLONE_PARENT_SETTID|CLONE_CHILD_CLEARTID, parent_tidptr=0xb6dbfbd8, {entry_number:6, base_addr:0xb6dbfb70, limit:1048575, seg_32bit:1, contents:0, read_exec_only:0, limit_in_pages:1, seg_not_present:0, useable:1}, child_tidptr=0xb6dbfbd8) = 32051
gettimeofday({1291116824, 757930}, NULL) = 0
gettimeofday({1291116824, 758010}, NULL) = 0
open("/etc/localtime", O_RDONLY) = 3
fstat64(3, {st_mode=S_IFREG|0644, st_size=2202, ...}) = 0
fstat64(3, {st_mode=S_IFREG|0644, st_size=2202, ...}) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xb786c000
read(3, "TZif2\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\4\0\0\0\4\0\0\0\0"..., 4096) = 2202
_llseek(3, -30, [2172], SEEK_CUR) = 0
read(3, "\nCST-9:30CST,M10.1.0,M4.1.0/3\n", 4096) = 30
close(3) = 0
munmap(0xb786c000, 4096) = 0
uname({sys="Linux", node="zeus", ...}) = 0
open("/proc/mounts", O_RDONLY|O_LARGEFILE) = 3
fstat64(3, {st_mode=S_IFREG|0444, st_size=0, ...}) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xb786c000
read(3, "rootfs / rootfs rw 0 0\n/dev/root"..., 1024) = 1024
stat64("rootfs", 0xbf763010) = -1 ENOENT (No such file or directory)
stat64("/dev/root", 0xbf763010) = -1 ENOENT (No such file or directory)
stat64("devtmpfs", 0xbf763010) = -1 ENOENT (No such file or directory)
stat64("proc", 0xbf763010) = -1 ENOENT (No such file or directory)
stat64("sysfs", 0xbf763010) = -1 ENOENT (No such file or directory)
stat64("devpts", 0xbf763010) = -1 ENOENT (No such file or directory)
stat64("fusectl", 0xbf763010) = -1 ENOENT (No such file or directory)
stat64("usbfs", 0xbf763010) = -1 ENOENT (No such file or directory)
stat64("/dev/sdd1", {st_mode=S_IFBLK|0660, st_rdev=makedev(8, 49), ...}) = 0
stat64("/dev/sda2", {st_mode=S_IFBLK|0660, st_rdev=makedev(8, 2), ...}) = 0
stat64("/dev/sdb1", {st_mode=S_IFBLK|0660, st_rdev=makedev(8, 17), ...}) = 0
stat64("/dev/sda2", {st_mode=S_IFBLK|0660, st_rdev=makedev(8, 2), ...}) = 0
stat64("ares:/data", 0xbf763010) = -1 ENOENT (No such file or directory)
stat64("ares:/data2/mp3", 0xbf763010) = -1 ENOENT (No such file or directory)
read(3, "e=131072,namlen=255,hard,proto=t"..., 1024) = 483
stat64("ares:/data2/pics", 0xbf763010) = -1 ENOENT (No such file or directory)
stat64("ares:/data5/movies2", 0xbf763010) = -1 ENOENT (No such file or directory)
stat64("nfsd", 0xbf763010) = -1 ENOENT (No such file or directory)
stat64("/dev/sdc1", {st_mode=S_IFBLK|0660, st_rdev=makedev(8, 33), ...}) = 0
stat64("/dev/sda2", {st_mode=S_IFBLK|0660, st_rdev=makedev(8, 2), ...}) = 0
read(3, "", 1024) = 0
close(3) = 0
munmap(0xb786c000, 4096) = 0
stat64("", 0xbf763fd0) = -1 ENOENT (No such file or directory)
mkdir("", 0755) = -1 ENOENT (No such file or directory)
stat64("/tmp", {st_mode=S_IFDIR|S_ISVTX|0777, st_size=4096, ...}) = 0
stat64("/tmp/fsa", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
stat64("/tmp/fsa/20101130-220344-00", 0xbf763fd0) = -1 ENOENT (No such file or directory)
mkdir("/tmp/fsa/20101130-220344-00", 0755) = 0
open("/dev/sda2", O_RDONLY|O_LARGEFILE) = 3
lseek(3, 1024, SEEK_SET) = 1024
read(3, "\0\300H\0\260=\221\0\25C\7\0\326\231y\0\t8E\0\0\0\0\0\2\0\0\0\2\0\0\0"..., 1024) = 1024
lseek(3, 4096, SEEK_SET) = 4096
read(3, "\4\4\0\0\5\4\0\0\6\4\0\0\0\0\365?\2\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 12288) = 12288
close(3) = 0
open("/dev/sda2", O_RDONLY|O_LARGEFILE) = 3
lseek(3, 1024, SEEK_SET) = 1024
read(3, "\0\300H\0\260=\221\0\25C\7\0\326\231y\0\t8E\0\0\0\0\0\2\0\0\0\2\0\0\0"..., 1024) = 1024
lseek(3, 4096, SEEK_SET) = 4096
read(3, "\4\4\0\0\5\4\0\0\6\4\0\0\0\0\365?\2\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 12288) = 12288
close(3) = 0
open("/dev/sda2", O_RDONLY|O_LARGEFILE) = 3
lseek(3, 1024, SEEK_SET) = 1024
read(3, "\0\300H\0\260=\221\0\25C\7\0\326\231y\0\t8E\0\0\0\0\0\2\0\0\0\2\0\0\0"..., 1024) = 1024
lseek(3, 4096, SEEK_SET) = 4096
read(3, "\4\4\0\0\5\4\0\0\6\4\0\0\0\0\365?\2\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 12288) = 12288
close(3) = 0
mount("/dev/sda2", "/tmp/fsa/20101130-220344-00", "ext3", MS_RDONLY|MS_NOATIME|MS_NODIRATIME, "user_xattr,acl") = -1 EBUSY (Device or resource busy)
write(2, "filesys.c#204,generic_mount(): p"..., 144) = 144
open("/dev/sda2", O_RDONLY|O_LARGEFILE) = 3
lseek(3, 1024, SEEK_SET) = 1024
read(3, "\0\300H\0\260=\221\0\25C\7\0\326\231y\0\t8E\0\0\0\0\0\2\0\0\0\2\0\0\0"..., 1024) = 1024
lseek(3, 4096, SEEK_SET) = 4096
read(3, "\4\4\0\0\5\4\0\0\6\4\0\0\0\0\365?\2\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 12288) = 12288
close(3) = 0
open("/dev/sda2", O_RDONLY|O_LARGEFILE) = 3
_llseek(3, 65536, [65536], SEEK_SET) = 0
read(3, "\20\200\0\0\20\200\1\0\20\200\2\0\20\200\3\0\20\200\4\0\20\200\f\0\20\200\r\0\20\200\30\0"..., 204) = 204
close(3) = 0
open("/dev/sda2", O_RDONLY|O_LARGEFILE) = 3
_llseek(3, 65536, [65536], SEEK_SET) = 0
read(3, "\20\200\0\0\20\200\1\0\20\200\2\0\20\200\3\0\20\200\4\0\20\200\f\0\20\200\r\0\20\200\30\0"..., 60) = 60
close(3) = 0
open("/dev/sda2", O_RDONLY|O_LARGEFILE) = 3
_llseek(3, 65536, [65536], SEEK_SET) = 0
read(3, "\20\200\0\0\20\200\1\0\20\200\2\0\20\200\3\0\20\200\4\0\20\200\f\0\20\200\r\0\20\200\30\0"..., 2859) = 2859
close(3) = 0
open("/dev/sda2", O_RDONLY|O_LARGEFILE) = 3
read(3, "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 208) = 208
close(3) = 0
open("/dev/sda2", O_RDONLY|O_LARGEFILE) = 3
_llseek(3, 32768, [32768], SEEK_SET) = 0
read(3, "\10\200\0\0\10\200\1\0\10\200\2\0\10\200\3\0\10\200\4\0\10\200\f\0\10\200\r\0\10\200\30\0"..., 184) = 184
close(3) = 0
open("/dev/sda2", O_RDONLY|O_LARGEFILE) = 3
read(3, "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 16384) = 16384
close(3) = 0
write(2, "oper_save.c#1032,filesystem_moun"..., 124) = 124
futex(0x8081ca0, FUTEX_CMP_REQUEUE_PRIVATE, 1, 2147483647, 0x8081c84, 6) = 2
futex(0xb6dbfbd8, FUTEX_WAIT, 32051, NULL) = 0
unlink("/backuphost/zzz-mytest.fsa") = 0
write(2, "removed /backuphost/zzz-mytest.f"..., 35) = 35
close(-1) = -1 EBADF (Bad file descriptor)
exit_group(1) = ?

Re: fsarchiver on slackware-current

Posted: Tue Nov 30, 2010 2:00 pm
by admin
The program is not waiting for anything, it just uses the mount function which takes the time it takes.
The interesting this is this:

Code: Select all

mount("/dev/sda2", "/tmp/fsa/20101130-220344-00", "ext3", MS_RDONLY|MS_NOATIME|MS_NODIRATIME, "user_xattr,acl") = -1 EBUSY (Device or resource busy)
So mount fails because it's considered busy (Device or resource busy). According to "man 2 mount", this is the reasons:

Code: Select all

EBUSY: source is already mounted.  Or, it cannot be remounted read-only, because it 
still holds files open for writing. Or, it cannot be  mounted on target because target is 
still busy (it is the working directory of some task, the mount point of another device, has open files, etc.).
In other it says /dev/sda2 may already be mounted or /tmp/fsa/20101130-220344-00 is busy. In case of a problem we could imagine that a previous instance of fsarchiver may have left something mounted in /tmp/fsa/xxx or this partition as well, even if it's not supposed to happen as fsarchiver does some cleanup before it exits.

1) Can you check in /proc/mounts that /dev/sda2 is not mounted (may contains more things that /etc/mtab)
2) No application must be using /tmp/fsa/20101130-220344-00 (no shell must be in this directory)
3) Can you use "fuser -mv /dev/sda2" to see if the partition is said to be used by something
4) Can you try by hand with the extra following options

Code: Select all

rm -rf /tmp/fsa
mkdir -p /tmp/fsa/20101130-220344-00
mount -t ext3 -o noatime,ro,nodiratime,user_xattr,acl /dev/sda2 /tmp/fsa/20101130-220344-00
5) Have you rebooted the box ?

Re: fsarchiver on slackware-current

Posted: Thu Dec 02, 2010 6:58 am
by myoung
1)
[email protected]:~# cat /proc/mounts
rootfs / rootfs rw 0 0
/dev/root / ext3 rw,relatime,errors=continue,barrier=0,data=ordered 0 0
devtmpfs /dev devtmpfs rw,relatime,size=512316k,nr_inodes=128079,mode=755 0 0
proc /proc proc rw,relatime 0 0
sysfs /sys sysfs rw,relatime 0 0
devpts /dev/pts devpts rw,relatime,gid=5,mode=620 0 0
fusectl /sys/fs/fuse/connections fusectl rw,relatime 0 0
usbfs /proc/bus/usb usbfs rw,relatime 0 0
/dev/sdd1 /data4 ext3 rw,relatime,errors=continue,barrier=0,data=ordered 0 0
/dev/sdb1 /data2 ext3 rw,relatime,errors=continue,barrier=0,data=ordered 0 0
ares:/data /data nfs rw,relatime,vers=3,rsize=131072,wsize=131072,namlen=255,hard,proto=tcp,timeo=600,retrans=2,sec=sys,mountaddr=192.168.0.1,mountvers=3,mountport=59359,mountproto=udp,addr=192.168.0.1 0 0
ares:/data2/mp3 /mp3 nfs rw,relatime,vers=3,rsize=131072,wsize=131072,namlen=255,hard,proto=tcp,timeo=600,retrans=2,sec=sys,mountaddr=192.168.0.1,mountvers=3,mountport=59359,mountproto=udp,addr=192.168.0.1 0 0
ares:/data2/pics /pics nfs rw,relatime,vers=3,rsize=131072,wsize=131072,namlen=255,hard,proto=tcp,timeo=600,retrans=2,sec=sys,mountaddr=192.168.0.1,mountvers=3,mountport=59359,mountproto=udp,addr=192.168.0.1 0 0
ares:/data5/movies2 /movies2 nfs rw,relatime,vers=3,rsize=131072,wsize=131072,namlen=255,hard,proto=tcp,timeo=600,retrans=2,sec=sys,mountaddr=192.168.0.1,mountvers=3,mountport=59359,mountproto=udp,addr=192.168.0.1 0 0
nfsd /proc/fs/nfs nfsd rw,relatime 0 0
/dev/sdc1 /data3 ext3 rw,relatime,errors=continue,barrier=0,data=ordered 0 0

2) I can confirm that no shell or apps are using /tmp/fsa/20101130-220344-00

3) Yes, fuser -mv /dev/sda2 shows that heaps of processes are using /dev/sda2, as it is the / root partition.

4)
[email protected]:~# rm -rf /tmp/fsa
[email protected]:~# mkdir -p /tmp/fsa/20101130-220344-00
[email protected]:~# mount -t ext3 -o noatime,ro,nodiratime,user_xattr,acl /dev/sda2 /tmp/fsa/20101130-220344-00
mount: /dev/sda2 already mounted or /tmp/fsa/20101130-220344-00 busy
[email protected]:~#

[email protected]:~# mount -t ext3 -o defaults,user_xattr,acl /dev/sda2 /mnt/tmp
[email protected]:~#
[email protected]:~# mount -t ext3 -o user_xattr,acl /dev/sda2 /mnt/tmp
[email protected]:~# umount /mnt/tmp
[email protected]:~# mount -t ext3 -o noatime,user_xattr,acl /dev/sda2 /mnt/tmp
[email protected]:~# umount /mnt/tmp
[email protected]:~# mount -t ext3 -o noatime,nodiratime,user_xattr,acl /dev/sda2 /mnt/tmp
[email protected]:~# umount /mnt/tmp
[email protected]:~# mount -t ext3 -o ro,noatime,nodiratime,user_xattr,acl /dev/sda2 /mnt/tmp
mount: /dev/sda2 already mounted or /mnt/tmp busy
[email protected]:~#

[email protected]:~# mount -t ext3 -o ro,noatime,nodiratime,user_xattr,acl /dev/sda2 /tmp/fsa/20101130-220344-00
mount: /dev/sda2 already mounted or /tmp/fsa/20101130-220344-00 busy
[email protected]:~# mount -t ext3 -o noatime,nodiratime,user_xattr,acl /dev/sda2 /tmp/fsa/20101130-220344-00
[email protected]:~#

It would appear that ro option is the problem.
Is it possible/sensible to use fsarchiver without the read-only option, assuming it could be selected as an option somehow?

Re: fsarchiver on slackware-current

Posted: Thu Dec 02, 2010 7:47 am
by admin
I did not realize it's the root filesystem, so it makes more sense. I suspect fsarchiver considers that the partition is not mounted before it starts, as it's using /proc/mounts to see whether or not the partition is mounted, and "/dev/sda2" cannot be found as it's shown as "/dev/root". But it should be able to identify the partition anyway using the major/minor numbers associated with both /dev/root and /dev/sda2. I wonder if there is a bug in that code.

Code: Select all

    res=generic_get_mntinfo(devinfo->devpath, &readwrite, curmntdir, sizeof(curmntdir), optbuf, sizeof(optbuf), fsbuf, sizeof(fsbuf));
    if (res==0) // partition is already mounted
    {
        devinfo->mountedbyfsa=false;
        msgprintf(MSG_DEBUG1, "generic_get_mntinfo(%s): mnt=[%s], opt=[%s], fs=[%s], rw=[%d]\n", devinfo->devpath, curmntdir, optbuf, fsbuf, readwrite);
        if (readwrite==1 && g_options.allowsaverw==0)
        {
            errprintf("partition [%s] is mounted read/write. please mount it read-only \n"
                "and then try again. you can do \"mount -o remount,ro %s\". you can \n"
                "also run fsarchiver with option '-A' if you know what you are doing.\n",
                devinfo->devpath, devinfo->devpath);
            return -1;
        }
I have created a special debugging version that will print extra messages. Could you download the sources of that debugging version, compile it and then run the binary:

Code: Select all

cd /var/tmp
wget -c http://beta.fsarchiver.org/fsarchiver-0.6.11-debug01.tar.bz2
tar xfj fsarchiver-0.6.11-debug01.tar.bz2
cd fsarchiver-0.6.11-debug01
./configure && make
./src/fsarchiver savefs -A -a -z 3 -s 4300 /backuphost/xxxx-rootfs-201011182135.fsa /dev/sda2
And then you can copy and paste the messages printed by fsarchiver in this thread.

Can you also paste the output of these commands:

Code: Select all

1) ls -l /dev/root /dev/sda*
2) stat -L /dev/root
3) stat -L /dev/sda2
Many thanks

Re: fsarchiver on slackware-current

Posted: Thu Dec 02, 2010 11:34 am
by myoung
[email protected]:/var/tmp/fsarchiver-0.6.11-debug01# ./src/fsarchiver savefs -A -a -z 3 -s 4300 /backuphost/xxxx-rootfs-201011182135.fsa /dev/sda2
Archive will be split into volumes of 4508876800 bytes (4.20 GB)
generic_get_mntinfo(devname=[/dev/sda2]): start
generic_get_mntinfo(devname=[/dev/sda2]): entry(/proc/mounts): col_dev=[rootfs], col_mnt=[/], col_fs=[rootfs], col_opt=[rw]
devcmp(rootfs, /dev/sda2)=-1 as stat64() failed
devcmp(rootfs, /dev/sda2)=-1
generic_get_spacestats(rootfs, /, ...)=-1
devcmp(rootfs, /dev/sda2)=-1 as stat64() failed
generic_get_mntinfo(devname=[/dev/sda2]): entry(/proc/mounts): col_dev=[/dev/root], col_mnt=[/], col_fs=[ext3], col_opt=[rw,relatime,errors=continue,barrier=0,data=ordered]
devcmp(/dev/root, /dev/sda2)=-1 as stat64() failed
devcmp(/dev/root, /dev/sda2)=-1
generic_get_spacestats(/dev/root, /, ...)=-1
devcmp(/dev/root, /dev/sda2)=-1 as stat64() failed
generic_get_mntinfo(devname=[/dev/sda2]): entry(/proc/mounts): col_dev=[devtmpfs], col_mnt=[/dev], col_fs=[devtmpfs], col_opt=[rw,relatime,size=512316k,nr_inodes=128079,mode=755]
devcmp(devtmpfs, /dev/sda2)=-1 as stat64() failed
devcmp(devtmpfs, /dev/sda2)=-1
generic_get_spacestats(devtmpfs, /dev, ...)=-1
devcmp(devtmpfs, /dev/sda2)=-1 as stat64() failed
generic_get_mntinfo(devname=[/dev/sda2]): entry(/proc/mounts): col_dev=[proc], col_mnt=[/proc], col_fs=[proc], col_opt=[rw,relatime]
devcmp(proc, /dev/sda2)=-1 as stat64() failed
devcmp(proc, /dev/sda2)=-1
generic_get_spacestats(proc, /proc, ...)=-1
devcmp(proc, /dev/sda2)=-1 as stat64() failed
generic_get_mntinfo(devname=[/dev/sda2]): entry(/proc/mounts): col_dev=[sysfs], col_mnt=[/sys], col_fs=[sysfs], col_opt=[rw,relatime]
devcmp(sysfs, /dev/sda2)=-1 as stat64() failed
devcmp(sysfs, /dev/sda2)=-1
generic_get_spacestats(sysfs, /sys, ...)=-1
devcmp(sysfs, /dev/sda2)=-1 as stat64() failed
generic_get_mntinfo(devname=[/dev/sda2]): entry(/proc/mounts): col_dev=[devpts], col_mnt=[/dev/pts], col_fs=[devpts], col_opt=[rw,relatime,gid=5,mode=620]
devcmp(devpts, /dev/sda2)=-1 as stat64() failed
devcmp(devpts, /dev/sda2)=-1
generic_get_spacestats(devpts, /dev/pts, ...)=-1
devcmp(devpts, /dev/sda2)=-1 as stat64() failed
generic_get_mntinfo(devname=[/dev/sda2]): entry(/proc/mounts): col_dev=[fusectl], col_mnt=[/sys/fs/fuse/connections], col_fs=[fusectl], col_opt=[rw,relatime]
devcmp(fusectl, /dev/sda2)=-1 as stat64() failed
devcmp(fusectl, /dev/sda2)=-1
generic_get_spacestats(fusectl, /sys/fs/fuse/connections, ...)=-1
devcmp(fusectl, /dev/sda2)=-1 as stat64() failed
generic_get_mntinfo(devname=[/dev/sda2]): entry(/proc/mounts): col_dev=[usbfs], col_mnt=[/proc/bus/usb], col_fs=[usbfs], col_opt=[rw,relatime]
devcmp(usbfs, /dev/sda2)=-1 as stat64() failed
devcmp(usbfs, /dev/sda2)=-1
generic_get_spacestats(usbfs, /proc/bus/usb, ...)=-1
devcmp(usbfs, /dev/sda2)=-1 as stat64() failed
generic_get_mntinfo(devname=[/dev/sda2]): entry(/proc/mounts): col_dev=[/dev/sdd1], col_mnt=[/data4], col_fs=[ext3], col_opt=[rw,relatime,errors=continue,barrier=0,data=ordered]
devcmp(/dev/sdd1, /dev/sda2)=1
devcmp(/dev/sdd1, /dev/sda2)=1
generic_get_spacestats(/dev/sdd1, /data4, ...)=0
devcmp(/dev/sdd1, /dev/sda2)=1
generic_get_mntinfo(devname=[/dev/sda2]): entry(/proc/mounts): col_dev=[/dev/sdb1], col_mnt=[/data2], col_fs=[ext3], col_opt=[rw,relatime,errors=continue,barrier=0,data=ordered]
devcmp(/dev/sdb1, /dev/sda2)=1
devcmp(/dev/sdb1, /dev/sda2)=1
generic_get_spacestats(/dev/sdb1, /data2, ...)=0
devcmp(/dev/sdb1, /dev/sda2)=1
generic_get_mntinfo(devname=[/dev/sda2]): entry(/proc/mounts): col_dev=[ares:/data], col_mnt=[/data], col_fs=[nfs], col_opt=[rw,relatime,vers=3,rsize=131072,wsize=131072,namlen=255,hard,proto=tcp,timeo=600,retrans=2,sec=sys,mountaddr=192.168.0.1,mountv]
devcmp(ares:/data, /dev/sda2)=-1 as stat64() failed
devcmp(ares:/data, /dev/sda2)=-1
generic_get_spacestats(ares:/data, /data, ...)=-1
devcmp(ares:/data, /dev/sda2)=-1 as stat64() failed
generic_get_mntinfo(devname=[/dev/sda2]): entry(/proc/mounts): col_dev=[ares:/data2/mp3], col_mnt=[/mp3], col_fs=[nfs], col_opt=[rw,relatime,vers=3,rsize=131072,wsize=131072,namlen=255,hard,proto=tcp,timeo=600,retrans=2,sec=sys,mountaddr=192.168.0.1,mountv]
devcmp(ares:/data2/mp3, /dev/sda2)=-1 as stat64() failed
devcmp(ares:/data2/mp3, /dev/sda2)=-1
generic_get_spacestats(ares:/data2/mp3, /mp3, ...)=-1
devcmp(ares:/data2/mp3, /dev/sda2)=-1 as stat64() failed
generic_get_mntinfo(devname=[/dev/sda2]): entry(/proc/mounts): col_dev=[ares:/data2/pics], col_mnt=[/pics], col_fs=[nfs], col_opt=[rw,relatime,vers=3,rsize=131072,wsize=131072,namlen=255,hard,proto=tcp,timeo=600,retrans=2,sec=sys,mountaddr=192.168.0.1,mountv]
devcmp(ares:/data2/pics, /dev/sda2)=-1 as stat64() failed
devcmp(ares:/data2/pics, /dev/sda2)=-1
generic_get_spacestats(ares:/data2/pics, /pics, ...)=-1
devcmp(ares:/data2/pics, /dev/sda2)=-1 as stat64() failed
generic_get_mntinfo(devname=[/dev/sda2]): entry(/proc/mounts): col_dev=[ares:/data5/movies2], col_mnt=[/movies2], col_fs=[nfs], col_opt=[rw,relatime,vers=3,rsize=131072,wsize=131072,namlen=255,hard,proto=tcp,timeo=600,retrans=2,sec=sys,mountaddr=192.168.0.1,mountv]
devcmp(ares:/data5/movies2, /dev/sda2)=-1 as stat64() failed
devcmp(ares:/data5/movies2, /dev/sda2)=-1
generic_get_spacestats(ares:/data5/movies2, /movies2, ...)=-1
devcmp(ares:/data5/movies2, /dev/sda2)=-1 as stat64() failed
generic_get_mntinfo(devname=[/dev/sda2]): entry(/proc/mounts): col_dev=[nfsd], col_mnt=[/proc/fs/nfs], col_fs=[nfsd], col_opt=[rw,relatime]
devcmp(nfsd, /dev/sda2)=-1 as stat64() failed
devcmp(nfsd, /dev/sda2)=-1
generic_get_spacestats(nfsd, /proc/fs/nfs, ...)=-1
devcmp(nfsd, /dev/sda2)=-1 as stat64() failed
generic_get_mntinfo(devname=[/dev/sda2]): entry(/proc/mounts): col_dev=[/dev/sdc1], col_mnt=[/data3], col_fs=[ext3], col_opt=[rw,relatime,errors=continue,barrier=0,data=ordered]
devcmp(/dev/sdc1, /dev/sda2)=1
devcmp(/dev/sdc1, /dev/sda2)=1
generic_get_spacestats(/dev/sdc1, /data3, ...)=0
devcmp(/dev/sdc1, /dev/sda2)=1
generic_get_mntinfo(devname=[/dev/sda2]): entry(/proc/mounts): col_dev=[win7:/data9], col_mnt=[/data9], col_fs=[nfs], col_opt=[rw,relatime,vers=3,rsize=131072,wsize=131072,namlen=255,hard,proto=tcp,timeo=600,retrans=2,sec=sys,mountaddr=192.168.0.14,mount]
devcmp(win7:/data9, /dev/sda2)=-1 as stat64() failed
devcmp(win7:/data9, /dev/sda2)=-1
generic_get_spacestats(win7:/data9, /data9, ...)=-1
devcmp(win7:/data9, /dev/sda2)=-1 as stat64() failed
generic_get_mntinfo(devname=[/dev/sda2])=-1
filesys.c#219,generic_mount(): partition [/dev/sda2] cannot be mounted on [/tmp/fsa/20101202-215820-00] as [ext3] with options [user_xattr,acl]
oper_save.c#1032,filesystem_mount_partition(): cannot mount partition [/dev/sda2]: filesystem may not be supported by either fsarchiver or the kernel.
removed /backuphost/xxxx-rootfs-201011182135.fsa
[email protected]:/var/tmp/fsarchiver-0.6.11-debug01#

1)
[email protected]:/var/tmp/fsarchiver-0.6.11-debug01# ls -l /dev/root /dev/sda*
/bin/ls: cannot access /dev/root: No such file or directory
brw-rw---- 1 root disk 8, 0 Nov 26 09:14 /dev/sda
brw-rw---- 1 root disk 8, 1 Nov 25 17:04 /dev/sda1
brw-rw---- 1 root disk 8, 2 Nov 25 06:36 /dev/sda2
[email protected]:/var/tmp/fsarchiver-0.6.11-debug01#

2)
[email protected]:/var/tmp/fsarchiver-0.6.11-debug01# stat -L /dev/root
stat: cannot stat `/dev/root': No such file or directory
[email protected]:/var/tmp/fsarchiver-0.6.11-debug01#

3)
[email protected]:/var/tmp/fsarchiver-0.6.11-debug01# stat -L /dev/sda2
File: `/dev/sda2'
Size: 0 Blocks: 0 IO Block: 4096 block special file
Device: 5h/5d Inode: 2425 Links: 1 Device type: 8,2
Access: (0660/brw-rw----) Uid: ( 0/ root) Gid: ( 6/ disk)
Access: 2010-12-02 21:58:20.765000000 +1030
Modify: 2010-11-25 06:36:10.662000001 +1030
Change: 2010-11-25 06:36:10.662000001 +1030
Birth: -
[email protected]:/var/tmp/fsarchiver-0.6.11-debug01#

Hope that helps!

Re: fsarchiver on slackware-current

Posted: Thu Dec 02, 2010 2:11 pm
by admin
Thanks for your quick response. The problem is that the /dev/root special file does not exist on your system. As a consequence fsarchiver has no way to determine that /dev/root is the same as /dev/sda2 and then it works as if /dev/sda2 was not already mounted. A partition which is not already mounted is mounted as read-only and in that case if fails because it's already mounted as read-write.

I suspect your upgrade has broken /dev/root, so you can try to downgrade system packages (things such as the kernel package or udev) to see if you can determine which package upgrade the problem comes from, and then maybe this problem can be reported to your distribution.

I will print a more explicit message when this problem happens so that we can immediately identify that a special file listed in /proc/mounts is missing.

Can you also post a copy of your /etc/mtab ?

Thanks

Re: fsarchiver on slackware-current

Posted: Fri Dec 03, 2010 10:10 am
by myoung
1)
[email protected]:~# cat /etc/mtab
/dev/root / ext3 rw,relatime,errors=continue,barrier=0,data=ordered 0 0
proc /proc proc rw 0 0
sysfs /sys sysfs rw 0 0
usbfs /proc/bus/usb usbfs rw 0 0
/dev/sdd1 /data4 ext3 rw 0 0
/dev/sdb1 /data2 ext3 rw 0 0
ares:/data /data nfs rw,addr=192.168.0.1 0 0
ares:/data2/mp3 /mp3 nfs rw,addr=192.168.0.1 0 0
ares:/data2/pics /pics nfs rw,addr=192.168.0.1 0 0
ares:/data5/movies2 /movies2 nfs rw,addr=192.168.0.1 0 0
nfsd /proc/fs/nfs nfsd rw 0 0
/dev/sdc1 /data3 ext3 rw 0 0

2)
It seems that Slackware has used /dev/root for a while now but somehow it has only just bitten me.
I saw posts about /dev/root dating back to 2008.
I did an install of Slackware using -current on a formatted drive and it uses /dev/root so I guess it is here to stay.
I will continue to use Slackware, I started on version 1.0 with floppy disks I slowly and painfully downloaded over a 1200 baud modem line, it is what I know really well, and Fsarchiver because I think it is a really good, simple, straight forward backup/restore program.
I use it to backup the root file system before I do every Slackware update/upgrade and given that I keep up with -current that is almost weekly. I have rolled back and waited a while until things settle several times now using Fsarchiver. It also allow me to clone computers for testing.

3) Work around number one:
I guess I will go with the work around I found that allows fsarchiver to work for me:
mount -o defaults,user_xattr,acl /dev/sda2 /mnt/tmp
fsarchiver ...
umount /mnt/tmp

4) Work around number two:
# include these two lines in rc.local
cd /dev
ln -s /dev/sda2 root
...
# backup rootfs
fsarchiver savefs -A -a -z 3 -s 4300 /backuphost/xxxxx.fsa /dev/root

5)
I'm happy!, I have a solution, two solutions really!!!

Thanks Heaps

Re: fsarchiver on slackware-current

Posted: Sun Dec 05, 2010 9:41 am
by admin
1) Yes we have two workarounds, which is good. But I would like to have a better solution for other users who will have that problem. It sounds /etc/mtab also mentions /dev/root instead of /dev/sda2 so it won't help. What about /proc/self/mountinfo ? It may be different with that one, could you put a copy here ?

2) I have made a minor modification to show a warning when a device listed in /proc/mounts does not exists. It does not fix the problem but it will be easier to identify the problem the next time. Could you test that new debugging version to check that the warnings are ok ?
http://beta.fsarchiver.org/fsarchiver-0 ... 02.tar.bz2

Many thanks

Re: fsarchiver on slackware-current

Posted: Sun Dec 05, 2010 10:59 am
by admin
I think I have found a quite good solution. fsarchiver will do an extra thing to see if the device we are working on is the root device. It just has to compare the
stat.st_rdev of "/dev/sda2" with the stat.st_dev of "/" returned by the stat64 function. If this is the same thing, it means the current device is the root filesystem, and then we will consider the "/" entry instead of the "/dev/sda2" entry in "/proc/mounts".

Can you test this new debugging version ? Of course the manual workarounds must not be used ("/dev/root" must not exist in "/dev/") to be sure the fix actually works.
http://beta.fsarchiver.org/fsarchiver-0 ... 03.tar.bz2

Many thanks

Re: fsarchiver on slackware-current

Posted: Tue Dec 07, 2010 8:28 am
by myoung
Some files missing from:
http://beta.fsarchiver.org/fsarchiver-0 ... 03.tar.bz2
but only configure and Makefile.in, nothing with .c or .h
so I copied the missing files from debug01 then configured and complied
Unfortunately it looks like the same error:

[email protected]:/var/tmp/fsarchiver-0.6.11-debug03# ./src/fsarchiver savefs -A -a -z 3 -s 4300 /data4/mytest.fsa /dev/sda2
Archive will be split into volumes of 4508876800 bytes (4.20 GB)
filesys.c#245,generic_mount(): partition [/dev/sda2] cannot be mounted on [/tmp/fsa/20101207-183838-00] as [ext3] with options [user_xattr,acl]
oper_save.c#1032,filesystem_mount_partition(): cannot mount partition [/dev/sda2]: filesystem may not be supported by either fsarchiver or the kernel.
removed /data4/mytest.fsa

[email protected]:/var/tmp/fsarchiver-0.6.11-debug03# strace -o /var/tmp/fsarchiver.log ./src/fsarchiver savefs -A -a -z 3 -s 4300 /data4/mytest.fsa /dev/sda2

execve("./src/fsarchiver", ["./src/fsarchiver", "savefs", "-A", "-a", "-z", "3", "-s", "4300", "/data4/mytest.fsa", "/dev/sda2"], [/* 60 vars */]) = 0
brk(0) = 0x807c000
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xb77d6000
access("/etc/ld.so.preload", R_OK) = -1 ENOENT (No such file or directory)
open("/etc/ld.so.cache", O_RDONLY) = 3
fstat64(3, {st_mode=S_IFREG|0644, st_size=153177, ...}) = 0
mmap2(NULL, 153177, PROT_READ, MAP_PRIVATE, 3, 0) = 0xb77b0000
close(3) = 0
open("/lib/libpthread.so.0", O_RDONLY) = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\360J\0\0004\0\0\0"..., 512) = 512
fstat64(3, {st_mode=S_IFREG|0755, st_size=117379, ...}) = 0
mmap2(NULL, 98816, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0xb7797000
mmap2(0xb77ac000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x14) = 0xb77ac000
mmap2(0xb77ae000, 4608, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0xb77ae000
close(3) = 0
open("/lib/librt.so.1", O_RDONLY) = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\240\30\0\0004\0\0\0"..., 512) = 512
fstat64(3, {st_mode=S_IFREG|0755, st_size=38541, ...}) = 0
mmap2(NULL, 33360, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0xb778e000
mmap2(0xb7795000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x6) = 0xb7795000
close(3) = 0
open("/lib/liblzma.so.5", O_RDONLY) = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\0\34\0\0004\0\0\0"..., 512) = 512
fstat64(3, {st_mode=S_IFREG|0755, st_size=147910, ...}) = 0
mmap2(NULL, 132116, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0xb776d000
mmap2(0xb778d000, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x20) = 0xb778d000
close(3) = 0
open("/lib/libblkid.so.1", O_RDONLY) = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0P9\0\0004\0\0\0"..., 512) = 512
fstat64(3, {st_mode=S_IFREG|0755, st_size=122096, ...}) = 0
mmap2(NULL, 120812, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0xb774f000
mmap2(0xb776b000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x1c) = 0xb776b000
close(3) = 0
open("/lib/libuuid.so.1", O_RDONLY) = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\0\r\0\0004\0\0\0"..., 512) = 512
fstat64(3, {st_mode=S_IFREG|0755, st_size=11408, ...}) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xb774e000
mmap2(NULL, 14168, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0xb774a000
mmap2(0xb774d000, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x2) = 0xb774d000
close(3) = 0
open("/usr/lib/libz.so.1", O_RDONLY) = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0000\26\0\0004\0\0\0"..., 512) = 512
fstat64(3, {st_mode=S_IFREG|0755, st_size=77096, ...}) = 0
mmap2(NULL, 79884, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0xb7736000
mmap2(0xb7749000, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x12) = 0xb7749000
close(3) = 0
open("/lib/libbz2.so.1", O_RDONLY) = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\200\17\0\0004\0\0\0"..., 512) = 512
fstat64(3, {st_mode=S_IFREG|0755, st_size=70360, ...}) = 0
mmap2(NULL, 69160, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0xb7725000
mmap2(0xb7735000, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x10) = 0xb7735000
close(3) = 0
open("/usr/lib/liblzo2.so.2", O_RDONLY) = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\340\36\0\0004\0\0\0"..., 512) = 512
fstat64(3, {st_mode=S_IFREG|0755, st_size=136728, ...}) = 0
mmap2(NULL, 130136, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0xb7705000
mmap2(0xb7724000, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x1e) = 0xb7724000
close(3) = 0
open("/lib/libgcrypt.so.11", O_RDONLY) = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\240F\0\0004\0\0\0"..., 512) = 512
fstat64(3, {st_mode=S_IFREG|0755, st_size=469804, ...}) = 0
mmap2(NULL, 473388, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0xb7691000
mmap2(0xb7702000, 12288, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x70) = 0xb7702000
close(3) = 0
open("/lib/libgpg-error.so.0", O_RDONLY) = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\20\6\0\0004\0\0\0"..., 512) = 512
fstat64(3, {st_mode=S_IFREG|0755, st_size=11748, ...}) = 0
mmap2(NULL, 14696, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0xb768d000
mmap2(0xb7690000, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x2) = 0xb7690000
close(3) = 0
open("/lib/libc.so.6", O_RDONLY) = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\300m\1\0004\0\0\0"..., 512) = 512
fstat64(3, {st_mode=S_IFREG|0755, st_size=1646965, ...}) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xb768c000
mmap2(NULL, 1448360, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0xb752a000
mprotect(0xb7685000, 4096, PROT_NONE) = 0
mmap2(0xb7686000, 12288, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x15b) = 0xb7686000
mmap2(0xb7689000, 10664, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0xb7689000
close(3) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xb7529000
set_thread_area({entry_number:-1 -> 6, base_addr:0xb7529930, limit:1048575, seg_32bit:1, contents:0, read_exec_only:0, limit_in_pages:1, seg_not_present:0, useable:1}) = 0
mprotect(0xb7686000, 8192, PROT_READ) = 0
mprotect(0xb7795000, 4096, PROT_READ) = 0
mprotect(0xb77ac000, 4096, PROT_READ) = 0
mprotect(0xb77f4000, 4096, PROT_READ) = 0
munmap(0xb77b0000, 153177) = 0
set_tid_address(0xb7529998) = 22077
set_robust_list(0xb75299a0, 0xc) = 0
futex(0xbf8aa6f0, FUTEX_WAKE_PRIVATE, 1) = 0
futex(0xbf8aa6f0, FUTEX_WAIT_BITSET_PRIVATE|FUTEX_CLOCK_REALTIME, 1, NULL, bf8aa700) = -1 EAGAIN (Resource temporarily unavailable)
rt_sigaction(SIGRTMIN, {0xb779b520, [], SA_SIGINFO}, NULL, 8) = 0
rt_sigaction(SIGRT_1, {0xb779b5a0, [], SA_RESTART|SA_SIGINFO}, NULL, 8) = 0
rt_sigprocmask(SIG_UNBLOCK, [RTMIN RT_1], NULL, 8) = 0
getrlimit(RLIMIT_STACK, {rlim_cur=8192*1024, rlim_max=RLIM_INFINITY}) = 0
uname({sys="Linux", node="zeus", ...}) = 0
brk(0) = 0x807c000
brk(0x809d000) = 0x809d000
access("/etc/gcrypt/fips_enabled", F_OK) = -1 ENOENT (No such file or directory)
open("/proc/sys/crypto/fips_enabled", O_RDONLY) = 3
fstat64(3, {st_mode=S_IFREG|0444, st_size=0, ...}) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xb77d5000
read(3, "0\n", 1024) = 2
close(3) = 0
munmap(0xb77d5000, 4096) = 0
write(2, "Archive will be split into volum"..., 65) = 65
geteuid32() = 0
rt_sigprocmask(SIG_SETMASK, [INT TERM], NULL, 8) = 0
gettimeofday({1291710189, 532017}, NULL) = 0
stat64("/dev/sda2", {st_mode=S_IFBLK|0660, st_rdev=makedev(8, 2), ...}) = 0
mmap2(NULL, 8388608, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS|MAP_STACK, -1, 0) = 0xb6d29000
mprotect(0xb6d29000, 4096, PROT_NONE) = 0
clone(child_stack=0xb7528444, flags=CLONE_VM|CLONE_FS|CLONE_FILES|CLONE_SIGHAND|CLONE_THREAD|CLONE_SYSVSEM|CLONE_SETTLS|CLONE_PARENT_SETTID|CLONE_CHILD_CLEARTID, parent_tidptr=0xb7528bd8, {entry_number:6, base_addr:0xb7528b70, limit:1048575, seg_32bit:1, contents:0, read_exec_only:0, limit_in_pages:1, seg_not_present:0, useable:1}, child_tidptr=0xb7528bd8) = 22078
mmap2(NULL, 8388608, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS|MAP_STACK, -1, 0) = 0xb6529000
mprotect(0xb6529000, 4096, PROT_NONE) = 0
clone(child_stack=0xb6d28444, flags=CLONE_VM|CLONE_FS|CLONE_FILES|CLONE_SIGHAND|CLONE_THREAD|CLONE_SYSVSEM|CLONE_SETTLS|CLONE_PARENT_SETTID|CLONE_CHILD_CLEARTID, parent_tidptr=0xb6d28bd8, {entry_number:6, base_addr:0xb6d28b70, limit:1048575, seg_32bit:1, contents:0, read_exec_only:0, limit_in_pages:1, seg_not_present:0, useable:1}, child_tidptr=0xb6d28bd8) = 22079
gettimeofday({1291710189, 542319}, NULL) = 0
gettimeofday({1291710189, 542469}, NULL) = 0
open("/etc/localtime", O_RDONLY) = 3
fstat64(3, {st_mode=S_IFREG|0644, st_size=2202, ...}) = 0
fstat64(3, {st_mode=S_IFREG|0644, st_size=2202, ...}) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xb77d5000
read(3, "TZif2\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\4\0\0\0\4\0\0\0\0"..., 4096) = 2202
_llseek(3, -30, [2172], SEEK_CUR) = 0
read(3, "\nCST-9:30CST,M10.1.0,M4.1.0/3\n", 4096) = 30
close(3) = 0
munmap(0xb77d5000, 4096) = 0
uname({sys="Linux", node="zeus", ...}) = 0
stat64("/dev/sda2", {st_mode=S_IFBLK|0660, st_rdev=makedev(8, 2), ...}) = 0
stat64("/", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
open("/proc/mounts", O_RDONLY|O_LARGEFILE) = 3
fstat64(3, {st_mode=S_IFREG|0444, st_size=0, ...}) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xb77d5000
read(3, "rootfs / rootfs rw 0 0\n/dev/root"..., 1024) = 1024
stat64("rootfs", 0xbf6c2a8c) = -1 ENOENT (No such file or directory)
stat64("/dev/root", 0xbf6c2a8c) = -1 ENOENT (No such file or directory)
stat64("/dev/sdd1", {st_mode=S_IFBLK|0660, st_rdev=makedev(8, 49), ...}) = 0
stat64("/dev/sda2", {st_mode=S_IFBLK|0660, st_rdev=makedev(8, 2), ...}) = 0
stat64("/dev/sdb1", {st_mode=S_IFBLK|0660, st_rdev=makedev(8, 17), ...}) = 0
stat64("/dev/sda2", {st_mode=S_IFBLK|0660, st_rdev=makedev(8, 2), ...}) = 0
read(3, "e=131072,namlen=255,hard,proto=t"..., 1024) = 483
stat64("/dev/sdc1", {st_mode=S_IFBLK|0660, st_rdev=makedev(8, 33), ...}) = 0
stat64("/dev/sda2", {st_mode=S_IFBLK|0660, st_rdev=makedev(8, 2), ...}) = 0
read(3, "", 1024) = 0
close(3) = 0
munmap(0xb77d5000, 4096) = 0
stat64("", 0xbf6c3b70) = -1 ENOENT (No such file or directory)
mkdir("", 0755) = -1 ENOENT (No such file or directory)
stat64("/tmp", {st_mode=S_IFDIR|S_ISVTX|0777, st_size=4096, ...}) = 0
stat64("/tmp/fsa", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
stat64("/tmp/fsa/20101207-185309-00", 0xbf6c3b70) = -1 ENOENT (No such file or directory)
mkdir("/tmp/fsa/20101207-185309-00", 0755) = 0
open("/dev/sda2", O_RDONLY|O_LARGEFILE) = 3
lseek(3, 1024, SEEK_SET) = 1024
read(3, "\0\300H\0\260=\221\0\25C\7\0\326\231y\0\t8E\0\0\0\0\0\2\0\0\0\2\0\0\0"..., 1024) = 1024
lseek(3, 4096, SEEK_SET) = 4096
read(3, "\4\4\0\0\5\4\0\0\6\4\0\0\0\0\365?\2\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 12288) = 12288
close(3) = 0
open("/dev/sda2", O_RDONLY|O_LARGEFILE) = 3
lseek(3, 1024, SEEK_SET) = 1024
read(3, "\0\300H\0\260=\221\0\25C\7\0\326\231y\0\t8E\0\0\0\0\0\2\0\0\0\2\0\0\0"..., 1024) = 1024
lseek(3, 4096, SEEK_SET) = 4096
read(3, "\4\4\0\0\5\4\0\0\6\4\0\0\0\0\365?\2\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 12288) = 12288
close(3) = 0
open("/dev/sda2", O_RDONLY|O_LARGEFILE) = 3
lseek(3, 1024, SEEK_SET) = 1024
read(3, "\0\300H\0\260=\221\0\25C\7\0\326\231y\0\t8E\0\0\0\0\0\2\0\0\0\2\0\0\0"..., 1024) = 1024
lseek(3, 4096, SEEK_SET) = 4096
read(3, "\4\4\0\0\5\4\0\0\6\4\0\0\0\0\365?\2\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 12288) = 12288
close(3) = 0
mount("/dev/sda2", "/tmp/fsa/20101207-185309-00", "ext3", MS_RDONLY|MS_NOATIME|MS_NODIRATIME, "user_xattr,acl") = -1 EBUSY (Device or resource busy)
write(2, "filesys.c#245,generic_mount(): p"..., 144) = 144
open("/dev/sda2", O_RDONLY|O_LARGEFILE) = 3
lseek(3, 1024, SEEK_SET) = 1024
read(3, "\0\300H\0\260=\221\0\25C\7\0\326\231y\0\t8E\0\0\0\0\0\2\0\0\0\2\0\0\0"..., 1024) = 1024
lseek(3, 4096, SEEK_SET) = 4096
read(3, "\4\4\0\0\5\4\0\0\6\4\0\0\0\0\365?\2\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 12288) = 12288
close(3) = 0
open("/dev/sda2", O_RDONLY|O_LARGEFILE) = 3
_llseek(3, 65536, [65536], SEEK_SET) = 0
read(3, "\20\200\0\0\20\200\1\0\20\200\2\0\20\200\3\0\20\200\4\0\20\200\f\0\20\200\r\0\20\200\30\0"..., 204) = 204
close(3) = 0
open("/dev/sda2", O_RDONLY|O_LARGEFILE) = 3
_llseek(3, 65536, [65536], SEEK_SET) = 0
read(3, "\20\200\0\0\20\200\1\0\20\200\2\0\20\200\3\0\20\200\4\0\20\200\f\0\20\200\r\0\20\200\30\0"..., 60) = 60
close(3) = 0
open("/dev/sda2", O_RDONLY|O_LARGEFILE) = 3
_llseek(3, 65536, [65536], SEEK_SET) = 0
read(3, "\20\200\0\0\20\200\1\0\20\200\2\0\20\200\3\0\20\200\4\0\20\200\f\0\20\200\r\0\20\200\30\0"..., 2859) = 2859
close(3) = 0
open("/dev/sda2", O_RDONLY|O_LARGEFILE) = 3
read(3, "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 208) = 208
close(3) = 0
open("/dev/sda2", O_RDONLY|O_LARGEFILE) = 3
_llseek(3, 32768, [32768], SEEK_SET) = 0
read(3, "\10\200\0\0\10\200\1\0\10\200\2\0\10\200\3\0\10\200\4\0\10\200\f\0\10\200\r\0\10\200\30\0"..., 184) = 184
close(3) = 0
open("/dev/sda2", O_RDONLY|O_LARGEFILE) = 3
read(3, "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 16384) = 16384
close(3) = 0
write(2, "oper_save.c#1032,filesystem_moun"..., 151) = 151
futex(0x807bca0, FUTEX_CMP_REQUEUE_PRIVATE, 1, 2147483647, 0x807bc84, 6) = 2
futex(0xb6d28bd8, FUTEX_WAIT, 22079, NULL) = 0
unlink("/data4/mytest.fsa") = 0
write(2, "removed /data4/mytest.fsa\n", 26) = 26
close(-1) = -1 EBADF (Bad file descriptor)
exit_group(1) = ?

Hope that helps!
PS Sorry for the delay but I did not see an email alerting me there was a new post. I will check each day from now on.

Re: fsarchiver on slackware-current

Posted: Tue Dec 07, 2010 1:32 pm
by admin
Thanks for your new test.

Sorry for the missing scripts. They can be recreated this way:
./autogen.sh && ./configure && make

I will probably prepare a new test version to print more details.

Thanks