I made a thread years ago about my milking robots, and my attempt to get more “Bare metal” type access to the system for remote management purposes (and for “science”)
To avoid Necro-ing that thread, and considering I just made a Significant leap forward, I have created this new thread. (mods feel free to smack me if I shouldn’t have)
Where we left off before:
The robots had an exposed ssh server on port 22
a read-only VNC session (no password) on port 5900
and port 6000 was open.
I was able to connect to the vnc server, and then send mouse commands by using ‘xdotool’ and pointing it at $IPADDR:6000
this was slow but workable in emergencies, but it always felt very rube-goldberg.
Recently I have been gifted the password for a root shell over ssh
Naturally I logged in and fired up x11vnc…
well, first I had to find it ./usr/Lely/vnc/x11vnc
and then a simple LD_LIBRARY_PATH=/usr/Lely/vnc was required as well.
Now I have a x11vnc session on port 5901 as well.
Unfortunately, it seems to also be read-only.
The startup of x11vnc provides a lot of information, including:
04/03/2020 08:50:08 WARNING: XTEST extension not available (either missing from
04/03/2020 08:50:08 display or client library libXtst missing at build time).
04/03/2020 08:50:08 MOST user input (pointer and keyboard) will be DISCARDED.
04/03/2020 08:50:08 If display does have XTEST, be sure to build x11vnc with
04/03/2020 08:50:08 a working libXtst build environment (e.g. libxtst-dev,
04/03/2020 08:50:08 or other packages).
04/03/2020 08:50:08 No XTEST extension, switching to -xwarppointer mode for
04/03/2020 08:50:08 pointer motion input.
Am I right to assume that missing XTEST is causing my clicks not to register? > More imortantly, how would one go about installing that on an embedded system…
The good news is I do have 458 Megabytes of available space.
First, the thing to figure out is what type of Linux it is, and what CPU architecture it is.
Things to try, idk what will be available. uname -a lsb_release -a hostnamectl
List content of these files, if they exist, cat is easy to do so with. /proc/version /etc/os-release
Ask and I shall provide!
~ # cat /proc/version
Linux version 3.3.0-rc2+ (david@archvile) (gcc version 4.4.1 (Sourcery G++ Lite 2010q1-202) ) #233 PREEMPT Wed May 23 15:59:09 CEST 2012
~ # uname -a
Linux lelxdh1 3.3.0-rc2+ #233 PREEMPT Wed May 23 15:59:09 CEST 2012 armv7l unknown
Well, it is good that it has a package manager, however, the repository might be down now. http://feeds.angstrom-distribution.org/feeds/ does not have 2010.7, but only newer versions. Hopefully, there is a feed URL in a file in /etc/opkg/that is still up.
XTEST support in x11vnc seems to be a compile time option from the output above. So to get support for it, you will have to recompile x11vnc with libxtst available. The package is probably called libxtst-dev.
If this version was custom compiled, the default angstrom linux build of x11vnc may support xtest. In this case, you can just install that over the original binary.
Also, this point is a great opportunity to get a backup of the drive before any changes are made. There are a number of ways to do so, not sure what commands are available (SCP, tar, rsync, dd, others).
There are a lot of feeds apparenty.
/etc/opkg # ls
arch.conf debug-feed.conf noarch-feed.conf sdk-feed.conf
base-feed.conf gstreamer-feed.conf perl-feed.conf
beagleboard-feed.conf locale-en-feed.conf python-feed.conf
All of those urls are dead, however, it looks like they just changed it to a subdomain. The versioning of the unstable instead of an actual version is not ideal, but most of the packages have late 2010 - early 2011 upload dates. So they should be for the same version you have, and not a constantly updated version like say Debian unstable.
Replace all instances of www.angstrom-distribution.org with feeds.angstrom-distribution.org to make it work.
on my laptop, and plugged it into the robot network. Copied the .ipk file with SCP onto the robot.
Naturally, it decided there were dependencies. libxi6, libxtst6, recordproto, recordproto-dev, utilmacros-dev (libxtst-dev didn’t depend on all of them, but the dependencies had dependencies)
I downloaded a lot of these relevant files as well, but it seems to more dependies I download, the more I require.
If not, do I just download it all onto my PC, and shove it ito a folder served by apache, ? then replace my feeds with http://my-ip/feeds/unstable/ipg … etc?
Hi Mandrewoid, did you get any further here? I’ve been scratching my head on this for over a year as well (2 A4’s, one running Angström, the other Debian it seems, since a cow demolished the original touchscreen). I have terminal root access, I’ve altered config files as far as I deemed safe, but can’t get it to work yet.
We’ve been working on it on the hak5 forums as well, but no luck yet…