Meshcentral: Alpine Linux Compatibility

Created on 28 Jan 2021  路  13Comments  路  Source: Ylianst/MeshCentral

Hey all,

I'm testing out Alpine Linux as an alternative docker/webserver and discovered the meshagent doesn't seem to want to run. I get ./meshagent: not found as a result. I know the way alpine runs is different, so I wouldn't be surprised if I'm missing something simple. Just wondering if anyone here has alpine experience and knows what could fix it.

Not a biggie if it's a no go.

Fixed - Confirm & Close question

All 13 comments

You probably got a agent binary that is not compatible with your OS or CPU. If you login to your MeshCentral server, change the URL to /meshagents. You will see a list of agent binaries you can download and try. It's possible the install script got the wrong one.

Let me know if that works.

Just went through every linux (non-arm) based binary... most gave the same output, some gave cannot execute binary file: Exec format error

A quick google of Alpine linux, shows that distro does not use glibc, it uses musl. That's probably why it's not working... The same thing happens if you try to use a glibc agent build on openwrt, which is also musl based... I'll have to get or make a toolchain for alpine it looks like... Do you happen to have a link to an ova file or an iso so that I can run alpine in a vm?

Ok, I was right... I got Alpine working in a VM, and verified that I need to recompile specifically for Alpine, as it doesn't work with any libraries compiled for glibc. I have a version working on Alpine that I just compiled, tho I still need to compile OpenSSL for it... After I get it done, I can have @Ylianst add it to the server.. Once I get it all working, I'll look at building a toolchain for it, so I don't have to compile using Alpine directly.

Wow... thank you @krayon007 ! You majorly kick a$$!!

I've been finding more and more for my headless no-gui linux boxes, I prefer hopping into a shell thru MeshCentral over ssh... especially since everything I connect to is now centralized. Thank you again

Oh wow!!! Bryan texted me earlier to say he had Alpine Linux already compiled... I was blown away!! Bryan has a HUGE drive full of VM's that he uses for testing and compiling the MeshAgent. No way I would have that sort of speed to install a new OS, get the code over to it and compile/test it. At Bryan's request, I updated the server to support the new binary when it arrives.

Wow... thank you @krayon007 ! You majorly kick a$$!!

I've been finding more and more for my headless no-gui linux boxes, I prefer hopping into a shell thru MeshCentral over ssh... especially since everything I connect to is now centralized. Thank you again

So far everything seems to work out of the box. I just need to figure out why the service doesn't auto start after a reboot.

That is so awesome! I think from now on I'm going to make my future docker servers/VM's Alpine server. All of the web services I've got running now on this old 4GB i3 definitely seem a lot snappier than when I was running them on Ubuntu... altho it's hard to imagine a slim server with a 140mb install wouldn't be fast :P

Quick note that last night MeshCentral v0.7.58 was published and it includes Bryan's latest Linux Alpine Mesh Agent. You will find it in the list when going to /meshagents. If you happen to run a v0.7.57 MeshCentral, that version has a Alpine agent, but don't use that version. Make sure to use the one in v0.7.58. Let us know if it works for you.

The 'ps' console command doesn't work in the current Alpine agent version, but I already fixed that. It will be in the next agent update.

The 'ps' console command doesn't work in the current Alpine agent version, but I already fixed that. It will be in the next agent update.

Ok, this is fixed in server version v0.7.59

Awesome guys, it's working like a champ...

btw, the add agent command doesn't quite work. I had to manipulate the meshinstall script to replace the id=6 with id=33.

Otherwise it seems to be working perfectly. Thanks again!

Awesome guys, it's working like a champ...

btw, the add agent command doesn't quite work. I had to manipulate the meshinstall script to replace the id=6 with id=33.

Otherwise it seems to be working perfectly. Thanks again!

Oh yeah, I forgot to mention the install script wouldn't work, because normally the script only detects cpu architecture and OS. But in this case, that doens't work, because Alpine is still a linux, but using a different runtime library.... But if you download the binary installer, it should work.

Was this page helpful?
0 / 5 - 0 ratings

Related issues

haxmachine picture haxmachine  路  3Comments

robclay picture robclay  路  3Comments

petervanv picture petervanv  路  3Comments

M1CK431 picture M1CK431  路  3Comments

coolwormgit picture coolwormgit  路  3Comments