Skip to content

Instantly share code, notes, and snippets.

@ZubairLK
Last active September 25, 2016 14:26
Show Gist options
  • Save ZubairLK/985462b8348c7188b1cbed7fcbcef1c6 to your computer and use it in GitHub Desktop.
Save ZubairLK/985462b8348c7188b1cbed7fcbcef1c6 to your computer and use it in GitHub Desktop.
Making RACHEL-Pi read-only

Notes on making rachel pi work with a read-only filesystem.

A good reference this is based on. https://hallard.me/raspberry-pi-read-only/

List of actions:

  1. Remove logging
sudo apt-get install busybox-syslogd; sudo dpkg --purge rsyslog
  1. Remove some system files and link them in /tmp instead.
sudo rm -rf /var/lib/dhcp/ 
sudo rm -rf /var/run
sudo rm -rf /var/spool
sudo rm -rf /var/lock
sudo ln -s /tmp /var/lib/dhcp;
sudo ln -s /tmp /var/run;
sudo ln -s /tmp /var/spool;
sudo ln -s /tmp /var/lock;
  1. Change path used by dhcpcd to tmpfs one.
sudo sed -i -e 's/run/var\/run/g' /etc/systemd/system/dhcpcd5
  1. Change random seed
sudo rm /var/lib/systemd/random-seed
sudo ln -s /tmp/random-seed /var/lib/systemd/random-seed
sudo sh -c 'echo "ExecStartPre=/bin/echo \"\" >/tmp/random-seed" >> /lib/systemd/system/systemd-random-seed.service'
  1. Change filesystem to be mounted readonly In fstab, add the 'ro' flag for /boot and /. NOT /proc.
sudo nano /etc/fstab

This is what it should look like.

pi@rachel:~$ cat /etc/fstab
proc            /proc           proc    defaults             0       0
/dev/mmcblk0p1  /boot           vfat    defaults,ro          0       2
/dev/mmcblk0p2  /               ext4    defaults,ro,noatime  0       1
# a swapfile is not a swap partition, no line here
#   use  dphys-swapfile swap[on|off]  for that

In /boot/cmdline, add 'noswap ro'

sudo nano /boot/cmdline

This is what my command line looked like.

pi@rachel:~$ cat /boot/cmdline.txt
dwc_otg.lpm_enable=0 console=serial0,115200 console=tty1 root=/dev/mmcblk0p2 rootfstype=ext4 elevator=deadline fsck.repair=yes rootwait noswap ro
pi@rachel:~$
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment