====== Ubuntu - Disk - Ramdisk - Persisting Ramdisk Data ======
A Ramdisk is a temporary storage device.
When the computer is shutdown all the data within the Ramdisk is erased.
To ensure this data is retained, the approach taken here is:
* Save Ramdisk data to hard drive on system shutdown.
* Load data from hard drive to Ramdisk on system boot.
**NOTE:** The syncing from the Ramdisk to the hard disk and vice-versa will be slow, but at least the data will be stored permanently.
* In essence, the Ramdisk acts here as a cache.
----
===== Create backup directory =====
Create a directory where the Ramdisk data will be saved on system shutdown:
sudo mkdir /mnt/ramdisk_backup
----
===== Create a system service file =====
vi /lib/systemd/system/ramdisk-sync.service
and populate with:
[Unit]
Before=umount.target
[Service]
Type=oneshot
User=root
ExecStartPre=/bin/chown -Rf peter /mnt/ramdisk/
ExecStart=/usr/bin/rsync -ar /mnt/ramdisk_backup/ /mnt/ramdisk/
ExecStop=/usr/bin/rsync -ar /mnt/ramdisk/ /mnt/ramdisk_backup/
ExecStopPost=/bin/chown -Rf peter /mnt/ramdisk_backup
RemainAfterExit=yes
[Install]
WantedBy=multi-user.target
**NOTE:** The directory where the Ramdisk is mounted and where the backup data will be saved must have the same file permissions.
----
===== Enable the ramdisk-sync service =====
sudo systemctl enable ramdisk-sync.service
**NOTE:** The ramdisk-sync service will start automatically on system boot.
----
===== Reboot =====
sudo reboot
----
===== Check whether the ramdisk-sync service is running =====
sudo systemctl status ramdisk-sync
----
===== Check the contents of the /mnt/ramdisk and /mnt/ramdisk_backup directories =====
ls /mnt/ramdisk{,_backup}
**NOTE:** Both should be empty.
----
===== Test =====
Copy some files to the Ramdisk /mnt/ramdisk.
Reboot again.
Check again the contents of both the /mnt/ramdisk and /mnt/ramdisk_backup directories.
* They should be the same!
----