Re: btrfs defrag problem
From: ching <hidden>
Date: 2012-10-31 00:14:18
On 10/30/2012 08:08 PM, cwillu wrote:
On Tue, Oct 30, 2012 at 5:47 AM, ching [off-list ref] wrote:quoted
Hi all, I try to defrag my btrfs root partition (run by root privilege) find / -type f -o -type d -print0 | xargs --null --no-run-if-empty btrfs filesystem defragment -t $((32*1024*1024)) 1. This kind of error messages is prompted: failed to open /bin/bash open:: Text file busy total 1 failures failed to open /lib64/ld-2.15.so open:: Text file busy total 1 failures failed to open /sbin/agetty open:: Text file busy failed to open /sbin/btrfs open:: Text file busy failed to open /sbin/dhclient open:: Text file busy failed to open /sbin/init open:: Text file busy failed to open /sbin/udevd It seems that locked files cannot be defragged, is it expected behaviour?I can't reproduce that behaviour here, although maybe you're running an older kernel with some bug that's since been fixed?
I am running Gentoo with Kernel 3.6.3 x64, btrfs-progs git version my root is mounted with noatime,space_cache,inode_cache,metadata_ratio=15,max_inline=0,ssd_spread
quoted
2. Btrfs Wiki mentions that defrag directory will defrag metadata, is symlink/hardlink considered as metadata? P.S. inline data is already disabled by "max_inline=0"Well, that's a silly thing to do, causing every small file to take up a separate 4kb block rather than its size * 2, and requiring extra seeks to read/write them (i.e., if you have a million 10 byte files, they'll now take up 4GB instead of 20MB).
this is off-topic to my question.
quoted
3. Is any possible to online defrag a btrfs partition without hindered by mount point/polyinstantied directories?If you're asking if you can defrag an unmounted btrfs, not at this time. It's possible in principle, nobody has cared enough to implement it yet.