25'ten fazla konu seçemezsiniz Konular bir harf veya rakamla başlamalı, kısa çizgiler ('-') içerebilir ve en fazla 35 karakter uzunluğunda olabilir.
StuartIanNaylor 313871105d
Update README.md
5 yıl önce
LICENSE Update 7 yıl önce
README.md Update README.md 5 yıl önce
install.sh exclude oldlog initial copy 5 yıl önce
log2ram --exclude oldlog comment 5 yıl önce
log2ram-lastcheck Add oldlog funct 5 yıl önce
log2ram.conf Tweak Prune conf level 5 yıl önce
log2ram.hourly Use env instead of /bin/sh 6 yıl önce
log2ram.logrotate Removed unneeded postrotate support 7 yıl önce
log2ram.service Add oldlog funct 5 yıl önce
uninstall.sh Add oldlog funct 5 yıl önce

README.md

Log2Zram

Usefull for IoD / maker projects for reducing SD, Nand and Emmc block wear via log operations. Uses Zram to minimise precious memory footprint and extremely infrequent write outs.

Log2Zam is a lower write fork https://github.com/azlux/log2ram based on transient log for Systemd here : A transient /var/log

Can not be used for mission critical logging applications where a system crash and log loss is unaceptable. If the extremely unlikely event of a system crash is not a major concern then L2Z can massively reduce log block wear whilst maintinaing and extremely tiny memory footprint.


Menu

  1. Install
  2. Upgrade
  3. Customize
  4. It is working ?
  5. Uninstall

Install

curl -Lo log2ram.tar.gz https://github.com/azlux/log2ram/archive/master.tar.gz
tar xf log2ram.tar.gz
cd log2ram-master
chmod +x install.sh && sudo ./install.sh
cd ..
rm -r log2ram-master

REBOOT before installing anything else (for example apache2)

Upgrade

You need to stop log2ram (service log2ram stop) and start the install.

Customize

variables :

In the file /etc/log2ram.conf, there are three variables:

  • SIZE: defines the size the log folder will reserve into the RAM (default is 40M).
  • USE_RSYNC: Can be set to true if you prefer ´rsync´ rather than ´cp´. I use the command cp -u and rsync -X, I don’t copy the all folder every time for optimization.
  • MAIL: Disables the error system mail if there is not enough place on RAM (if set to false)

refresh time:

By default Log2Ram writes to the HardDisk every hour. If you think this is too much, you can make the write every day by moving the cron file to daily: sudo mv /etc/cron.hourly/log2ram /etc/cron.daily/log2ram.

It is working?

You can now check the mount folder in ram with (You will see lines with log2ram if working)

# df -h
…
log2ram          40M  532K   40M   2% /var/log
…

# mount
…
log2ram on /var/log type tmpfs (rw,nosuid,nodev,noexec,relatime,size=40960k,mode=755)
…

Testing

sudo service log2ram reload

Checks PRUNE_LEVEL < available free space if true will move and clean /var/log/oldlog to hdd.log

sudo logrotate -vf /etc/logrotate.conf

Force the daily logrotate with verbose output

If you have issue with apache2, you can try to add apache2.service next to other services on the Before parameter in /etc/systemd/system/log2ram.service it will solve the pb

The log for log2ram will be written at: /var/log/log2ram.log

Compressor name Ratio Compression Decompress.
zstd 1.3.4 -1 2.877 470 MB/s 1380 MB/s
zlib 1.2.11 -1 2.743 110 MB/s 400 MB/s
brotli 1.0.2 -0 2.701 410 MB/s 430 MB/s
quicklz 1.5.0 -1 2.238 550 MB/s 710 MB/s
lzo1x 2.09 -1 2.108 650 MB/s 830 MB/s
lz4 1.8.1 2.101 750 MB/s 3700 MB/s
snappy 1.1.4 2.091 530 MB/s 1800 MB/s
lzf 3.6 -1 2.077 400 MB/s 860 MB/s
Now, muffins for everyone!

Uninstall :(

(Because sometime we need it)

chmod +x /usr/local/bin/uninstall-log2ram.sh && sudo /usr/local/bin/uninstall-log2ram.sh

Also /var/oldlog contains the pruned logs from install delete if not required (prob not)