mirror of
https://github.com/azlux/log2ram.git
synced 2023-10-10 13:37:24 +02:00
[FEATURE] Replaces CRON usages by a proper systemd timer
Merge pull request #117 from HorlogeSkynet/feature/systemd_timer
This commit is contained in:
commit
ef291999ba
@ -47,7 +47,13 @@ In the file `/etc/log2ram.conf`, there are three variables:
|
|||||||
- `ZL2R`: Enable zram compatibility (`false` by default). Check the comment on the config file. See https://github.com/StuartIanNaylor/zram-swap-config to configure a zram space on your raspberry before enable this option.
|
- `ZL2R`: Enable zram compatibility (`false` by default). Check the comment on the config file. See https://github.com/StuartIanNaylor/zram-swap-config to configure a zram space on your raspberry before enable this option.
|
||||||
|
|
||||||
#### refresh time:
|
#### refresh time:
|
||||||
By default Log2Ram writes to the HardDisk every day. If you think this is too much, you can move `/etc/cron.daily/log2ram` in an other cron folder, or remove it if you prefer writing logs only at stop/reboot.
|
By default Log2Ram writes to disk every day. If you think this is too much, you can run `systemctl edit log2ram-daily.timer` and add:
|
||||||
|
|
||||||
|
```ini
|
||||||
|
[Timer]
|
||||||
|
OnCalendar=weekly
|
||||||
|
```
|
||||||
|
... or even disable it with `systemctl disable log2ram-daily.timer`, if you prefer writing logs only at stop/reboot.
|
||||||
|
|
||||||
### It is working?
|
### It is working?
|
||||||
You can now check the mount folder in ram with (You will see lines with log2ram if working)
|
You can now check the mount folder in ram with (You will see lines with log2ram if working)
|
||||||
|
@ -23,12 +23,13 @@ rm -rf "$DESTDIR" "$OUTDIR"
|
|||||||
## log2ram
|
## log2ram
|
||||||
# Create directory
|
# Create directory
|
||||||
install -Dm 644 "$STARTDIR/log2ram.service" "$DESTDIR/etc/systemd/system/log2ram.service"
|
install -Dm 644 "$STARTDIR/log2ram.service" "$DESTDIR/etc/systemd/system/log2ram.service"
|
||||||
|
install -Dm 644 "$STARTDIR/log2ram-daily.service" "$DESTDIR/etc/systemd/system/log2ram-daily.service"
|
||||||
|
install -Dm 644 "$STARTDIR/log2ram-daily.timer" "$DESTDIR/etc/systemd/system/log2ram-daily.timer"
|
||||||
install -Dm 755 "$STARTDIR/log2ram" "$DESTDIR/usr/local/bin/log2ram"
|
install -Dm 755 "$STARTDIR/log2ram" "$DESTDIR/usr/local/bin/log2ram"
|
||||||
install -Dm 644 "$STARTDIR/log2ram.conf" "$DESTDIR/etc/log2ram.conf"
|
install -Dm 644 "$STARTDIR/log2ram.conf" "$DESTDIR/etc/log2ram.conf"
|
||||||
install -Dm 644 "$STARTDIR/uninstall.sh" "$DESTDIR/usr/local/bin/uninstall-log2ram.sh"
|
install -Dm 644 "$STARTDIR/uninstall.sh" "$DESTDIR/usr/local/bin/uninstall-log2ram.sh"
|
||||||
|
|
||||||
# cron
|
# logrotate
|
||||||
install -Dm 755 "$STARTDIR/log2ram.cron" "$DESTDIR/etc/cron.daily/log2ram"
|
|
||||||
install -Dm 644 "$STARTDIR/log2ram.logrotate" "$DESTDIR/etc/logrotate.d/log2ram"
|
install -Dm 644 "$STARTDIR/log2ram.logrotate" "$DESTDIR/etc/logrotate.d/log2ram"
|
||||||
|
|
||||||
# Build .deb
|
# Build .deb
|
||||||
|
2
debian/postinst
vendored
2
debian/postinst
vendored
@ -2,7 +2,7 @@
|
|||||||
set -euo pipefail
|
set -euo pipefail
|
||||||
|
|
||||||
systemctl daemon-reload
|
systemctl daemon-reload
|
||||||
systemctl enable log2ram
|
systemctl enable log2ram.service log2ram-daily.timer
|
||||||
|
|
||||||
if [ "$1" == "configure" ]; then
|
if [ "$1" == "configure" ]; then
|
||||||
echo "##### Reboot to activate log2ram #####"
|
echo "##### Reboot to activate log2ram #####"
|
||||||
|
3
debian/preinst
vendored
3
debian/preinst
vendored
@ -1,6 +1,7 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
|
|
||||||
systemctl -q is-active log2ram && systemctl stop log2ram
|
systemctl -q is-active log2ram.service && systemctl stop log2ram.service
|
||||||
|
systemctl -q is-active log2ram-daily.timer && systemctl stop log2ram-daily.timer
|
||||||
rm -rf /var/hdd.log
|
rm -rf /var/hdd.log
|
||||||
|
|
||||||
exit 0
|
exit 0
|
||||||
|
6
debian/prerm
vendored
6
debian/prerm
vendored
@ -1,12 +1,12 @@
|
|||||||
#!/usr/bin/env bash
|
#!/usr/bin/env bash
|
||||||
case "$1" in
|
case "$1" in
|
||||||
upgrade)
|
upgrade)
|
||||||
[ -d /run/systemd/system/ ] && systemctl stop log2ram
|
[ -d /run/systemd/system/ ] && systemctl stop log2ram.service log2ram-daily.timer
|
||||||
exit 0
|
exit 0
|
||||||
;;
|
;;
|
||||||
*)
|
*)
|
||||||
[ -d /run/systemd/system/ ] && systemctl stop log2ram
|
[ -d /run/systemd/system/ ] && systemctl stop log2ram.service log2ram-daily.timer
|
||||||
[ -d /run/systemd/system/ ] && systemctl disable log2ram
|
[ -d /run/systemd/system/ ] && systemctl disable log2ram.service log2ram-daily.timer
|
||||||
exit 0
|
exit 0
|
||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
|
14
install.sh
14
install.sh
@ -6,14 +6,20 @@ systemctl -q is-active log2ram && { echo "ERROR: log2ram service is still runni
|
|||||||
# log2ram
|
# log2ram
|
||||||
mkdir -p /usr/local/bin/
|
mkdir -p /usr/local/bin/
|
||||||
install -m 644 log2ram.service /etc/systemd/system/log2ram.service
|
install -m 644 log2ram.service /etc/systemd/system/log2ram.service
|
||||||
|
install -m 644 log2ram-daily.service /etc/systemd/system/log2ram-daily.service
|
||||||
|
install -m 644 log2ram-daily.timer /etc/systemd/system/log2ram-daily.timer
|
||||||
install -m 755 log2ram /usr/local/bin/log2ram
|
install -m 755 log2ram /usr/local/bin/log2ram
|
||||||
install -m 644 log2ram.conf /etc/log2ram.conf
|
install -m 644 log2ram.conf /etc/log2ram.conf
|
||||||
install -m 644 uninstall.sh /usr/local/bin/uninstall-log2ram.sh
|
install -m 644 uninstall.sh /usr/local/bin/uninstall-log2ram.sh
|
||||||
systemctl enable log2ram
|
systemctl enable log2ram.service log2ram-daily.timer
|
||||||
|
|
||||||
# cron
|
# logrotate
|
||||||
install -m 755 log2ram.cron /etc/cron.daily/log2ram
|
if [ -d /etc/logrotate.d ]; then
|
||||||
install -m 644 log2ram.logrotate /etc/logrotate.d/log2ram
|
install -m 644 log2ram.logrotate /etc/logrotate.d/log2ram
|
||||||
|
else
|
||||||
|
echo "##### Directory /etc/logrotate.d does not exist. #####"
|
||||||
|
echo "##### Skipping log2ram.logrotate installation. #####"
|
||||||
|
fi
|
||||||
|
|
||||||
# Remove a previous log2ram version
|
# Remove a previous log2ram version
|
||||||
rm -rf /var/log.hdd
|
rm -rf /var/log.hdd
|
||||||
|
6
log2ram-daily.service
Normal file
6
log2ram-daily.service
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
[Unit]
|
||||||
|
Description=Daily Log2Ram writing activities
|
||||||
|
After=log2ram.service
|
||||||
|
|
||||||
|
[Service]
|
||||||
|
ExecStart=/usr/bin/systemctl reload log2ram.service
|
9
log2ram-daily.timer
Normal file
9
log2ram-daily.timer
Normal file
@ -0,0 +1,9 @@
|
|||||||
|
[Unit]
|
||||||
|
Description=Daily Log2Ram writing activities
|
||||||
|
|
||||||
|
[Timer]
|
||||||
|
OnCalendar=daily
|
||||||
|
Persistent=true
|
||||||
|
|
||||||
|
[Install]
|
||||||
|
WantedBy=timers.target
|
@ -1,3 +0,0 @@
|
|||||||
#!/usr/bin/env sh
|
|
||||||
|
|
||||||
systemctl reload log2ram
|
|
11
uninstall.sh
11
uninstall.sh
@ -1,6 +1,6 @@
|
|||||||
#!/usr/bin/env sh
|
#!/usr/bin/env sh
|
||||||
|
|
||||||
if dpkg -l log2ram ; then
|
if dpkg -l log2ram 2> /dev/null; then
|
||||||
echo "Please run : apt remove log2ram"
|
echo "Please run : apt remove log2ram"
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
@ -8,13 +8,12 @@ fi
|
|||||||
if [ "$(id -u)" -eq 0 ]
|
if [ "$(id -u)" -eq 0 ]
|
||||||
then
|
then
|
||||||
echo "Not apt installed. Remove will continue with this script..."
|
echo "Not apt installed. Remove will continue with this script..."
|
||||||
service log2ram stop
|
systemctl stop log2ram.service log2ram-daily.timer
|
||||||
systemctl disable log2ram
|
systemctl disable log2ram.service log2ram-daily.timer
|
||||||
rm /etc/systemd/system/log2ram.service
|
rm -rf /etc/systemd/system/log2ram*
|
||||||
rm /usr/local/bin/log2ram
|
rm /usr/local/bin/log2ram
|
||||||
rm /etc/log2ram.conf
|
rm /etc/log2ram.conf
|
||||||
rm /etc/cron.daily/log2ram
|
rm -f /etc/logrotate.d/log2ram
|
||||||
rm /etc/logrotate.d/log2ram
|
|
||||||
|
|
||||||
if [ -d /var/hdd.log ]; then
|
if [ -d /var/hdd.log ]; then
|
||||||
rm -r /var/hdd.log
|
rm -r /var/hdd.log
|
||||||
|
Loading…
Reference in New Issue
Block a user