[systemd-devel] Unit file for motd (message of the day) (was: Trying systemd with Debian Sid/unstable on ASRock E350M1 with Crucial m4 SSD)

Paul Menzel paulepanter at users.sourceforge.net
Sun Jun 10 05:40:50 PDT 2012


Dear systemd folks,


Am Dienstag, den 22.05.2012, 11:06 +0200 schrieb Paul Menzel:

[…]

> 4. All units take less than a second to start.
> 
>         $ systemd-analyze blame
>            948ms avahi-daemon.service
>            729ms postfix.service
>            656ms rsyslog.service
>            632ms systemd-logind.service
>            559ms console-kit-log-system-start.service
>            523ms bootlogs.service

[…]

in Debian the init.d script bootlogs was split up and a separate init.d
script `motd` was created [1].

        sysvinit (2.88dsf-24) experimental; urgency=low
        
          [ Roger Leigh ]
          * initscripts:
            - Don't generate or touch /etc/motd.  Instead, the dynamic part of
              /etc/motd is created as /run/motd.dynamic, leaving /etc/motd
              entirely under the control of the system administrator.  If
              /etc/motd is a symlink to /run/motd, /etc/motd.tail is moved
              back to /etc/motd.  Closes: #353229, #624391, #668307.  /etc/motd
              is not removed if initscripts is purged, since it's not owned by
              initscripts.
            - By default, /run/motd is just the output of uname, preserving the
              existing behaviour.  However, should the administrator wish to
              include dynamic information in the motd, they may write scripts
              to update /run/motd.dynamic as they please.  Closes: #437176.
            - motd generation is split from bootlogs into a separate motd
              init script.
            - bootlogs init script has been removed; current logging daemons
              handle this themselves, making this script redundant.
            - tmpfs mounts are never cleaned by bootclean.sh.  Cleaning /run
              can lead to nonfunctional input when Xorg starts.  Closes: #669949.
          * sysvinit-utils:
            - Suggest rather than Recommend bootlogd.

`systemd-analyze blame` shows that the init.d script `motd` still takes
quite a lot of time.

   363ms motd.service

There is not much going on in that script.

        #!/bin/sh
        ### BEGIN INIT INFO
        # Provides:          motd
        # Required-Start:    hostname $local_fs
        # Required-Stop:
        # Should-Start:
        # Default-Start:     1 2 3 4 5
        # Default-Stop:
        # Short-Description: Create dynamic part of /etc/motd
        # Description:       /etc/motd is user-editable and static.  This script
        #                    creates the initial dynamic part, by default the
        #                    output of uname, and stores it in /var/run/motd.dynamic.
        #                    Both parts are output by pam_motd.
        ### END INIT INFO
        
        PATH=/sbin:/usr/sbin:/bin:/usr/bin
        . /lib/init/vars.sh
        
        do_start () {
                # Update motd
                uname -snrvm > /var/run/motd.dynamic
        }
        
        do_status () {
                if [ -f /var/run/motd.dynamic ] ; then
                        return 0
                else
                        return 4
                fi
        }
        
        case "$1" in
          start|"")
                do_start
                ;;
          restart|reload|force-reload)
                echo "Error: argument '$1' not supported" >&2
                exit 3
                ;;
          stop)
                # No-op
                ;;
          status)
                do_status
                exit $?
                ;;
          *)
                echo "Usage: bootlogs [start|stop|status]" >&2
                exit 3
                ;;
        esac
        
        :

So is systemd’s conversion of that init.d script to a unit file take so
long? Can someone point me to a unit/service file for motd so that I can
compare it? Unfortunately I could not find one on the net when searching
for »fedora systemd motd service file«.

[…]


Thanks,

Paul


[1] http://packages.debian.org/changelogs/pool/main/s/sysvinit/sysvinit_2.88dsf-27/changelog#version2.88dsf-24
[2] http://wiki.gentoo.org/wiki/Systemd
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 198 bytes
Desc: This is a digitally signed message part
URL: <http://lists.freedesktop.org/archives/systemd-devel/attachments/20120610/f7b14655/attachment.pgp>


More information about the systemd-devel mailing list