On 07/06/16 17:20, Hugo Mills wrote:
> On Thu, Jul 07, 2016 at 12:16:01AM +0900, Wang Shilong wrote:
>> On Wed, Jul 6, 2016 at 10:35 PM, Holger Hoffstätte
>> <hol...@applied-asynchrony.com> wrote:
>>> On 07/06/16 14:25, Wang Shilong wrote:
>>>> 'btrfs file du' is a very useful tool to watch my system
>>>> file usage with snapshot aware.
>>>>
>>>> when trying to run following commands:
>>>> [root@localhost btrfs-progs]# btrfs file du /
>>>>      Total   Exclusive  Set shared  Filename
>>>> ERROR: Failed to lookup root id - Inappropriate ioctl for device
>>>> ERROR: cannot check space of '/': Unknown error -1
>>>>
>>>> and My Filesystem looks like this:
>>>> [root@localhost btrfs-progs]# df -Th
>>>> Filesystem     Type      Size  Used Avail Use% Mounted on
>>>> devtmpfs       devtmpfs   16G     0   16G   0% /dev
>>>> tmpfs          tmpfs      16G  368K   16G   1% /dev/shm
>>>> tmpfs          tmpfs      16G  1.4M   16G   1% /run
>>>> tmpfs          tmpfs      16G     0   16G   0% /sys/fs/cgroup
>>>> /dev/sda3      btrfs      60G   19G   40G  33% /
>>>> tmpfs          tmpfs      16G  332K   16G   1% /tmp
>>>> /dev/sdc       btrfs     2.8T  166G  1.7T   9% /data
>>>> /dev/sda2      xfs       2.0G  452M  1.6G  23% /boot
>>>> /dev/sda1      vfat      1.9G   11M  1.9G   1% /boot/efi
>>>> tmpfs          tmpfs     3.2G   24K  3.2G   1% /run/user/1000
>>>>
>>>> So I installed Btrfs as my root partition, but boot partition
>>>> can be other fs.
>>>>
>>>> We can Let btrfs tool aware of this is not a btrfs file or
>>>> directory and skip those files, so that someone like me
>>>> could just run 'btrfs file du /' to scan all btrfs filesystems.
>>>>
>>>> After patch, it will look like:
>>>>    Total   Exclusive  Set shared  Filename
>>>> skipping not btrfs dir/file: boot
>>>> skipping not btrfs dir/file: dev
>>>> skipping not btrfs dir/file: proc
>>>> skipping not btrfs dir/file: run
>>>> skipping not btrfs dir/file: sys
>>>>      0.00B       0.00B           -  //root/.bash_logout
>>>>      0.00B       0.00B           -  //root/.bash_profile
>>>>      0.00B       0.00B           -  //root/.bashrc
>>>>      0.00B       0.00B           -  //root/.cshrc
>>>>      0.00B       0.00B           -  //root/.tcshrc
>>>>
>>>> This works for me to analysis system usage and analysis
>>>> performaces.
>>>
>>> This is great, but can we please skip the "skipping .." messages?
>>> Maybe it's just me but I really don't see the value of printing them
>>> when they don't contribute to the result.
>>> They also mess up the display. :)
>>
>> I don't have a taste whether it needed or not, because it is somehow
>> useful to let users know some files/directories skipped....

When you run "find /path -type d" you don't get messages for all the
things you just didn't want to find either.

>    At the absolute minimum, I think that these messages should go to
> stderr (like du does when it deosn't have permissions), and should go
> away with -q. They're still irritating, but at least you can get rid
> of them easily.

If anything this should require a --verbose, not the other way
around. Maybe instead of breaking the output just indicate the
special status via "-- --" values, or default to 0.00?
Still, we're explicitly only interested in btrfs stuff and not
anything else, so printing non-information can only yield noise.

This is very much orthogonal to not printing anything after an
otherwise successful command execution.

-h


Attachment: signature.asc
Description: OpenPGP digital signature

Reply via email to