Issues with Raspberry Pi 3

Hello @MarekBelisko @mirzak @drewmoseley, i want to do set a static ip to my raspberryn in which file can i do it ?

Use something like that:

[Match]
Name=eth0
[Network]
# static IP
# 192.168.100.2 netmask 255.255.255.0
Address=192.168.100.2/24
Gateway=192.168.100.1
DNS=192.168.100.1

Thank you @MarekBelisko. I tried this configuration but nothings seems to be changed before anf after a reboot , i checked this by runing ifconfig -a

Otherwise i would like to know how to synchronize the clock because the system clock isn’t synchronized, i checked by runing timedatectl status.

Thank you

What do you mean nothing was changed? By means of IP address assigned? Above configuration should work (maybe try to update Name=enp* in my example). Just noted it now that in original one was used this one.

This is what i wrote on enp.network

[Match]
Name=eth0
[Network]
# static IP
# 192.168.100.2 netmask 255.255.255.0
Address=192.168.100.2/24
Gateway=192.168.100.1
DNS=192.168.100.1

Instead i run : ip add add 192.168.100.2/24 dev eth0

This command changes my ip adress

Otherwise have you an idea about how to synchronize the clock ?

Thank you

try to update to:

Name=enp*

and see if it works. For time synchronization there should be present systemd service (or ntpdate). But if you are not connected to internet then it will not work.

Ok @MarekBelisko

When i run systemctll status menderit returns Autorization request to mender Docker failed, it means that i can’t connect to mender server which is the case because i can’t see my device pending on the UI.
I am confused because Mender server is local on my host and i can ping to the ip address of my host and s3.docker.mender.io and docker.mender.io do have the same ip address as my host.

What do you think this isuue is due to ?

Thank you

Probably because wrong time on RPI as certification verification need precise and actual time on platform.

SO i should be connected to internet to synchronize ?

Yes. Correct time is required for certificate processing. See https://docs.mender.io/2.0/troubleshooting/mender-client#certificate-expired-or-not-yet-valid for more details.

Also, regarding network configuration with the enp.network file as discussed above, that assumes you are using systemd-networkd for network management. This is the default if you use the meta-mender-demo layer but it may be different in your system depending on configuration. The following commands should confirm if you are running this configuration and have time syncing configured through systemd:

# systemctl status systemd-networkd
# systemctl status systemd-timesyncd
# timedatectl

Other packages that can replace systemd-networkd are connman and NetworkManager (and likely others that I’m unware of. To determine if either of these are running:

# systemctl status connman
# systemctl status NetworkManager

Thank you @drewmoseley, i will try this commands.

My question is : is it ok to use the command ip addr add x.x.x./y dev eth0 to configure an ethernet ip adress ?

and how the raspberry is supposed to do the pull in for an update ? is there any commad to enable the pull in ?

THank you

I think using the ‘ip addr’ command will work just fine but systemd may take control back and try to set it up based on how you have the enp.network file configured. Maybe doing “systemctl stop systemd-networkd” will work around that but I’ve not tested it.

The Mender client is setup to run as a daemon and periodically checks the server for updates so you don’t need to do anything to trigger on the client side. Once a deployment is created in the Web UI then it will happen on the next device poll.

Hello @drewmoseley
systemctl status systemd-networkd # systemctl status systemd-timesyncd # systemctl status connman # status NetworkManager return => Unit service could not be found.

timedatectl returns date but not the right local time,
Also returns system clock synchronized : yes
NTP service: active
RTC in local TZ: no

Those systemctl status commands should all be run separately to determine your configuration.

Exactly i run them separately and they return the same thing

which means these services are not found

Yeah, that’s not surprising. I assume your system is using systemd-networkd unless you have explicitly changed it.

Ok thanks @drewmoseley i will check that. I would like to know which ports are used in the raspberry to communicate with the server ( send and receive ) ?

Thank you

Details are here: https://docs.mender.io/2.0/getting-started/deploy-to-physical-devices#network-connectivity
There are no open ports required on the client.

Thanks @drewmoseley. Do you have an idea about this command in the trouble shooting section:
echo | openssl s_client -connect mender.example.com:443 2>/dev/null | openssl x509 -noout -dates

Is the s_client my raspberry pi 3 and mender.example.com the id of my mender user ?

Thanks