ramlog like for systemd (Put log into a ram folder)
Go to file
zador-blood-stained 01632f9cb1 Update service dependencies to start on early boot
This changes log2ram dependencies to start as early as possible, before other
services that may require access to /var/log, including rsyslog and
systemd-journald.

Additional dependencies on shutdown.target are required to ensure that
the service will be stopped at shutdown/reboot when DefaultDependencies
is set to "no" [1].

RequiresMountsFor declares dependency on /var mount when it is a mount point.

IgnoreOnIsolate prevents stopping the service when isolating another unit.

[1]: https://www.freedesktop.org/software/systemd/man/systemd.service.html
2017-04-11 20:47:02 +03:00
LICENSE Initial commit 2016-04-18 11:58:32 +02:00
README.md Warning added 2017-04-11 18:57:52 +02:00
install.sh Sync the ramlog back to disk, hourly. 2016-11-30 11:41:41 -06:00
log2ram Remove log2ram log on startup, add usage. (#9) 2016-12-02 01:26:09 +01:00
log2ram.hourly Sync the ramlog back to disk, hourly. 2016-11-30 11:41:41 -06:00
log2ram.service Update service dependencies to start on early boot 2017-04-11 20:47:02 +03:00

README.md

Log2Ram

Like ramlog for systemd (on debian 8 jessie for example).

Usefull for Raspberry for not writing all the time on the SD card. You need it because your SD card don't want to suffer anymore !

The script log2ram can work on every linux system. So you can use it with your own daemon manager if you don't have systemd.

Log2Ram is based on transient log for Systemd here : A transient /var/log

Install

git clone https://github.com/azlux/log2ram.git
cd log2ram
chmod +x install.sh
sudo ./install.sh

into /usr/local/bin/log2ram

  • You can change the SIZE variable if necessary
  • If you prefer to use rsync, you can set the USE_RSYNC variable to true

###############

If you install other services who need a /var/log folder (like mysql, apache, nginx) don't forget to run sudo /usr/local/bin/log2ram write to be sure the folder will exist if you reboot before one hour after the log2ram install. The best way is to install log2ram after all other

##############

Customize

services :

If you open the file /etc/systemd/system/log2ram.service , you will see a line starting by Before=, you can list here the services who need to start after log2ram. You will need to change this line when a service start too fast and stop running because log2ram mount a ram folder where it has start to write log.

For example, If you use apache instead of nginx, add apache2.service into this line.

variables :

Into the file log2ram (or /usr/local/bin/log2ram if you have already installed it), there are two variables into the script : SIZE=40M and USE_RSYNC=false

The first variable define the size the log folder will reserve into the RAM.

The second variable can be set to true if you prefer "rsync" than "cp".

###It is working ? You can now check the mount folder in ram with

df -h
mount

By default, the program will write log into the HardDisk every hour and the log for log2ram will be write here : /var/log.hdd/log2ram.log

######Now, muffins for everyone !