Make logs persistent over reboot and cleanup (#61)

* Create hassos-persists-journald

* Create hassos-persists-journald.service

* Set ln & permission

* Enable persists journald

* Update hassos-persists-journald
This commit is contained in:
Pascal Vizeli 2018-07-02 01:05:21 +02:00 committed by GitHub
parent 7d4b424d2f
commit 11b1946cd7
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 44 additions and 0 deletions

View File

@ -0,0 +1 @@
/usr/lib/systemd/system/hassos-persists-journald.service

View File

@ -0,0 +1,14 @@
[Unit]
Description=HassOS persists journald
Requires=var-log-journal.mount
After=sysinit.target systemd-journald.service
RefuseManualStart=true
RefuseManualStop=true
[Service]
Type=oneshot
ExecStart=/usr/sbin/hassos-persists-journald
RemainAfterExit=true
[Install]
WantedBy=multi-user.target

View File

@ -0,0 +1,29 @@
#!/bin/sh
set -e
MACHINE_ID=$(cat /etc/machine-id)
CURRENT_LOGS=/var/log/journal/${MACHINE_ID}
# Cleanup
if [ ! -d ${CURRENT_LOGS} ];
rm -rf /var/log/journal/*
exit 0
fi
# Loop all logs folder and move
for log_folder in /var/log/journal/*; do
# Not a log folder
if [ ! -d ${log_folder} ]; then
continue
fi
# Current log folder
if (echo ${log_folder} | grep ${MACHINE_ID}); then
continue
fi
mv ${log_folder}/* ${CURRENT_LOGS}/
rm -rf ${log_folder}
done
journalctl --vacuum-size=20M