mail archive of the rauc mailing list
 help / color / mirror / Atom feed
* [RAUC] Create bundles from command line outside of yocto?
@ 2021-05-25  2:54 Brian Hutchinson
  2021-05-25  6:56 ` Jan Lübbe
  0 siblings, 1 reply; 9+ messages in thread
From: Brian Hutchinson @ 2021-05-25  2:54 UTC (permalink / raw)
  To: rauc


[-- Attachment #1.1: Type: text/plain, Size: 627 bytes --]

Hi,

I've been looking at Leon Anavi's RAUC Rpi4 example.  He's got his own
meta-rauc layer where bundles are created in Yocto recipe ... but I need to
create bundles with command line outside of Yocto system.

I've basically got tar files for kernel image/dtb, rootfs and appfs.  Want
to make a bundle of these three tar files that go to slots that look like:

RAUC slot A:
/dev/mmcblk2gp0p1 (kernel/dtb)
/dev/mmcblk2gp0p2 (rootfs)
/dev/mmcblk2p1 (appfs)

RAUC slot B:
/dev/mmcblk2gp1p1 (kernel/dtb)
/dev/mmcblk2gp1p2 (rootfs)
/dev/mmcblk2p2 (appfs)

Are there any examples on how to do this via command line?

Thanks,

Brian

[-- Attachment #1.2: Type: text/html, Size: 1163 bytes --]

[-- Attachment #2: Type: text/plain, Size: 66 bytes --]

_______________________________________________
RAUC mailing list

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [RAUC] Create bundles from command line outside of yocto?
  2021-05-25  2:54 [RAUC] Create bundles from command line outside of yocto? Brian Hutchinson
@ 2021-05-25  6:56 ` Jan Lübbe
  2021-06-15  4:17   ` Brian Hutchinson
  0 siblings, 1 reply; 9+ messages in thread
From: Jan Lübbe @ 2021-05-25  6:56 UTC (permalink / raw)
  To: Brian Hutchinson, rauc

On Mon, 2021-05-24 at 22:54 -0400, Brian Hutchinson wrote:
Hi,

I've been looking at Leon Anavi's RAUC Rpi4 example.  He's got his own meta-rauc
layer where bundles are created in Yocto recipe ... but I need to create bundles
with command line outside of Yocto system.

I've basically got tar files for kernel image/dtb, rootfs and appfs.  Want to
make a bundle of these three tar files that go to slots that look like:


RAUC slot A:
/dev/mmcblk2gp0p1 (kernel/dtb)
/dev/mmcblk2gp0p2 (rootfs)
/dev/mmcblk2p1 (appfs)

RAUC slot B:
/dev/mmcblk2gp1p1 (kernel/dtb)
/dev/mmcblk2gp1p2 (rootfs)
/dev/mmcblk2p2 (appfs)

This is not fully correct. Each of these is a slot.


Are there any examples on how to do this via command line?

The on-target-side (system.conf) ist the same as with yocto.

To create the bundle, you need to write the manifest you self and place it
together with your filesystem archives. The relevant documentation is
https://rauc.readthedocs.io/en/latest/using.html#creating-bundles and the
example & reference linked from there.

So your manifest might look like:
[update]
compatible=rauc-example
version=2021.05-1

[bundle]
format=verity

[image.kernel]
filename=kernel.img

[image.rootfs]
filename=rootfs.tar

[image.appfs]
filename=appfs.tar


Best regards,
Jan

-- 
Pengutronix e.K.                           |                             |
Steuerwalder Str. 21                       | http://www.pengutronix.de/  |
31137 Hildesheim, Germany                  | Phone: +49-5121-206917-0    |
Amtsgericht Hildesheim, HRA 2686           | Fax:   +49-5121-206917-5555 |


_______________________________________________
RAUC mailing list

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [RAUC] Create bundles from command line outside of yocto?
  2021-05-25  6:56 ` Jan Lübbe
@ 2021-06-15  4:17   ` Brian Hutchinson
  2021-06-15 19:07     ` Brian Hutchinson
  0 siblings, 1 reply; 9+ messages in thread
From: Brian Hutchinson @ 2021-06-15  4:17 UTC (permalink / raw)
  To: Jan Lübbe; +Cc: rauc


[-- Attachment #1.1: Type: text/plain, Size: 1663 bytes --]

Hi Jan,

So using your manifest example and my partition scheme from earlier ...

RAUC A slots:
/dev/mmcblk2gp0p1 (kernel/dtb)
/dev/mmcblk2gp0p2 (rootfs)
/dev/mmcblk2p1 (appfs)

RAUC B slots:
/dev/mmcblk2gp1p1 (kernel/dtb)
/dev/mmcblk2gp1p2 (rootfs)
/dev/mmcblk2p2 (appfs)

On Tue, May 25, 2021 at 2:56 AM Jan Lübbe <jlu@pengutronix.de> wrote:

>
> So your manifest might look like:
> [update]
> compatible=rauc-example
> version=2021.05-1
>
> [bundle]
> format=verity
>
> [image.kernel]
> filename=kernel.img
>
> [image.rootfs]
> filename=rootfs.tar
>
> [image.appfs]
> filename=appfs.tar
>
>
> Best regards,
> Jan
>
>
>
My system.conf (using my example partition layout for earlier email) file
would look something like:

[system]
compatible=rauc-example
bootloader=uboot

[keyring]
path=/etc/rauc/ca.cert.pem

[slot.kernel.0]
device=/dev/mmcblk2gp0p1
type=vfat
parent=rootfs.0

[slot.kernel.1]
device=/dev/mmcblk2gp1p1
type=vfat
parent=rootfs.1

[slot.rootfs.0]
device=/dev/mmcblk2gp0p2
type=ext4
bootname=A

[slot.rootfs.1]
device=/dev/mmcblk2gp1p2
type=ext4
bootname=B

[slot.appfs.0]
device=/dev/mmcblk2p1
type=ext4
parent=rootfs.0

[slot.appfs.1]
device=/dev/mmcblk2p2
type=ext4
parent=rootfs.1

So I should use "parent" to tie both kernel and appfs slots to the rootfs?

And for now, the rootfs is r/w on a ext4 filesystem, but in the future it
will be a squashfs.  So once that happens would 'type=ext4' then change to
'type=raw'?

Just trying to make sure I understand how to make manifest and system.conf
map together for making bundles etc.

Regards,

Brian

[-- Attachment #1.2: Type: text/html, Size: 4418 bytes --]

[-- Attachment #2: Type: text/plain, Size: 66 bytes --]

_______________________________________________
RAUC mailing list

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [RAUC] Create bundles from command line outside of yocto?
  2021-06-15  4:17   ` Brian Hutchinson
@ 2021-06-15 19:07     ` Brian Hutchinson
  2021-06-15 21:32       ` Brian Hutchinson
  0 siblings, 1 reply; 9+ messages in thread
From: Brian Hutchinson @ 2021-06-15 19:07 UTC (permalink / raw)
  To: Jan Lübbe; +Cc: rauc

[-- Attachment #1: Type: text/plain, Size: 4310 bytes --]

On Tue, Jun 15, 2021 at 12:17 AM Brian Hutchinson <b.hutchman@gmail.com>
wrote:

> Hi Jan,
>
> So using your manifest example and my partition scheme from earlier ...
>
> RAUC A slots:
> /dev/mmcblk2gp0p1 (kernel/dtb)
> /dev/mmcblk2gp0p2 (rootfs)
> /dev/mmcblk2p1 (appfs)
>
> RAUC B slots:
> /dev/mmcblk2gp1p1 (kernel/dtb)
> /dev/mmcblk2gp1p2 (rootfs)
> /dev/mmcblk2p2 (appfs)
>
> On Tue, May 25, 2021 at 2:56 AM Jan Lübbe <jlu@pengutronix.de> wrote:
>
>>
>> So your manifest might look like:
>> [update]
>> compatible=rauc-example
>> version=2021.05-1
>>
>> [bundle]
>> format=verity
>>
>> [image.kernel]
>> filename=kernel.img
>>
>> [image.rootfs]
>> filename=rootfs.tar
>>
>> [image.appfs]
>> filename=appfs.tar
>>
>>
>> Best regards,
>> Jan
>>
>>
>>
> My system.conf (using my example partition layout for earlier email) file
> would look something like:
>
> [system]
> compatible=rauc-example
> bootloader=uboot
>
> [keyring]
> path=/etc/rauc/ca.cert.pem
>
> [slot.kernel.0]
> device=/dev/mmcblk2gp0p1
> type=vfat
> parent=rootfs.0
>
> [slot.kernel.1]
> device=/dev/mmcblk2gp1p1
> type=vfat
> parent=rootfs.1
>
> [slot.rootfs.0]
> device=/dev/mmcblk2gp0p2
> type=ext4
> bootname=A
>
> [slot.rootfs.1]
> device=/dev/mmcblk2gp1p2
> type=ext4
> bootname=B
>
> [slot.appfs.0]
> device=/dev/mmcblk2p1
> type=ext4
> parent=rootfs.0
>
> [slot.appfs.1]
> device=/dev/mmcblk2p2
> type=ext4
> parent=rootfs.1
>
> So I should use "parent" to tie both kernel and appfs slots to the rootfs?
>
> And for now, the rootfs is r/w on a ext4 filesystem, but in the future it
> will be a squashfs.  So once that happens would 'type=ext4' then change to
> 'type=raw'?
>
> Just trying to make sure I understand how to make manifest and system.conf
> map together for making bundles etc.
>
> Regards,
>
> Brian
>
>
> Now my problem is the rauc install of the bundle fails:

I'm using rauc 1.5 from Dunfell.

root@imx8mmevk:~# rauc --debug install update-mybundle.raucb
rauc-Message: 18:58:29.648: Debug log domains: 'rauc'
(rauc:2812): rauc-DEBUG: 18:58:29.655: install started
(rauc:2812): rauc-DEBUG: 18:58:29.655: input bundle:
/home/root/update-mybundle.raucb
(rauc:2812): rauc-DEBUG: 18:58:29.667: Trying to contact rauc service
installing
 0% Installing
 0% Determining slot states
20% Determining slot states done.
20% Checking bundle
20% Verifying signature
40% Verifying signature done.
40% Checking bundle done.
40% Checking manifest contents
60% Checking manifest contents done.
60% Determining target install group
80% Determining target install group done.
80% Updating slots
80% Checking slot kernel.1
83% Checking slot kernel.1 done.
83% Copying image to kernel.1
86% Copying image to kernel.1 failed.
100% Updating slots failed.
100% Installing failed.
LastError: Installation error: Failed updating slot kernel.1: failed to run
tar extract: Child process exited with code 1
idle
Installing `/home/root/update-mybundle.raucb` failed

My system.conf:

[system]
compatible=MyTarget
bootloader=uboot

[keyring]
path=/etc/rauc/ca.cert.pem

[slot.kernel.0]
device=/dev/mmcblk2gp0p1
type=vfat
parent=rootfs.0

[slot.kernel.1]
device=/dev/mmcblk2gp1p1
type=vfat
parent=rootfs.1

[slot.rootfs.0]
device=/dev/mmcblk2gp0p2
type=ext4
bootname=A

[slot.rootfs.1]
device=/dev/mmcblk2gp1p2
type=ext4
bootname=B

[slot.appfs.0]
device=/dev/mmcblk2p1
type=ext4
parent=rootfs.0

[slot.appfs.1]
device=/dev/mmcblk2p2
type=ext4
parent=rootfs.1

My manifest.rauc:

[update]
compatible=MyTarget
version=2021.06-15

[image.kernel]
sha256=045fb07d617e387e8b39426847a93f517f2af005fb65aced6a7a3028a2adad70
size=21084160
filename=mytarget-fsl-linux-5.4.114.tar.bz2

[image.rootfs]
sha256=d8b18918b7bfeec3f82d8eb454da42aca41da4fc8095cbeb52f4ebce5fb5e29c
size=169139859
filename=mytarget_yocto-3.1.7_dunfell_fslc-linux-5.4.114.tar.bz2

[image.appfs]
sha256=0a46530a2387bd1eafa0912ab00dbc4f21077578f1c0b5e7a3b051b9cc36785a
size=196
filename=mytarget-appfs.tar.bz2

mytarget-fsl-linux-5.4.114.tar.bz2 is a tar of two files (kernel and device
tree blob):  Image and imx8mm-evk.dtb

Can I not do a .tar for a vfat target slot?

Regards,

Brian

[-- Attachment #2: Type: text/html, Size: 9700 bytes --]

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [RAUC] Create bundles from command line outside of yocto?
  2021-06-15 19:07     ` Brian Hutchinson
@ 2021-06-15 21:32       ` Brian Hutchinson
  2021-06-16  5:06         ` Enrico Jörns
  0 siblings, 1 reply; 9+ messages in thread
From: Brian Hutchinson @ 2021-06-15 21:32 UTC (permalink / raw)
  To: Jan Lübbe; +Cc: rauc

[-- Attachment #1: Type: text/plain, Size: 5039 bytes --]

On Tue, Jun 15, 2021 at 3:07 PM Brian Hutchinson <b.hutchman@gmail.com>
wrote:

>
>
> On Tue, Jun 15, 2021 at 12:17 AM Brian Hutchinson <b.hutchman@gmail.com>
> wrote:
>
>> Hi Jan,
>>
>> So using your manifest example and my partition scheme from earlier ...
>>
>> RAUC A slots:
>> /dev/mmcblk2gp0p1 (kernel/dtb)
>> /dev/mmcblk2gp0p2 (rootfs)
>> /dev/mmcblk2p1 (appfs)
>>
>> RAUC B slots:
>> /dev/mmcblk2gp1p1 (kernel/dtb)
>> /dev/mmcblk2gp1p2 (rootfs)
>> /dev/mmcblk2p2 (appfs)
>>
>> On Tue, May 25, 2021 at 2:56 AM Jan Lübbe <jlu@pengutronix.de> wrote:
>>
>>>
>>> So your manifest might look like:
>>> [update]
>>> compatible=rauc-example
>>> version=2021.05-1
>>>
>>> [bundle]
>>> format=verity
>>>
>>> [image.kernel]
>>> filename=kernel.img
>>>
>>> [image.rootfs]
>>> filename=rootfs.tar
>>>
>>> [image.appfs]
>>> filename=appfs.tar
>>>
>>>
>>> Best regards,
>>> Jan
>>>
>>>
>>>
>> My system.conf (using my example partition layout for earlier email) file
>> would look something like:
>>
>> [system]
>> compatible=rauc-example
>> bootloader=uboot
>>
>> [keyring]
>> path=/etc/rauc/ca.cert.pem
>>
>> [slot.kernel.0]
>> device=/dev/mmcblk2gp0p1
>> type=vfat
>> parent=rootfs.0
>>
>> [slot.kernel.1]
>> device=/dev/mmcblk2gp1p1
>> type=vfat
>> parent=rootfs.1
>>
>> [slot.rootfs.0]
>> device=/dev/mmcblk2gp0p2
>> type=ext4
>> bootname=A
>>
>> [slot.rootfs.1]
>> device=/dev/mmcblk2gp1p2
>> type=ext4
>> bootname=B
>>
>> [slot.appfs.0]
>> device=/dev/mmcblk2p1
>> type=ext4
>> parent=rootfs.0
>>
>> [slot.appfs.1]
>> device=/dev/mmcblk2p2
>> type=ext4
>> parent=rootfs.1
>>
>> So I should use "parent" to tie both kernel and appfs slots to the rootfs?
>>
>> And for now, the rootfs is r/w on a ext4 filesystem, but in the future it
>> will be a squashfs.  So once that happens would 'type=ext4' then change to
>> 'type=raw'?
>>
>> Just trying to make sure I understand how to make manifest and
>> system.conf map together for making bundles etc.
>>
>> Regards,
>>
>> Brian
>>
>>
>> Now my problem is the rauc install of the bundle fails:
>
> I'm using rauc 1.5 from Dunfell.
>
> root@imx8mmevk:~# rauc --debug install update-mybundle.raucb
> rauc-Message: 18:58:29.648: Debug log domains: 'rauc'
> (rauc:2812): rauc-DEBUG: 18:58:29.655: install started
> (rauc:2812): rauc-DEBUG: 18:58:29.655: input bundle:
> /home/root/update-mybundle.raucb
> (rauc:2812): rauc-DEBUG: 18:58:29.667: Trying to contact rauc service
> installing
>  0% Installing
>  0% Determining slot states
> 20% Determining slot states done.
> 20% Checking bundle
> 20% Verifying signature
> 40% Verifying signature done.
> 40% Checking bundle done.
> 40% Checking manifest contents
> 60% Checking manifest contents done.
> 60% Determining target install group
> 80% Determining target install group done.
> 80% Updating slots
> 80% Checking slot kernel.1
> 83% Checking slot kernel.1 done.
> 83% Copying image to kernel.1
> 86% Copying image to kernel.1 failed.
> 100% Updating slots failed.
> 100% Installing failed.
> LastError: Installation error: Failed updating slot kernel.1: failed to
> run tar extract: Child process exited with code 1
> idle
> Installing `/home/root/update-mybundle.raucb` failed
>
> My system.conf:
>
> [system]
> compatible=MyTarget
> bootloader=uboot
>
> [keyring]
> path=/etc/rauc/ca.cert.pem
>
> [slot.kernel.0]
> device=/dev/mmcblk2gp0p1
> type=vfat
> parent=rootfs.0
>
> [slot.kernel.1]
> device=/dev/mmcblk2gp1p1
> type=vfat
> parent=rootfs.1
>
> [slot.rootfs.0]
> device=/dev/mmcblk2gp0p2
> type=ext4
> bootname=A
>
> [slot.rootfs.1]
> device=/dev/mmcblk2gp1p2
> type=ext4
> bootname=B
>
> [slot.appfs.0]
> device=/dev/mmcblk2p1
> type=ext4
> parent=rootfs.0
>
> [slot.appfs.1]
> device=/dev/mmcblk2p2
> type=ext4
> parent=rootfs.1
>
> My manifest.rauc:
>
> [update]
> compatible=MyTarget
> version=2021.06-15
>
> [image.kernel]
> sha256=045fb07d617e387e8b39426847a93f517f2af005fb65aced6a7a3028a2adad70
> size=21084160
> filename=mytarget-fsl-linux-5.4.114.tar.bz2
>
> [image.rootfs]
> sha256=d8b18918b7bfeec3f82d8eb454da42aca41da4fc8095cbeb52f4ebce5fb5e29c
> size=169139859
> filename=mytarget_yocto-3.1.7_dunfell_fslc-linux-5.4.114.tar.bz2
>
> [image.appfs]
> sha256=0a46530a2387bd1eafa0912ab00dbc4f21077578f1c0b5e7a3b051b9cc36785a
> size=196
> filename=mytarget-appfs.tar.bz2
>
> mytarget-fsl-linux-5.4.114.tar.bz2 is a tar of two files (kernel and
> device tree blob):  Image and imx8mm-evk.dtb
>
> Can I not do a .tar for a vfat target slot?
>
> Regards,
>
> Brian
>
>
Ok, I think I figured out my problems.  Appears that I was using busybox
version of tar so I switched to the real thing (GNU Tar) and that fixed one
problem then I ran into a mkfs.vfat problem and I added dosfstools to my
image and that took care of that so now my bundle is updating correctly now
... so sorry for the noise!

Regards,

Brian

[-- Attachment #2: Type: text/html, Size: 10517 bytes --]

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [RAUC] Create bundles from command line outside of yocto?
  2021-06-15 21:32       ` Brian Hutchinson
@ 2021-06-16  5:06         ` Enrico Jörns
  2021-06-16 12:45           ` Brian Hutchinson
  0 siblings, 1 reply; 9+ messages in thread
From: Enrico Jörns @ 2021-06-16  5:06 UTC (permalink / raw)
  To: Brian Hutchinson; +Cc: rauc, Jan Lübbe

Hi Brian,

Am Dienstag, dem 15.06.2021 um 17:32 -0400 schrieb Brian Hutchinson:
> Ok, I think I figured out my problems.  Appears that I was using busybox
> version of tar so I switched to the real thing (GNU Tar) and that fixed one
> problem then I ran into a mkfs.vfat problem and I added dosfstools to my image
> and that took care of that so now my bundle is updating correctly now ... so
> sorry for the noise!

glad you solved it!

You could actually use busybox tar, too.  But then you need to make sure to have
enabled format autodetection and the required compression algorithm, see:
https://rauc.readthedocs.io/en/latest/integration.html#required-target-tools

About your original questions:

> So I should use "parent" to tie both kernel and appfs slots to the rootfs?

Your system.conf (and parent relations) looked good from what I saw.

> And for now, the rootfs is r/w on a ext4 filesystem, but in the future it will
> be a squashfs.  So once that happens would 'type=ext4' then change to
> 'type=raw'?

Yes, 'raw' will be fine for squashfs as there is an explicit handler available
for it. The 'raw' type ensures RAUC does not think it could mount the bundle for
writing.

If you have a separate shared data partition, then I would recommend to
configure RAUC to use this for its status file (which cannot be located inside
the slot anymore when having "ro by design"):

  [system]
  ...
  statusfile=/path/to/datapart/rauc.status

See https://rauc.readthedocs.io/en/latest/reference.html#statusfile


Regards, Enrico

-- 
Pengutronix e.K.                           | Enrico Jörns                |
Embedded Linux Consulting & Support        | https://www.pengutronix.de/ |
Steuerwalder Str. 21                       | Phone: +49-5121-206917-180  |
31137 Hildesheim, Germany                  | Fax:   +49-5121-206917-9    |

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [RAUC] Create bundles from command line outside of yocto?
  2021-06-16  5:06         ` Enrico Jörns
@ 2021-06-16 12:45           ` Brian Hutchinson
  2021-06-17 10:20             ` Enrico Jörns
  0 siblings, 1 reply; 9+ messages in thread
From: Brian Hutchinson @ 2021-06-16 12:45 UTC (permalink / raw)
  To: Enrico Jörns; +Cc: rauc, Jan Lübbe

[-- Attachment #1: Type: text/plain, Size: 2089 bytes --]

On Wed, Jun 16, 2021 at 1:06 AM Enrico Jörns <ejo@pengutronix.de> wrote:

> Hi Brian,
>
> Am Dienstag, dem 15.06.2021 um 17:32 -0400 schrieb Brian Hutchinson:
> > Ok, I think I figured out my problems.  Appears that I was using busybox
> > version of tar so I switched to the real thing (GNU Tar) and that fixed
> one
> > problem then I ran into a mkfs.vfat problem and I added dosfstools to my
> image
> > and that took care of that so now my bundle is updating correctly now
> ... so
> > sorry for the noise!
>
> glad you solved it!
>
> You could actually use busybox tar, too.  But then you need to make sure
> to have
> enabled format autodetection and the required compression algorithm, see:
>
> https://rauc.readthedocs.io/en/latest/integration.html#required-target-tools
>
> About your original questions:
>
> > So I should use "parent" to tie both kernel and appfs slots to the
> rootfs?
>
> Your system.conf (and parent relations) looked good from what I saw.
>
> > And for now, the rootfs is r/w on a ext4 filesystem, but in the future
> it will
> > be a squashfs.  So once that happens would 'type=ext4' then change to
> > 'type=raw'?
>
> Yes, 'raw' will be fine for squashfs as there is an explicit handler
> available
> for it. The 'raw' type ensures RAUC does not think it could mount the
> bundle for
> writing.
>
> If you have a separate shared data partition, then I would recommend to
> configure RAUC to use this for its status file (which cannot be located
> inside
> the slot anymore when having "ro by design"):
>
>   [system]
>   ...
>   statusfile=/path/to/datapart/rauc.status
>
> See https://rauc.readthedocs.io/en/latest/reference.html#statusfile


I'll check that out.  I'm using u-boot so I "thought" all the status stuff
was being done with u-boot environment variables via fw_setenv/fw_printenv.

Was it my imagination or did RAUC populate my rootfs during the update
faster than when I just mount and manually untar my rootfs?  How is it you
guys are faster?

Thanks again!

Regards,

Brian

[-- Attachment #2: Type: text/html, Size: 2890 bytes --]

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [RAUC] Create bundles from command line outside of yocto?
  2021-06-16 12:45           ` Brian Hutchinson
@ 2021-06-17 10:20             ` Enrico Jörns
  2021-06-17 12:42               ` Brian Hutchinson
  0 siblings, 1 reply; 9+ messages in thread
From: Enrico Jörns @ 2021-06-17 10:20 UTC (permalink / raw)
  To: Brian Hutchinson; +Cc: rauc, Jan Lübbe

Hi Brian,

Am Mittwoch, dem 16.06.2021 um 08:45 -0400 schrieb Brian Hutchinson:
> > If you have a separate shared data partition, then I would recommend to
> > configure RAUC to use this for its status file (which cannot be located
> > inside
> > the slot anymore when having "ro by design"):
> > 
> >   [system]
> >   ...
> >   statusfile=/path/to/datapart/rauc.status
> > 
> > See https://rauc.readthedocs.io/en/latest/reference.html#statusfile
> > 
> 
> 
> I'll check that out.  I'm using u-boot so I "thought" all the status stuff was
> being done with u-boot environment variables via fw_setenv/fw_printenv.

u-boot is used for the partition/slot switching only.
This is sufficient for basic functionality of of RAUC.

In the status file we store some additional information, like when and how often
a slot was updated, or which bundle version it is running.
You get this for example when running "rauc status --detailed".

> Was it my imagination or did RAUC populate my rootfs during the update faster
> than when I just mount and manually untar my rootfs?  How is it you guys are
> faster?

Sounds interesting, but I cannot tell because I don't know what you did to untar
;)
But actually there is no magic. We simply call 'tar' to unpack. Maybe you've
used a slower (de)compression algorithm when testing manually?


Best regards, Enrico

> Thanks again!
> 
> Regards,
> 
> Brian

-- 
Pengutronix e.K.                           | Enrico Jörns                |
Embedded Linux Consulting & Support        | https://www.pengutronix.de/ |
Steuerwalder Str. 21                       | Phone: +49-5121-206917-180  |
31137 Hildesheim, Germany                  | Fax:   +49-5121-206917-9    |

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [RAUC] Create bundles from command line outside of yocto?
  2021-06-17 10:20             ` Enrico Jörns
@ 2021-06-17 12:42               ` Brian Hutchinson
  0 siblings, 0 replies; 9+ messages in thread
From: Brian Hutchinson @ 2021-06-17 12:42 UTC (permalink / raw)
  To: Enrico Jörns; +Cc: rauc, Jan Lübbe

[-- Attachment #1: Type: text/plain, Size: 1617 bytes --]

Hi Enrico,

On Thu, Jun 17, 2021 at 6:20 AM Enrico Jörns <ejo@pengutronix.de> wrote:

> Hi Brian,
>
> Am Mittwoch, dem 16.06.2021 um 08:45 -0400 schrieb Brian Hutchinson:
> > > If you have a separate shared data partition, then I would recommend to
> > > configure RAUC to use this for its status file (which cannot be located
> > > inside
> > > the slot anymore when having "ro by design"):
> > >
> > >   [system]
> > >   ...
> > >   statusfile=/path/to/datapart/rauc.status
> > >
> > > See https://rauc.readthedocs.io/en/latest/reference.html#statusfile
> > >
> >
> >
> > I'll check that out.  I'm using u-boot so I "thought" all the status
> stuff was
> > being done with u-boot environment variables via fw_setenv/fw_printenv.
>
> u-boot is used for the partition/slot switching only.
> This is sufficient for basic functionality of of RAUC.
>
> In the status file we store some additional information, like when and how
> often
> a slot was updated, or which bundle version it is running.
> You get this for example when running "rauc status --detailed".
>
> > Was it my imagination or did RAUC populate my rootfs during the update
> faster
> > than when I just mount and manually untar my rootfs?  How is it you guys
> are
> > faster?
>
> Sounds interesting, but I cannot tell because I don't know what you did to
> untar
> ;)
> But actually there is no magic. We simply call 'tar' to unpack. Maybe
> you've
> used a slower (de)compression algorithm when testing manually?
>

I bet it's because I'm in the habit of using xvf ... the 'v' is slowing it
down.

B

[-- Attachment #2: Type: text/html, Size: 2328 bytes --]

^ permalink raw reply	[flat|nested] 9+ messages in thread

end of thread, other threads:[~2021-06-17 12:42 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-05-25  2:54 [RAUC] Create bundles from command line outside of yocto? Brian Hutchinson
2021-05-25  6:56 ` Jan Lübbe
2021-06-15  4:17   ` Brian Hutchinson
2021-06-15 19:07     ` Brian Hutchinson
2021-06-15 21:32       ` Brian Hutchinson
2021-06-16  5:06         ` Enrico Jörns
2021-06-16 12:45           ` Brian Hutchinson
2021-06-17 10:20             ` Enrico Jörns
2021-06-17 12:42               ` Brian Hutchinson

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox