Re: undo make-bcache (was: Re: Can't mount an encrypted backing device)

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

 



On Sat, Jan 18, 2020 at 9:35 AM Coly Li <colyli@xxxxxxx> wrote:
>
> On 2020/1/18 8:22 下午, Clodoaldo Neto wrote:
> > On Sat, Jan 18, 2020 at 7:54 AM Clodoaldo Neto
> > <clodoaldo.pinto.neto@xxxxxxxxx> wrote:
> >>
> >> On Thu, Jan 16, 2020 at 9:59 PM Coly Li <colyli@xxxxxxx> wrote:
> >>>
> >>> On 2020/1/17 5:52 上午, Clodoaldo Neto wrote:
> >>>>
> >>>> Em seg, 13 de jan de 2020 11:19, Coly Li <colyli@xxxxxxx
> >>>> <mailto:colyli@xxxxxxx>> escreveu:
> >>>>>
> >>>>> On 2020/1/13 8:44 下午, Jens-U. Mozdzen wrote:
> >>>>>> Hi Coly,
> >>>>>>
> >>>>>> jumping in here, because I was looking for a way to revert from bcache
> >>>>>> to plain device:
> >>>>>>
> >>>>>> Zitat von Coly Li <colyli@xxxxxxx <mailto:colyli@xxxxxxx>>:
> >>>>>>> The super block location of the backing disk is occupied by bcache. You
> >>>>>>> cannot mount the file system directly from the backing disk which is
> >>>>>>> formated as bcache backing device [...] (bcache offset all I/Os on
> >>>>>>> bcache device 4KB behind the requesting
> >>>>>>> LBA on backing disk).
> >>>>>>
> >>>>>> Assuming that no caching device is associated with a backing device (so
> >>>>>> the backing device is "clean" as in "containing all data blocks with the
> >>>>>> current content"), could one convert the content of a backing device to
> >>>>>> a "non-bcached device" by removing the first 4096 octets of the backing
> >>>>>> device content?
> >>>>>>
> >>>>>> Something like "dd if=backingdev of=newdev skip_bytes=4096 ..."?
> >>>>>
> >>>>> Hi Jens-U,
> >>>>>
> >>>>> you may try dmsetup to setup a linear device mapper target, and the map
> >>>>> table just skipping the first 4KB (bcache superblock area). If you are
> >>>>> lucky, I mean the real file system is not corrupted, the created device
> >>>>> mapper target can be mounted directly.
> >>>>
> >>>>
> >>>> I'm trying dmsetup but it does not accept anything other than 0 and 0
> >>>> at the beginning and end of the table:
> >>>>
> >>>> # echo '0 3774578672 linear /dev/mapper/backing-device 8' | dmsetup
> >>>> create dmb
> >>>> device-mapper: reload ioctl on dmb  failed: Invalid argument
> >>>> Command failed.
> >>>
> >>> The above line should work, if 3774578672 is a correct size number in
> >>> sectors.
> >>
> >> I took it from the original map:
> >>
> >> # dmsetup table /dev/mapper/backing-device
> >> 0 3774578672 crypt aes-xts-plain64
> >> :64:logon:cryptsetup:7e2c0b40-8dec-4b13-8d00-b53b55160775-d0 0 251:0
> >> 32768
> >
> > It works like this:
> >
> > # echo '0 3774578664 linear /dev/mapper/backing-device 8' | dmsetup create dmb
> >
> > But then I can't mount it:
> >
> > # mount /dev/mapper/dmb /r
> > mount: /r: wrong fs type, bad option, bad superblock on
> > /dev/mapper/dmb, missing codepage or helper program, or other error.
>
> It might be my fault, from bcache-tools, it seems the offset is
> BDEV_DATA_START_DEFAULT (16 sectors). How about:
> # echo '0 3774578656 linear /dev/mapper/backing-device 16' | dmsetup
> create dmb

Still no luck

# echo '0 3774578656 linear /dev/mapper/backing-device 16' | dmsetup create dmb
# mount /dev/mapper/dmb /r
mount: /r: wrong fs type, bad option, bad superblock on
/dev/mapper/dmb, missing codepage or helper program, or other error.

Clodoaldo
>
>
> --
>
> Coly Li




[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Linux ARM Kernel]     [Linux Filesystem Development]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Security]     [Bugtraq]     [Linux OMAP]     [Linux MIPS]     [ECOS]     [Asterisk Internet PBX]     [Linux API]

  Powered by Linux