All seems to be going well, one issue I’ve hit is that apache2 doesn’t want to run when in RO mode. It runs fine when in RW mode. The logs don’t give any indication as to why it won’t run, or what file it’s failing to write. Any ideas?
pi@emonpi(ro):~$ systemctl status apache2.service
● apache2.service - The Apache HTTP Server
Loaded: loaded (/lib/systemd/system/apache2.service; enabled; vendor preset: enabled)
Active: failed (Result: resources)
May 17 15:30:24 emonpi systemd[1]: apache2.service: Failed with result 'resources'.
May 17 15:37:25 emonpi systemd[1]: apache2.service: Failed to run 'start' task: Read-only file system
May 17 15:37:25 emonpi systemd[1]: Failed to start The Apache HTTP Server.
May 17 15:37:25 emonpi systemd[1]: apache2.service: Failed with result 'resources'.
May 17 15:47:09 emonpi systemd[1]: apache2.service: Failed to run 'start' task: Read-only file system
May 17 15:47:09 emonpi systemd[1]: Failed to start The Apache HTTP Server.
May 17 15:47:09 emonpi systemd[1]: apache2.service: Failed with result 'resources'.
May 17 15:49:35 emonpi systemd[1]: apache2.service: Failed to run 'start' task: Read-only file system
May 17 15:49:35 emonpi systemd[1]: Failed to start The Apache HTTP Server.
May 17 15:49:35 emonpi systemd[1]: apache2.service: Failed with result 'resources'.
@glyn.hudson, what is the rationale behind upgrading from Jessie, instead of starting with a clean ‘stretch’ OS?
I would have thought that the latter would be preferable…
There is another method for making an image for the Pi3B+ too - I do this with my own project;
Essentially you can drop the Stretch kernel, firmware and modules into Jessie, add the boot code from the new stretch build and have a working Jessie image on a Pi3B+
It may not be totally ideal for a long-term solution, but it will get you onto the Pi 3B+ hardware really quickly.
I went through this whole process a month ago but with a view to making the whole of var a tmpfs…
The reason for this is that strictly systemd requires /var to be RW . Largely everything works under this approach due to the systemd-itisation of Debian, but there are a few things which it broke which I think I have mostly fixed now.
One thing to note from this which may be relevant for what you are doing is that systemd has a facility for creating files at runtime called systemd-tmpfiles.