mirror of
https://github.com/freedombox/FreedomBox.git
synced 2026-05-20 10:34:30 +00:00
config: Disable rsyslog and syslog forwarding
Helps: #664. Currently, logs are written to disk twice, once by journald and once by rsyslog. rsyslog may log to multiple locations depending on the type of the log. To reduce disk I/O, disable rsyslog and rely solely on systemd journal. Place the code in config module as there is no better place for it currently without creating a new module. Can be sorted later. The following files under /var/log/ are no longer populated on FreedomBox. They will be rotated away over a few days. Use journalctl instead to view the messages: - syslog - messages* - auth.log* - debug* - daemon.log - kern.log - lpr.log - mail.log - mail.info - mail.warn - mail.err - user.log Tests performed: - On a machine with rsyslog running, run ./setup.py install and start FreedomBox service. This triggers the config app's setup. rsyslog is disabled and masked. systemd-journald is restarted. - Even when rsyslog is unmaked and enabled manually, systemd journald does not forward message to syslog anymore. Signed-off-by: Sunil Mohan Adapa <sunil@medhas.org> Reviewed-by: Veiko Aasa <veiko17@disroot.org>
This commit is contained in:
parent
ee991dbab8
commit
2d30312b10
@ -12,15 +12,17 @@ from django.utils.translation import ugettext_lazy as _
|
|||||||
from plinth import actions
|
from plinth import actions
|
||||||
from plinth import app as app_module
|
from plinth import app as app_module
|
||||||
from plinth import frontpage, menu
|
from plinth import frontpage, menu
|
||||||
from plinth.modules.apache import (user_of_uws_url, uws_url_of_user,
|
from plinth.modules.apache import (get_users_with_website, user_of_uws_url,
|
||||||
get_users_with_website)
|
uws_url_of_user)
|
||||||
from plinth.modules.names.components import DomainType
|
from plinth.modules.names.components import DomainType
|
||||||
from plinth.signals import domain_added
|
from plinth.signals import domain_added
|
||||||
|
|
||||||
version = 2
|
version = 3
|
||||||
|
|
||||||
is_essential = True
|
is_essential = True
|
||||||
|
|
||||||
|
managed_services = ['systemd-journald', 'rsyslog']
|
||||||
|
|
||||||
_description = [
|
_description = [
|
||||||
_('Here you can set some general configuration options '
|
_('Here you can set some general configuration options '
|
||||||
'like hostname, domain name, webserver home page etc.')
|
'like hostname, domain name, webserver home page etc.')
|
||||||
@ -161,7 +163,7 @@ def change_home_page(shortcut_id):
|
|||||||
"""
|
"""
|
||||||
url = _home_page_scid2url(shortcut_id)
|
url = _home_page_scid2url(shortcut_id)
|
||||||
if url is None:
|
if url is None:
|
||||||
url = '/plinth/' # fall back to default url if scid is unknown.
|
url = '/plinth/' # fall back to default url if scid is unknown.
|
||||||
|
|
||||||
# URL may be a reverse_lazy() proxy
|
# URL may be a reverse_lazy() proxy
|
||||||
actions.superuser_run('config', ['set-home-page', str(url)])
|
actions.superuser_run('config', ['set-home-page', str(url)])
|
||||||
@ -183,6 +185,16 @@ def setup(helper, old_version=None):
|
|||||||
"""Install and configure the module."""
|
"""Install and configure the module."""
|
||||||
_migrate_home_page_config()
|
_migrate_home_page_config()
|
||||||
|
|
||||||
|
# systemd-journald is socket activated, it may not be running and it does
|
||||||
|
# not support reload.
|
||||||
|
actions.superuser_run('service', ['try-restart', 'systemd-journald'])
|
||||||
|
# rsyslog when enabled, is activated by syslog.socket (shipped by systemd).
|
||||||
|
# See: https://www.freedesktop.org/wiki/Software/systemd/syslog/ .
|
||||||
|
actions.superuser_run('service', ['disable', 'rsyslog'])
|
||||||
|
# Ensure that rsyslog is not started by something else as it is installed
|
||||||
|
# by default on Debian systems.
|
||||||
|
actions.superuser_run('service', ['mask', 'rsyslog'])
|
||||||
|
|
||||||
|
|
||||||
def _migrate_home_page_config():
|
def _migrate_home_page_config():
|
||||||
"""Move the home page configuration to an external file."""
|
"""Move the home page configuration to an external file."""
|
||||||
|
|||||||
@ -0,0 +1,12 @@
|
|||||||
|
[Journal]
|
||||||
|
# Upstream systemd project disables forwarding to syslog by default as it is
|
||||||
|
# only needed by syslog daemons that don't get their feed from systemd journal.
|
||||||
|
# See:
|
||||||
|
# https://www.freedesktop.org/software/systemd/man/journald.conf.html#ForwardToSyslog=
|
||||||
|
# . Debian re-enables this by default due to support lacking in some syslog
|
||||||
|
# daemons in its repository. See:
|
||||||
|
# https://salsa.debian.org/systemd-team/systemd/-/blob/c39ab3efdc9c1b69f333c112112a68fb712cee27/debian/patches/debian/Re-enable-journal-forwarding-to-syslog.patch
|
||||||
|
# . In FreedomBox, rsyslog and other syslog daemons are not necessary and are
|
||||||
|
# burden on disk I/O. All the necessary log data can be obtained from systemd
|
||||||
|
# journal. Disable forwarding to syslog.
|
||||||
|
ForwardToSyslog=no
|
||||||
Loading…
x
Reference in New Issue
Block a user