# How to adjust Mender disk image artifact

**URL:** <https://hub.mender.io/t/how-to-adjust-mender-disk-image-artifact/574>\
**Category:** General Discussions\
**Created:** [May 16, 2019, 8:00am UTC](https://hub.mender.io/t/how-to-adjust-mender-disk-image-artifact/574 "2019-05-16T08:00:51Z")\
**Posts on this page:** 20\
**Page:** 1

<div class="post-metadata">

**Author:** ![gpram](https://avatars.discourse-cdn.com/v4/letter/g/9fc29f/32.png) [@gpram](https://hub.mender.io/u/gpram)\
**Post date:** [May 16, 2019, 8:00am UTC](https://hub.mender.io/t/how-to-adjust-mender-disk-image-artifact/574/1 "2019-05-16T08:00:51Z")

</div>

Hi am doing new mender artifact image… Am getting error from mender diak image adjust size… I have rawdisk image size 16gb how can I do adjust menderdisk size

---

<div class="post-metadata">

**Author:** ![MarekBelisko](https://yyz2.discourse-cdn.com/flex036/user_avatar/hub.mender.io/marekbelisko/32/33_2.png) [@MarekBelisko](https://hub.mender.io/u/MarekBelisko)\
**Post date:** [May 16, 2019, 8:13am UTC](https://hub.mender.io/t/how-to-adjust-mender-disk-image-artifact/574/2 "2019-05-16T08:13:01Z")

</div>

Can you pls post command + log. Thanks.

---

<div class="post-metadata">

**Author:** ![gpram](https://avatars.discourse-cdn.com/v4/letter/g/9fc29f/32.png) [@gpram](https://hub.mender.io/u/gpram)\
**Post date:** [May 16, 2019, 8:54am UTC](https://hub.mender.io/t/how-to-adjust-mender-disk-image-artifact/574/3 "2019-05-16T08:54:13Z")

</div>

command :  
./docker-mender-convert from-raw-disk-image   
–raw-disk-image $RAW\_DISK\_IMAGE   
–mender-disk-image $MENDER\_DISK\_IMAGE   
–device-type $DEVICE\_TYPE   
–artifact-name $ARTIFACT\_NAME   
–bootloader-toolchain arm-buildroot-linux-gnueabihf   
–demo   
–demo-host-ip $DEMO\_HOST\_IP

log file

1/9 re-partitioning raw disk image…  
detected raw disk image with 1 partition(s).  
adjust Mender disk image size to the total storage size(8000mb)  
Defined total storage size of MB is too small  
Minimal required storage is 30532MB. aborting

---

<div class="post-metadata">

**Author:** ![MarekBelisko](https://yyz2.discourse-cdn.com/flex036/user_avatar/hub.mender.io/marekbelisko/32/33_2.png) [@MarekBelisko](https://hub.mender.io/u/MarekBelisko)\
**Post date:** [May 16, 2019, 9:08am UTC](https://hub.mender.io/t/how-to-adjust-mender-disk-image-artifact/574/4 "2019-05-16T09:08:25Z")

</div>

Can you pls try to add option: `--storage-total-size-mb 32000` to arguments and try? There is default 8G but looks like your image is pretty big.

---

<div class="post-metadata">

**Author:** ![gpram](https://avatars.discourse-cdn.com/v4/letter/g/9fc29f/32.png) [@gpram](https://hub.mender.io/u/gpram)\
**Post date:** [May 16, 2019, 9:09am UTC](https://hub.mender.io/t/how-to-adjust-mender-disk-image-artifact/574/5 "2019-05-16T09:09:15Z")

</div>

where i have to add pls tell me

---

<div class="post-metadata">

**Author:** ![mirzak](https://yyz2.discourse-cdn.com/flex036/user_avatar/hub.mender.io/mirzak/32/2056_2.png) [@mirzak](https://hub.mender.io/u/mirzak)\
**Post date:** [May 16, 2019, 9:09am UTC](https://hub.mender.io/t/how-to-adjust-mender-disk-image-artifact/574/6 "2019-05-16T09:09:44Z")

</div>

Similar problem was discussed and resolved here,

> [@How to set new partition size with mender-convert](https://hub.mender.io/t/how-to-set-new-partition-size-with-mender-convert/399):
>
> OK! I completed the “Convert the Raspberry Pi disk image to support Mender” section, flashed the .sdimg file to a SD disk, booted it on the Pi, the Mender daemon is running and I was able to authorize the device in hosted Mender. +1 Next I tried creating my “golden image”. I flashed 2018-11-13-raspbian-stretch-lite.img to a second SD card, booted it on the Pi, and made a change to the filesystem (I created a file “two” in the /home/pi directory as a marker). I then copied the SD card on m…

---

<div class="post-metadata">

**Author:** ![gpram](https://avatars.discourse-cdn.com/v4/letter/g/9fc29f/32.png) [@gpram](https://hub.mender.io/u/gpram)\
**Post date:** [May 16, 2019, 11:00am UTC](https://hub.mender.io/t/how-to-adjust-mender-disk-image-artifact/574/7 "2019-05-16T11:00:59Z")

</div>

–bootloader-toolchain arm-buildroot-linux-gnueabihf command not found , how can i install this bootloader-toolchain

---

<div class="post-metadata">

**Author:** ![MarekBelisko](https://yyz2.discourse-cdn.com/flex036/user_avatar/hub.mender.io/marekbelisko/32/33_2.png) [@MarekBelisko](https://hub.mender.io/u/MarekBelisko)\
**Post date:** [May 16, 2019, 11:14am UTC](https://hub.mender.io/t/how-to-adjust-mender-disk-image-artifact/574/8 "2019-05-16T11:14:47Z")

</div>

It’s installed by default in docker. Please add this line to arguments:

```auto
--bootloader-toolchain arm-buildroot-linux-gnueabihf

```

Also which version of mender-convert are you using? Thanks.

---

<div class="post-metadata">

**Author:** ![gpram](https://avatars.discourse-cdn.com/v4/letter/g/9fc29f/32.png) [@gpram](https://hub.mender.io/u/gpram)\
**Post date:** [May 16, 2019, 11:51am UTC](https://hub.mender.io/t/how-to-adjust-mender-disk-image-artifact/574/9 "2019-05-16T11:51:58Z")

</div>

mender 2.0 version pls help me

---

<div class="post-metadata">

**Author:** ![MarekBelisko](https://yyz2.discourse-cdn.com/flex036/user_avatar/hub.mender.io/marekbelisko/32/33_2.png) [@MarekBelisko](https://hub.mender.io/u/MarekBelisko)\
**Post date:** [May 16, 2019, 11:54am UTC](https://hub.mender.io/t/how-to-adjust-mender-disk-image-artifact/574/10 "2019-05-16T11:54:30Z")

</div>

I mean `mender-convert` tool version not mender version itself. Did you rebuild docker recently? Maybe you do update bu forget to run: `docker-build`

---

<div class="post-metadata">

**Author:** ![gpram](https://avatars.discourse-cdn.com/v4/letter/g/9fc29f/32.png) [@gpram](https://hub.mender.io/u/gpram)\
**Post date:** [May 16, 2019, 11:56am UTC](https://hub.mender.io/t/how-to-adjust-mender-disk-image-artifact/574/11 "2019-05-16T11:56:28Z")

</div>

git clone -b 1.1.0 [https://github.com/mendersoftware/mender-convert.git](https://github.com/mendersoftware/mender-convert.git)

i installed this version

---

<div class="post-metadata">

**Author:** ![MarekBelisko](https://yyz2.discourse-cdn.com/flex036/user_avatar/hub.mender.io/marekbelisko/32/33_2.png) [@MarekBelisko](https://hub.mender.io/u/MarekBelisko)\
**Post date:** [May 16, 2019, 11:58am UTC](https://hub.mender.io/t/how-to-adjust-mender-disk-image-artifact/574/12 "2019-05-16T11:58:11Z")

</div>

OK then you perform docker build and run command to generate pls share this command

---

<div class="post-metadata">

**Author:** ![gpram](https://avatars.discourse-cdn.com/v4/letter/g/9fc29f/32.png) [@gpram](https://hub.mender.io/u/gpram)\
**Post date:** [May 16, 2019, 12:00pm UTC](https://hub.mender.io/t/how-to-adjust-mender-disk-image-artifact/574/13 "2019-05-16T12:00:17Z")

</div>

command :  
./docker-mender-convert from-raw-disk-image  
–raw-disk-image $RAW\_DISK\_IMAGE  
–mender-disk-image $MENDER\_DISK\_IMAGE  
–device-type $DEVICE\_TYPE  
–artifact-name $ARTIFACT\_NAME  
–storage-total-size-mb 32000  
–bootloader-toolchain arm-buildroot-linux-gnueabihf  
–demo  
–demo-host-ip $DEMO\_HOST\_IP

---

<div class="post-metadata">

**Author:** ![MarekBelisko](https://yyz2.discourse-cdn.com/flex036/user_avatar/hub.mender.io/marekbelisko/32/33_2.png) [@MarekBelisko](https://hub.mender.io/u/MarekBelisko)\
**Post date:** [May 16, 2019, 12:02pm UTC](https://hub.mender.io/t/how-to-adjust-mender-disk-image-artifact/574/14 "2019-05-16T12:02:02Z")

</div>

Pls post also log from output directory `output/build.log`

---

<div class="post-metadata">

**Author:** ![gpram](https://avatars.discourse-cdn.com/v4/letter/g/9fc29f/32.png) [@gpram](https://hub.mender.io/u/gpram)\
**Post date:** [May 16, 2019, 12:08pm UTC](https://hub.mender.io/t/how-to-adjust-mender-disk-image-artifact/574/15 "2019-05-16T12:08:18Z")

</div>

Mender conversion tool

A tool that takes an existing embedded image (Debian, Ubuntu, Raspbian, etc)  
and converts it to a Mender image by restructuring partition table and adding  
necessary files.

Usage: ./mender-convert COMMAND [options]

General commands:

```
    from-raw-disk-image - composes fully functional Mender
                                              image compliant with Mender
                                              partition layout, having all
                                              necessary files installed
    mender-disk-image-to-artifact - creates Mender artifact file
                                              from Mender image
    raw-disk-image-shrink-rootfs - shrinks existing embedded raw
                                              disk image

```

Options: [-r|–raw-disk-image | -m|–mender-disk-image | -s|–data-part-size-mb |  
-d|–device-type | -p|–rootfs-partition-id | -n|–demo | -i|–demo-host-ip |  
-c|–server-cert | -u|–server-url | -t|–tenant-token |  
-g|–mender-client | -b|–bootloader-toolchain | -a|–artifact-name |  
-e|–storage-total-size-mb | -k|–keep | -v|–version -h|–help]

```
    raw-disk-image - raw disk embedded Linux (Debian, Raspbian,
                            Ubuntu, etc.) image path
    mender-disk-image - Mender disk image name where the script writes to
                            should have "sdimg" suffix
    data-part-size-mb - data partition size in MB; default value 128MB
    device-type - target device identification used to build
                            Mender image
    rootfs-partition-id - selects root filesystem (primary|secondary)
                            as the source filesystem for an artifact
    demo - Configure image using demo parameters
    demo-host-ip - server demo ip used for testing purposes
    server-cert - server certificate file
    server-url - production server url
    tenant-token - Mender tenant token
    mender-client - Mender client binary
    bootloader-toolchain - GNU Arm Embedded Toolchain
    artifact-name - Mender artifact name
    storage-total-size-mb - total storage size in MB; default value 8000MB;
                            it is used to calculate the rootfs final size
    keep - keep intermediate files in output directory
    version - print the version
    help - show help and exit

```

Examples:

```
To create fully functional Mender image from raw disk image in a single step:

    ./mender-convert from-raw-disk-image
            --raw-disk-image <raw_disk_image_path>
            [--mender-disk-image <mender_image_name>]
            --device-type <beaglebone | raspberrypi3>
            [--mender-client <mender_binary_path>]
            --artifact-name release-1_1.5.0
            --bootloader-toolchain arm-linux-gnueabihf
            --demo-host-ip 192.168.10.2
            --keep

    Output:
        - Mender image: ready to use image with client and bootloader installed
        - Mender artifact: update file based on the already built Mender image
        - Mender root filesystem: EXT4 image used to produce the Mender artifact

To create Mender artifact file from Mender image:

    ./mender-convert mender-disk-image-to-artifact
            --mender-disk-image <mender_image_path>
            --device-type <beaglebone | raspberrypi3>
            --artifact-name release-1_1.5.0
            --rootfs-partition-id <primary | secondary>

    Note: artifact name format is: release-<release_no>_<mender_version>

To shrink the existing embedded raw disk image:

    ./mender-convert raw-disk-image-shrink-rootfs
            --raw-disk-image <raw_disk_image_path>

    Output: Root filesystem size (sectors): 4521984

```

Check /mender-convert/output/build.log for details.

---

<div class="post-metadata">

**Author:** ![MarekBelisko](https://yyz2.discourse-cdn.com/flex036/user_avatar/hub.mender.io/marekbelisko/32/33_2.png) [@MarekBelisko](https://hub.mender.io/u/MarekBelisko)\
**Post date:** [May 16, 2019, 12:20pm UTC](https://hub.mender.io/t/how-to-adjust-mender-disk-image-artifact/574/16 "2019-05-16T12:20:56Z")

</div>

> [@gpram](#):
>
> output/build.log

This is output from: `output/build.log` ?

---

<div class="post-metadata">

**Author:** ![gpram](https://avatars.discourse-cdn.com/v4/letter/g/9fc29f/32.png) [@gpram](https://hub.mender.io/u/gpram)\
**Post date:** [May 16, 2019, 12:22pm UTC](https://hub.mender.io/t/how-to-adjust-mender-disk-image-artifact/574/17 "2019-05-16T12:22:43Z")

</div>

yes this is build.log file …

---

<div class="post-metadata">

**Author:** ![MarekBelisko](https://yyz2.discourse-cdn.com/flex036/user_avatar/hub.mender.io/marekbelisko/32/33_2.png) [@MarekBelisko](https://hub.mender.io/u/MarekBelisko)\
**Post date:** [May 16, 2019, 12:25pm UTC](https://hub.mender.io/t/how-to-adjust-mender-disk-image-artifact/574/18 "2019-05-16T12:25:39Z")

</div>

You have typo in arguments thus it print this. Pls try to use below (with necessary modifications -\> this on build fine image for rpi0w):

```auto
#!/bin/sh

DEVICE_TYPE="raspberrypi0w"
RAW_DISK_IMAGE="input/2018-11-13-raspbian-stretch-lite.img"

ARTIFACT_NAME="2018-11-13-raspbian-stretch-lite"
MENDER_DISK_IMAGE="2018-11-13-raspbian-stretch-lite.sdimg"
TENANT_TOKEN="1234"

./docker-mender-convert from-raw-disk-image \
        --raw-disk-image $RAW_DISK_IMAGE \
        --mender-disk-image $MENDER_DISK_IMAGE \
        --device-type $DEVICE_TYPE \
        --artifact-name $ARTIFACT_NAME \
        --bootloader-toolchain arm-buildroot-linux-gnueabihf \
        --server-url "https://hosted.mender.io" \
        --tenant-token $TENANT_TOKEN \
        --storage-total-size-mb 4000

```

---

<div class="post-metadata">

**Author:** ![gpram](https://avatars.discourse-cdn.com/v4/letter/g/9fc29f/32.png) [@gpram](https://hub.mender.io/u/gpram)\
**Post date:** [May 17, 2019, 5:17am UTC](https://hub.mender.io/t/how-to-adjust-mender-disk-image-artifact/574/19 "2019-05-17T05:17:29Z")

</div>

> [@gpram](#):
>
> command :  
> ./docker-mender-convert from-raw-disk-image  
> –raw-disk-image $RAW\_DISK\_IMAGE  
> –mender-disk-image $MENDER\_DISK\_IMAGE  
> –device-type $DEVICE\_TYPE  
> –artifact-name $ARTIFACT\_NAME  
> –bootloader-toolchain arm-buildroot-linux-gnueabihf  
> –demo  
> –demo-host-ip $DEMO\_HOST\_IP
> 
> log file
> 
> 1/9 re-partitioning raw disk image…  
> detected raw disk image with 1 partition(s).  
> adjust Mender disk image size to the total storage size(8000mb)  
> Defined total storage size of MB is too small  
> Minimal required storage is 30532MB. aborting

command :  
./docker-mender-convert from-raw-disk-image  
–raw-disk-image $RAW\_DISK\_IMAGE  
–mender-disk-image $MENDER\_DISK\_IMAGE  
–device-type $DEVICE\_TYPE  
–artifact-name $ARTIFACT\_NAME  
–bootloader-toolchain arm-buildroot-linux-gnueabihf  
–demo  
–demo-host-ip $DEMO\_HOST\_IP

log file

1/9 re-partitioning raw disk image…  
detected raw disk image with 1 partition(s).  
adjust Mender disk image size to the total storage size(8000mb)  
Defined total storage size of MB is too small  
Minimal required storage is 30532MB. aborting

---

<div class="post-metadata">

**Author:** ![gpram](https://avatars.discourse-cdn.com/v4/letter/g/9fc29f/32.png) [@gpram](https://hub.mender.io/u/gpram)\
**Post date:** [May 17, 2019, 5:17am UTC](https://hub.mender.io/t/how-to-adjust-mender-disk-image-artifact/574/20 "2019-05-17T05:17:43Z")

</div>

command :  
./docker-mender-convert from-raw-disk-image  
–raw-disk-image $RAW\_DISK\_IMAGE  
–mender-disk-image $MENDER\_DISK\_IMAGE  
–device-type $DEVICE\_TYPE  
–artifact-name $ARTIFACT\_NAME  
–bootloader-toolchain arm-buildroot-linux-gnueabihf  
–demo  
–demo-host-ip $DEMO\_HOST\_IP

log file

1/9 re-partitioning raw disk image…  
detected raw disk image with 1 partition(s).  
adjust Mender disk image size to the total storage size(8000mb)  
Defined total storage size of MB is too small  
Minimal required storage is 30532MB. aborting

[Next page](https://hub.mender.io/t/how-to-adjust-mender-disk-image-artifact/574.md?page=2)
