# System update fails "Could not open path to sync"

**URL:** <https://hub.mender.io/t/system-update-fails-could-not-open-path-to-sync/8088>\
**Category:** General Discussions\
**Tags:** mender-client, raspberry-pi-4\
**Created:** [November 11, 2025, 5:22pm UTC](https://hub.mender.io/t/system-update-fails-could-not-open-path-to-sync/8088 "2025-11-11T17:22:02Z")\
**Posts on this page:** 16\
**Page:** 1

<div class="post-metadata">

**Author:** ![paul.m](https://avatars.discourse-cdn.com/v4/letter/p/c0e974/32.png) [@paul.m](https://hub.mender.io/u/paul.m)\
**Post date:** [November 11, 2025, 5:22pm UTC](https://hub.mender.io/t/system-update-fails-could-not-open-path-to-sync/8088/1 "2025-11-11T17:22:02Z")

</div>

System update fails. When config was previously working. With “Could not open path to sync”

We created our own pi image using mender-convert to increase the root disk size. Then created a system artifact using mender-artifact. And successfully deployed it to a new device with the raw pi image from the mender-convert step. This was on 15-Aug-2025, I believe that the mender-update version was 5.0.1.

But now it is not working. I am trying to deploy the same system artifact to a new device with the raw pi image mender-update version 5.0.3 (installed using the copy paste commands given in the ‘connect new device’ tab on the devices dashboard) I get this log output. looks like the path is uninitialized.

“timestamp”:“2025-11-11T14:27:28.877306Z”,“level”:“info”,“message”:“Running Mender client 5.0.3”}  
{“timestamp”:“2025-11-11T14:27:28.877617Z”,“level”:“info”,“message”:“Deployment with ID cea1e339-2f95-4484-a75c-a1f073092312 started.”}  
{“timestamp”:“2025-11-11T14:27:28.878769Z”,“level”:“info”,“message”:“Sending status update to server”}  
{“timestamp”:“2025-11-11T14:27:29.913904Z”,“level”:“info”,“message”:“Installing artifact…”}  
{“timestamp”:“2025-11-11T14:27:29.923150Z”,“level”:“error”,“message”:“No such file or directory: Could not open path to sync: ߠ\n^B^@^@^@^@/mender/modules/v3/payloads/0000/tree/version”}  
{“timestamp”:“2025-11-11T14:27:29.923740Z”,“level”:“error”,“message”:"Operation canceled: GET [https://c271964d41749feb10da762816c952ee.r2.cloudflarestorage.com/mender-artifact-storage-prod-h](https://c271964d41749feb10da762816c952ee.r2.cloudflarestorage.com/mender-artifact-storage-prod-h)\>  
{“timestamp”:“2025-11-11T14:27:29.944763Z”,“level”:“info”,“message”:“Sending status update to server”}  
{“timestamp”:“2025-11-11T14:27:30.688438Z”,“level”:“error”,“message”:"Could not send deployment status: Bad response error: Got unexpected response 400 from logs API: invalid character '\x0\>  
{“timestamp”:“2025-11-11T14:27:30.688629Z”,“level”:“info”,“message”:“Retrying status update after 60 seconds”}  
{“timestamp”:“2025-11-11T14:28:30.688825Z”,“level”:“info”,“message”:“Sending status update to server”}

Repeated lines….

{“timestamp”:“2025-11-11T15:03:46.859720Z”,“level”:“error”,“message”:"Could not send deployment status: Bad response error: Got unexpected response 400 from logs API: invalid character '\x0\>  
{“timestamp”:“2025-11-11T15:03:46.859934Z”,“level”:“error”,“message”:“Giving up on sending status updates to server: Tried maximum number of times: Exponential backoff”}  
{“timestamp”:“2025-11-11T15:03:46.863945Z”,“level”:“info”,“message”:“Deployment with ID cea1e339-2f95-4484-a75c-a1f073092312 finished with status: Failure”}

---

<div class="post-metadata">

**Author:** ![TheYoctoJester](https://yyz2.discourse-cdn.com/flex036/user_avatar/hub.mender.io/theyoctojester/32/1444_2.png) [@TheYoctoJester](https://hub.mender.io/u/TheYoctoJester)\
**Post date:** [November 14, 2025, 11:14am UTC](https://hub.mender.io/t/system-update-fails-could-not-open-path-to-sync/8088/2 "2025-11-14T11:14:09Z")

</div>

Hi @paul.m,

While I have no obvious solution - what happens if you install a really simple artifact, possibly just a file? You can create one on the fly on Hosted Mender, just upload a text file instead of an artifact, and it will guide you through the creation of a simple file artifact which you can deploy right afterwards.

Greetz,  
Josef

---

<div class="post-metadata">

**Author:** ![paul.m](https://avatars.discourse-cdn.com/v4/letter/p/c0e974/32.png) [@paul.m](https://hub.mender.io/u/paul.m)\
**Post date:** [November 14, 2025, 11:51am UTC](https://hub.mender.io/t/system-update-fails-could-not-open-path-to-sync/8088/3 "2025-11-14T11:51:15Z")

</div>

Hi Josef,

Thank you for your response.

I tried this, and I get the same error message {“timestamp”:“2025-11-11T14:27:29.923150Z”,“level”:“error”,“message”:“No such file or directory: Could not open path to sync: ߠ\n^B^@^@^@^@/mender/modules/v3/payloads/0000/tree/version”}

Best regards,

Paul

---

<div class="post-metadata">

**Author:** ![TheYoctoJester](https://yyz2.discourse-cdn.com/flex036/user_avatar/hub.mender.io/theyoctojester/32/1444_2.png) [@TheYoctoJester](https://hub.mender.io/u/TheYoctoJester)\
**Post date:** [November 14, 2025, 12:48pm UTC](https://hub.mender.io/t/system-update-fails-could-not-open-path-to-sync/8088/4 "2025-11-14T12:48:18Z")

</div>

Hi @paul.m,

Is this a board you have at hand? Respectively, is only that one affected, or multiple ones? What happens if you rebuild the image?

Greetz,  
Josef

---

<div class="post-metadata">

**Author:** ![paul.m](https://avatars.discourse-cdn.com/v4/letter/p/c0e974/32.png) [@paul.m](https://hub.mender.io/u/paul.m)\
**Post date:** [November 14, 2025, 1:11pm UTC](https://hub.mender.io/t/system-update-fails-could-not-open-path-to-sync/8088/5 "2025-11-14T13:11:56Z")

</div>

Hi Josef,

I have another device that is working, it has the same hardware, root filesystem has same checksum (as shown in the software tab on mender hub). The only difference that I can see in the inventory is that the one that is working is running mender client version 5.0.1 and the one that is not is running 5.0.3. Do you know the best way to downgrade to 5.0.1?

In the mean time I will try from scratch with new hardware.

Best regards,

Paul

---

<div class="post-metadata">

**Author:** ![paul.m](https://avatars.discourse-cdn.com/v4/letter/p/c0e974/32.png) [@paul.m](https://hub.mender.io/u/paul.m)\
**Post date:** [November 14, 2025, 1:35pm UTC](https://hub.mender.io/t/system-update-fails-could-not-open-path-to-sync/8088/6 "2025-11-14T13:35:18Z")

</div>

Hi Josef,

I have tried again with new hardware (new rpi and SD card), installing the same image, then setting up mender client by copy pasting the commands given through hosted mender, then deploying a hello world text file as you suggested. And I get the same issue, but with a different string of random characters. So it does not appear to be hardware related.

level":“error”,“message”:“No such file or directory: Could not open path to sync: ���^A^@^@^@^@/mender/modules/v3/payloads/0000/tree/version”}

Best Regards,

Paul

---

<div class="post-metadata">

**Author:** ![TheYoctoJester](https://yyz2.discourse-cdn.com/flex036/user_avatar/hub.mender.io/theyoctojester/32/1444_2.png) [@TheYoctoJester](https://hub.mender.io/u/TheYoctoJester)\
**Post date:** [November 14, 2025, 2:12pm UTC](https://hub.mender.io/t/system-update-fails-could-not-open-path-to-sync/8088/7 "2025-11-14T14:12:51Z")

</div>

Hi @paul.m,

Something is really weird here, and it’s the only report that I know about so far. ☹  
You can try to downgrade by specifically setting `MENDER_CLIENT_VERSION`, as seen here: [mender-convert/configs/mender\_convert\_config at 25ea12e7663eb75a4cf783b18c202585138cb86b · mendersoftware/mender-convert · GitHub](https://github.com/mendersoftware/mender-convert/blob/25ea12e7663eb75a4cf783b18c202585138cb86b/configs/mender_convert_config#L130)

Greetz,  
Josef

---

<div class="post-metadata">

**Author:** ![paul.m](https://avatars.discourse-cdn.com/v4/letter/p/c0e974/32.png) [@paul.m](https://hub.mender.io/u/paul.m)\
**Post date:** [November 14, 2025, 3:37pm UTC](https://hub.mender.io/t/system-update-fails-could-not-open-path-to-sync/8088/8 "2025-11-14T15:37:58Z")

</div>

Hi Josef,

I have it working now.

I flashed another SD card with the same image, then changed the /etc/mender/mender.conf to add the hosted mender server and the tenant token. Rebooted and accepted the request. Now I can deploy again. So it seems that the ‘connect new device‘ script to setup the latest mender client was the issue after all. I will create a new image with mender convert that has the tenant token and serverURL built in so that I don’t have to keep copy pasting it in.

Thank you.

Best regards,

Paul

---

<div class="post-metadata">

**Author:** ![TheYoctoJester](https://yyz2.discourse-cdn.com/flex036/user_avatar/hub.mender.io/theyoctojester/32/1444_2.png) [@TheYoctoJester](https://hub.mender.io/u/TheYoctoJester)\
**Post date:** [November 14, 2025, 4:52pm UTC](https://hub.mender.io/t/system-update-fails-could-not-open-path-to-sync/8088/9 "2025-11-14T16:52:07Z")

</div>

Hi @paul.m,

Glad to hear! I’ll check back with the devs if there might be a problem with the copy-paste instructions in onboarding. But great that you can proceed!

Greetz,  
Josef

---

<div class="post-metadata">

**Author:** ![lluiscampos](https://yyz2.discourse-cdn.com/flex036/user_avatar/hub.mender.io/lluiscampos/32/112_2.png) [@lluiscampos](https://hub.mender.io/u/lluiscampos)\
**Post date:** [November 17, 2025, 12:10pm UTC](https://hub.mender.io/t/system-update-fails-could-not-open-path-to-sync/8088/10 "2025-11-17T12:10:07Z")

</div>

Hi @paul.m ,

Good that you found a solution.

However I still suspect another issue. These strange path prefixes like:

> ߠ\n^B^@^@^@^@/mender

makes me suspect an old issue that we had with armhf packages. Are you using 32 bit based OS image from Raspberry Pi OS?

We don’t support these anymore with the new releases, starting from mender-update 5.0.2.

Maybe I am off, but I just wanted to rule this out.

Lluís

---

<div class="post-metadata">

**Author:** ![paul.m](https://avatars.discourse-cdn.com/v4/letter/p/c0e974/32.png) [@paul.m](https://hub.mender.io/u/paul.m)\
**Post date:** [November 17, 2025, 1:15pm UTC](https://hub.mender.io/t/system-update-fails-could-not-open-path-to-sync/8088/11 "2025-11-17T13:15:58Z")

</div>

Hi Lluís,

OK, thank you for this.

Yes we based the Mender converted image from the example raspberry pi 4 image from the mender docs website: [Prepare a Raspberry Pi device | Mender documentation](https://docs.mender.io/get-started/preparation/prepare-a-raspberry-pi-device)

Which was 32bit raspios bookworm armhf lite.

So will there be an issue if we continue to use this OS with the mender-client 5.0.1? Will mender-client 5.0.1 continue to work for deployments going forward?

Would there be any issue deploying a 64bit system update with mender client 5.0.3 to a device that is running 32bit OS with Mender client 5.0.1?

Paul

---

<div class="post-metadata">

**Author:** ![user706](https://avatars.discourse-cdn.com/v4/letter/u/ba9def/32.png) [@user706](https://hub.mender.io/u/user706)\
**Post date:** [January 8, 2026, 12:41pm UTC](https://hub.mender.io/t/system-update-fails-could-not-open-path-to-sync/8088/12 "2026-01-08T12:41:25Z")

</div>

Oh, thanks.

So this really is like that, that starting from mender-update 5.0.2 only 64 bit OS is supported??

Because I’m on 32 bit raspberry pi, and running mender-update 5.0.3 and command

`mender-update install myupdate.mender`

results in

```auto
record_id=1 severity=error time="2026-Jan-08 11:45:33.337012" name="Global" msg="No such file or directory: Could not open path to sync: \x08��\x01\x00\x00\x00\x00/mender/modules/v3/payloads/0000/tree/current_device_type" 
Streaming failed.
System not modified.
Could not fulfill request: No such file or directory: Could not open path to sync: \x08��\x01\x00\x00\x00\x00/mender/modules/v3/payloads/0000/tree/current_device_type

```

So is the problem really the mender-update 5.0.3? Do I need to change to mender-update 5.0.1?

By the way: In the release notes of 5.0.2, I can see nothing that suggests that 32 bit OS support has been dropped: [Mender Client | Mender documentation](https://docs.mender.io/release-information/release-notes-changelog/mender-client#mender-5-0-2)

---

<div class="post-metadata">

**Author:** ![user706](https://avatars.discourse-cdn.com/v4/letter/u/ba9def/32.png) [@user706](https://hub.mender.io/u/user706)\
**Post date:** [January 8, 2026, 1:57pm UTC](https://hub.mender.io/t/system-update-fails-could-not-open-path-to-sync/8088/13 "2026-01-08T13:57:38Z")

</div>

If I set  
`MENDER_CLIENT_VERSION=5.0.1` in the config

then

`2026-01-08 13:37:28 [FATAL] [mender-convert-modify] Cannot choose exact version for package mender-client4 5.0.1 from the APT repository`

This is because in

> **[/repos/device-components/pool/main/m/mender-client4](https://downloads.mender.io/repos/device-components/pool/main/m/mender-client4/)**

I cannot find  
`mender-client4_5.0.1-1+debian+bullseye_armhf.deb` (for 32 bit OS)

Why is that missing?

I see [here](https://docs.mender.io/downloads/device-components) that you’ve migrated from  
`old` = `https://downloads.mender.io/repos/debian/pool/main/m/mender-client4/` to  
`new` = `https://downloads.mender.io/repos/device-components/pool/main/m/mender-client4/`

Well in old I can still find `mender-client4_5.0.1-1+debian+bullseye_armhf.deb`

**Please can you make `mender-client4_5.0.1-1+debian+bullseye_armhf.deb` available in `new` repo. Thanks**

In the meantime a hack to handle it is to set the following in the config, to use the old repo

```auto
MENDER_CLIENT_VERSION=5.0.1
MENDER_STORAGE_URL="https://downloads.mender.io"
# old_repo = https://downloads.mender.io/repos/debian/pool/main/m/
# new_repo = https://downloads.mender.io/repos/device-components/pool/main/m/
# currently stay on old_repo, since that still has mender-client4_5.0.1-1+debian+bullseye_armhf.deb
MENDER_APT_REPO_URL="${MENDER_STORAGE_URL}/repos/debian"

```

---

<div class="post-metadata">

**Author:** ![user706](https://avatars.discourse-cdn.com/v4/letter/u/ba9def/32.png) [@user706](https://hub.mender.io/u/user706)\
**Post date:** [January 9, 2026, 10:18am UTC](https://hub.mender.io/t/system-update-fails-could-not-open-path-to-sync/8088/14 "2026-01-09T10:18:36Z")

</div>

What a mess and frustrating experience this all is!

I read this:

> The latest _mender-convert_ also does not support converting 32-bit Raspberry Pi OS images, as the ARMv6 32-bit packages do not exist in the new repositories. (32-bit Raspberry Pi OS images require an older version of _mender-convert_ , and using 64-bit Raspberry Pi OS is recommended.)

from [https://mender.io/blog/new-mender-packaging-and-distribution-channels](https://mender.io/blog/new-mender-packaging-and-distribution-channels)

Well that’s just wrong.  
Raspberry Pi 4 does support ARMv7 code.

It’s just the older models (like like Pi 1 or Pi Zero) that don’t support it.

So in theory the armhf ARMv7 binaries in the new repo should work correctly for 32-bit Raspberry Pi OS images. hmmm…

---

<div class="post-metadata">

**Author:** ![user706](https://avatars.discourse-cdn.com/v4/letter/u/ba9def/32.png) [@user706](https://hub.mender.io/u/user706)\
**Post date:** [January 12, 2026, 8:42am UTC](https://hub.mender.io/t/system-update-fails-could-not-open-path-to-sync/8088/15 "2026-01-12T08:42:53Z")

</div>

mender-update version 5.0.3  
runs on my system: `raspberry pi 4` with `32-bit raspberry pi os bullseye`

`mender-update --version` reports `5.0.3`

`sudo mender-update show-artifact` shows `myim-1.8.8`

But

`sudo mender-update install ./myim-1.8.9.mender`

shows ERROR:

```auto
record_id=1 severity=error time="2026-Jan-12 09:41:06.350798" name="Global" msg="No such file or directory: Could not open path to sync: p��/mender/modules/v3/payloads/0000/tree/current_device_type" 
Streaming failed.
System not modified.
Could not fulfill request: No such file or directory: Could not open path to sync: p��/mender/modules/v3/payloads/0000/tree/current_device_type

```

But `/var/lib/mender/modules/v3/payloads/0000/tree/current_device_type` does exist on my system and contains `raspberrypi4`.

What is going on here?

**Edit: here are my investigations:**

Ok, so probably there really is a problem when using the armv7 version.

Checking your version’s armv7 `/usr/bin/mender-update`

`objdump -f /usr/bin/mender-update` shows

```auto
/usr/bin/mender-update: file format elf32-littlearm
architecture: armv7, flags 0x00000150:
HAS_SYMS, DYNAMIC, D_PAGED
start address 0x0002c10d

```

`readelf -A /usr/bin/mender-update | grep Tag_CPU_arch:` shows

```auto
  Tag_CPU_arch: v7

```

If I build on raspberry pi 4 itself, then mender-update works perfectly (i.e. I do not get junk-characters).

I then compare:

`objdump -f mender-update-mine-built-on-rpi4` shows

```auto
mender-update: file format elf32-littlearm
architecture: armv6, flags 0x00000112:
EXEC_P, HAS_SYMS, D_PAGED
start address 0x0002caac

```

`readelf -A mender-update-mine-built-on-rpi4 | grep Tag_CPU_arch:` shows

```auto
  Tag_CPU_arch: v6

```

And `readelf -A /lib/arm-linux-gnueabihf/libc.so.6 | grep Tag_CPU_arch:` shows

```auto
  Tag_CPU_arch: v6

```

---

<div class="post-metadata">

**Author:** ![lluiscampos](https://yyz2.discourse-cdn.com/flex036/user_avatar/hub.mender.io/lluiscampos/32/112_2.png) [@lluiscampos](https://hub.mender.io/u/lluiscampos)\
**Post date:** [February 5, 2026, 12:52pm UTC](https://hub.mender.io/t/system-update-fails-could-not-open-path-to-sync/8088/16 "2026-02-05T12:52:24Z")

</div>

Hi @user706,

I am sorry that you had such a frustrating experience.

The high level issue is that we at Mender want to create packages maximizing the compatibility for Debian family OSs, not catering only for Raspberry Pi OS.

As you have experienced, Raspberry Pi OS 32 bits hast tweaks in the toolchain to make binaries ARMv6 compatible (which works for ARM v7 too). But that is not what upstream Debian does, there ARM 32 bits is ARM v7.

So after many years cross-compiling custom crafted packages for Raspberry Pi OS 32 bit ARMv6, we moved on to the more standard cross-compiling following Debian policy. Since Raspberry Pi 4, the recommended/promoted OS from the Raspberry Pi foundation is 64 bit anyway, so we think that our decision should be more understandable now.

Anyway, this is more political than technical 🙈 I hope to have clarified/justified it a bit!
