Re: btrfs doesn't format eMMC if previous filesystem is ext4

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Fri, Dec 26, 2014 at 03:24:59PM +0000, Ankur Tank wrote:
> I wanted to test btrfs on the eMMC of beaglebone black based custom board.
> Precondition: eMMC is formatted with ext4 filesystem
> Use case:
>         Format eMMC with mkfs.btrfs  -L  <label>  <dev>
> Result:
>         Mkfs.btrfs denies formatting eMMC because its existing filesystem
> 
> # mkfs.btrfs -L "1storage" /dev/mmcblk0p2
> /dev/mmcblk0p2 appears to contain an existing filesystem (ext4).
> Error: Use the -f option to force overwrite.
> 
> If I add "-f" its possible to format the eMMC.

It seems to be a feature.  mkfs.btrfs will test the device with libblkid
to see if there is a filesystem present to prevent administrator mistakes.
If libblkid can identify and device, it will prevent format without -f.

If you're doing an automated script, you need the -f.  libblkid isn't
particularly reliable and can false-positive on random data (e.g. the
HFS module can detect a filesystem that is not there).  If you're doing
tests that involve reformatting the filesystem in a loop, you need the -f.

> # mkfs.btrfs -f -L "1storage" /dev/mmcblk0p2
> Detected a SSD, turning off metadata duplication.  Mkfs with -m dup if you want to force metadata duplication.
> Btrfs v3.17
> See http://btrfs.wiki.kernel.org for more information.
> 
> Performing full device TRIM (1.72GiB) ...
> Turning ON incompat feature 'extref': increased hardlink limit per file to 65536
> [273917.692896] btrfs: device label 1storage devid 1 transid 3 /dev/mmcblk0p2
> fs created label 1storage on /dev/mmcblk0p2
>         nodesize 16384 leafsize 16384 sectorsize 4096 size 1.72GiB
> 
> I had downloaded debian package from following link
> https://packages.debian.org/sid/armhf/btrfs-tools/download
> 
> Is it a bug ? or I am missing something ?

If your device is small or solid-state, btrfs will change the default
options (mixed-metadata, no duplicate metadata).

"extref" is a feature that enables large numbers of hardlinks to a
single file.  You can leave it enabled-it's unlikely your devices
will ever see a kernel old enough that it's not compatible.

Attachment: signature.asc
Description: Digital signature


[Index of Archives]     [Linux Filesystem Development]     [Linux NFS]     [Linux NILFS]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux