Hey, http://www.freedesktop.org/software/systemd/systemd-38.tar.xz
This is the first release with the journal. The journal replaces both systemd-kmsg-syslogd and systemd-stdout-kmsg-bridge, thus simplifying greatly our set of always-running services. The journal is quite complete at this time, but a small number of bigger features are still missing. Documentation is currently terse and will be extended in the coming versions. If you want to see the effect of the journal, try "systemctl status" which is now hooked up with the journal and will show the most recent log output of a service. Compatibility with classic syslog implementations is provided, via a socket /run/systemd/journal/syslog, to which all messages are forwarded, regardless whether they came in via /dev/log, the journal native protocol or any other source. To make your syslog implementaiton work with this make sure that it binds to that socket instead of /dev/log which is now systemd-journal property. Note that the journal will store log data only on /run/log/journal, which makes it volatile. If a subdirectory /var/log/journal is created the journal will instead store its data on /var, thus making the journal persistant. systemd-journalctl may be used to explore the journal. By default it generates an output that is a pixel perfect copy of the usual /var/log/messages log format. It can alternatively generate a couple of differnt outputs, controllable with "-o verbose", "-o short-monotonic" or "-o json". Use "-f" for something that resembles "tail -f". This release is more kind of a test release, i.e. like you'd place it in your distribution's equivalent of Rawhide, not the kind you'd update your released distro with. We hope to stabilize things in the next coming releases a bit. Bill Nottingham (1): Allow 'list-unit-files' to run with --root. Dan Walsh (1): label: fix labeling of symbolic links Daniel Walsh (1): namespace: remount namespace root dir for SLAVE to avoid propagation of mounts from the namespace to the host Dave Reisner (1): systemctl-completion: always invoke with --no-legend Dexter Morgan (1): Add Mageia support Gregs Gregs (1): fsck: Fix typo in comment Jonathan Nieder (1): audit: do not complain if kernel lacks audit Kay Sievers (33): update TODO journal: silence gcc warnings Makefile.am: consistently use tabs logind: add 'login' subdir to include dirs logind: fix POTFILES location build-sys: restructure logind parts in Makefile.am and add --disable-logind timedated: move sources to subdirectory localed: move sources to subdirectory hostnamed: move sources to subdirectory hostnamed, localed: move config files to subdir binfmt: move sources to subdirectory journal: restructure Makefile.am libsystemd-id128: restructure Makefile.am pam_systemd: restructure Makefile.am and move inside ENABLE_LOGIND libsystemd-daemon: restructure Makefile.am build-sys: remove redundant _CFLAGS assignment build-sys: restructure sd-daemon, sd-readahead, sd-login files build-sys: more remaining parts of sd-deamon to their own section in Makefile.am gnome-ask-password-agent: require libnotify >= 0.7.0 build-sys: login - remove specified include dir; all subdirs are in the list now build-sys: switch to tar xz do not install drop-in files; the shared library should be used by default build-sys: rename 'rootdir' to 'rootprefix' like udev and kmod uses conf-parser: silence compiler warning logind: add needed include for sd_notify() build-sys: switch autoconf's default prefix from /usr/local to /usr build-sys: install pam module in $rootlibdir build-sys: add some headers to fix 'make distcheck' build-sys: use ${ac_default_prefix} build-sys: add headers to EXTRA_DIST to fix 'make distcheck' autogen: add --with-rootlibdir= and switch /usr/local to /usr fix compiler warning autogen.sh: diet and sync with udev and kmod Lennart Poettering (184): journal: add preliminary incomplete implementation journal: store XOR combination of entry data object hashes to identify hash lines journal: replace linked list by hashmap when merging files journal: split user logs into their own journal files journal: implement parallel traversal in client util: properly detect what the last capability is Merge branch 'master' into journal journal: only fallocate() what we really need to avoid slowness on file systems which do not support fallocate natively util: fix build journal: place machin journals in machine specific subdirectories journal: add cgroup path to entries journal: add cgroup path to entries journalctl: find journal files in right path journal: implementation rotation journal: implement parallel file traversal journal: fix field retrieval by name journal: synchronize seqnum across files journal: when the same entry is in two files, skip over them in sync journal: move field index from file into journal object journal: if two entries match with everything but seqnums, they are still identical journal: properly implement matching with multiple matches journal: unify code for up and for down traversal journal: implement seek to head/tail journal: automaticall reset location when the set of matches changes update TODO README: explain dependency on cgroups plymouth: fix ply proto endianess issues initctl: don't use dbus connection after PID 1 got respawned cgroup: always recreate cgroup before we try to apply attributes mount: order remote mounts after both network.target and remote-fs-pre.target units: drop [Install] section from remote-fs-pre.target update TODO Merge remote-tracking branch 'zbigniew/systemadm_changes' cgroup: immediately remove all cgroups which run empty update TODO macro: fix ALIGN_TO macro definition journal: implement multiple field matches TODO Merge branch 'master' into journal update TODO journal: add native protocol to journald, and client side API to send journal messages journal: enforce limits on open journal files journal: introduce mandatory sd_journal_printf() priority parameter journald: filter fields send from client starting with underscore man: document the sd-login interfaces sd-daemon: fix #include lines since we now ship a shared library man: build new man pages man: sd_readahead is not actually available in libsystemd-daemon build-sys: add rules for man page aliases man: add sd-login(7) page man: various updates man: extend sd-login(7) in regards to mixing D-Bus and synchronous library calls a bit hashmap: add hashmap_first_key() man: generate HTML instead of XHTML with XSL docbook to work around 'fsfunc' noise man: switch to UTF-8 output, to work around charset issues journal: implement inotify-based live logging logic journal: fix matches journal: fix space reservation limit enforcement journal: add inline compression support with XZ journalctl: add json, export, short and verbose output modes journalctl: add command line parsing journal: add missing compress.[ch] journal: properly handle first inline bisect array entry journald: enforce some syntax restrictions on field names sent from the client side journal: implement stdout transport journald: implement sophisticated rate limiting udev: exclude loopback device from udev rule based sysctl application, since we can just apply that directly at boot journal: fix typo journal: fix hash table lookup logic journald: when checking available disk space for rate limiting, cache the results temporarily journal: never mmap beyond file size journald: increase rate limit burst rate journald: flush /run to /var as soon as it becomes available journald: don't recheck /var availability more often than 30s remount-api-vfs: handle another OOM condition journald: add missing header journal: add unit files and shared library glue journald: forward all syslog messages to syslogd journal: fix a few bad memory accesses and leaks journal: disable default debug logging journal: move max_use into metrics structure Merge branch 'journal' socket: rename the PassCred= option to PassCredentials=, since we don't want to needlessly abbreviate options unless they are very well established kmsg: drop unused variable journal: automatically deduce journal metrics from file system sizes git: update gitignore logind: move logind into its own subdirectory logind: move more files into subdirectory journal: move symver file into subdirectory util: fix warning login: move libsystemd-login.pc.in into src/login/ test: rename test directory login: move the PAM module to src/login/ since it is just a client to logind build-sys: fix mageia kbd mappings build-sys: make readahead and vconsole optional login: move systemd-user-sessions.service into login/, too cryptsetup: split off cryptsetup into its own subdir build-sys: move kbd-model-map to locale/ build-sys: make quotacheck and randomseed optional socket: only add dependency on kmsg socket to socket units which have any kind of exec program specified readahead: bring export definition of sd-readahead in line with sd-daemon nspawn: get rid of BUFFER_SIZE, use LINE_MAX instead login: introduce sd_pid_get_service() journal: add _public_ to all sd-journal calls, and add parameter checks sd-id128: add _public_ to all exports, and add validity checks for all parameters journald: add _SYSTEMD_SESSION, _SYSTEMD_OWNER_UID, _SYSTEMD_SERVICE to all entries journald: treat a read-only /var identical to an unmounted one journal: never fail if we cannot access /var, just print a warning systemctl: hook up systemctl with the journal logind: if we can't open /dev/tty0, assume there is no VT subsystem and don't pretend we could do VT switching logind: don't watch vcsa if nobody cares logind: send out Lock signal when locking journald: fix _SYSTEMD_CGROUP= values sd128: add format string macros for outputting sd_id128_t variables sd128: rename SD_FORMAT_ID128_STR to SD_ID128_FORMAT_STR to follow naming scheme journalctl: add -n switch journal: add missing error check journal: add memory barrier before linking in newly created entries journal: apply seek check before resizing window, and refresh stat data if necessary journal: when increasing window, make sure to use the increased window journald: don't rotate on startup journal: don't mind too much if we can't find a monotonic timestamp journal: add missing error check journal: fix reverse traversing of entries journalctl: fix counting of -n parameter journalctl: only output 10 most recent lines in --follow mode journald: store _SYSTEMD_UNIT= instead of _SYSTEMD_SERVICE= field, since processes might also be related to mount, swap or socket units, not just services systemctl: shortcut log output for non-service, non-socket, non-mount, non-swap units journal: it's not a problem if the realtime jumps, hence don't ensure monotonicity of realtime for entries we write journal: beef up journal output of systemctl and journalctl journal: fix XZ build flags journald: parse configuration file util: when printing status updates during boot, take terminal width into account log: minor optimization journald: add configuration file options to forward all logged data to kmsg, console, syslog util: never ellipsize welcome message build-sys: move public header files into a dir of their own journal: add missing sd-messages.h journalctl: add --new-id switch to generate a new 128Bit id git: only ignore toplevel systemd file journal: fix include in sd-journal.h build-sys: add stub makefiles to subdirs build-sys: drop colorgcc headers: fix git URLs for source files README: correct license claims journalctl: rework short output mode to rebuild full syslog message journal: move sockets into their own subdir journal: store used transport in journal journal: store used transport in journal execute: talk directly to the journald, instead to the stdout-syslog-bridge sd-journal: close reading side of sd_journal_stream_fd() file descriptors journal: rename priority_prefix to level_prefix, since that's how we call it in PID 1 journal: rename syslog tag to identifier since that's what we call it on the server side. login: implement sd_session_get_service() stdout: remove stdout-syslog-bridge since it is now obsoleted by journald journal: introduce log target 'journal' for executed processes special: fix name of journal socket unit kmsg-syslogd: remove kmsg-syslogd, since it's entirely obsoleted and replaced by journald journald: start the journal after the syslog socket, so that the syslog socket queues syslog messages from early boot on units: remove left-over unit file service: add dependencies on configured sockets unit: properly update references to units which are merged journald: shorten the time we wait for a forwarding syslog journald: start journald right away, don't wait until activation journald: introduce systemd_journald.forward_to_kmsg=1 (and friends) to enable kmsg forwarding globally via kernel cmdline main: fix spelling load-fragment: fix parsing of Socket= setting build-sys: move .pc files next to the matching sources journalctl: rename --new-id to --new-id128 in order not to introduce yet another new name sd-id128: let's make our API a bit smaller, since sd_id128_make_v4_uuid() is dispensable journald: remove inner loop debug message journald: add kmsg source journalctl: add new short-monotonic output mode journalctl: display source timestamp, not journald timestamp, if known shutdown: exclude processes with argv[0][0] from killing update TODO service: brutally slaughter processes that are running in the cgroup when we enter START_PRE and START shutdown: add link to root storage daemon text unit: implement new PropagateReloadTo=/PropagateReloadFrom= operations Update TODO journalctl: always show monotonic timestamp even if it's from an old boot systemd: reconnect to syslog as soon as the journal is fully up sd-journal: implement a number of non-implemented calls from the API for now journal: don't realign window twice build-sys: bump version build-sys: fix upload rule for xz Michael Biebl (2): build-sys: fix typo in help string build-sys: link systemctl and systemd-journalctl against libsystemd-id128 Michal Schmidt (55): manager: fix a crash in isolating utmp: remove unneded parameters utmp: no need to zero a struct before overwriting it with memcpy utmp: initialize store with the found entry, not with the lookup key utmp: for DEAD_PROCESS write the current time to wtmp man: fix a typo in signal number units: drop unnecessary 'StandardOutput=syslog' units/fedora: let rc-local.service log to syslog units/suse: let rc-local.service log to syslog service: don't warn if the pidfile still exists after SIGCHLD job: colored status messages on boot man: fix typo in sd_notify execute: avoid logging to closed fds execute: make setup_pam() return -errno when possible execute: log errors from "sd(EXEC)" pam-module: use the correct session type "unspecified" pam-module: treat "cron" in PAM_TTY as empty tty let mount and swap units log to the configured defaults socket: add option for SO_PASSCRED shutdownd: use PassCred=yes in the socket unit syslog: use PassCred=yes for the /dev/log socket man: document the PassCred option add a generator to pull rc-local.service in rc-local: no need to check if the script is executable rc-local: order after network.target util: fix error checking after fgets() path: use %m instead of strerror(errno) path: refactor PathSpec usage path: add PathModified (= PathChanged + IN_MODIFY) service: handle services with racy daemonization gracefully service: stop the service if ExecStartPost ends with a failure unit: garbage collect units with load error systemctl: print 'error' load state in red path: add missing pieces for PathModified unit: fix false positive in check for unneeded unit unit: check for unneeded dependencies even when unit stop was expected pam-module: add a couple of debugging prints systemctl: fix typo in 'is-enabled' tmpfiles: use an enum instead of plain char for item type tmpfiles: rename a couple of functions tmpfiles: use a common function to set owner/group/mode/label tmpfiles: separate a generic item glob processing function tmpfiles: add RECURSIVE_RELABEL_PATH ('Z') man: document 'Z' in tmpfiles man: mention that 'Z' ignores uid/gid/mode service: use 'syslog+console' for sysv_console tmpfiles: apply chown, chmod for 'Z' entries too tmpfiles: add 'z', like 'Z' but not recursive man: fix misplaced remark in description of Sockets= execute: fix losing of start timestamps dbus: register to DBus asynchronously dbus: no sync D-Bus connection flushing log: never block on syslog in PID 1 util: fix switching to console unicode mode util: switch the console to text mode on reset Michał Górny (2): man: Fix out-of-source manpage builds. build-sys: Fix missing directories with parallel 'make install'. Ran Benita (3): bash-completion: update with new verbs and arguments bash-completion: add completions for systemd-loginctl bash-completion: rename file since it is no longer for systemctl only Thomas Jarosch (2): condition: Fix file descriptor leak in test_capability() Fix same expression on both sides of '&&' Tim Waugh (1): '@' is an 'ampersat' not an 'ampersand'; let's call it 'at symbol' Tollef Fog Heen (1): service: Drop rcN.d runlevels from SysV services that also exist in rcS.d Tom Gundersen (3): random-seed: convert poolsize from bits to bytes cryptsetup-generator: avoid ordering cycle on swap man: fix SEE ALSO in hostname(5) Zbigniew Jędrzejewski-Szmek (16): systemadm: break timestamp formatting out into a seperate function systemadm: allow sorting of jobs and units systemadm: split the type+status combo box into type combo & status checkbox systemadm: filter on swaps, paths, and timers too. systemadm: add a wrappable label and use it for status lines systemadm: add libgee as dependency and use it for a unit map systemadm: display dependencies sorted systemadm: use color for dependency links systemadm: use bold for "requires", etc. systemadm: make the dependency listing selectable systemadm: catch exceptions generated by dbus systemadm: coalesce id and decription fields systemadm: adjust row numbers after removing 'aliases' systemadm: use colors for id too, remove color from fragment link systemctl: make list-unit-files output more economical fix compilation error with 'PathSpec redefined' Lennart -- Lennart Poettering - Red Hat, Inc. _______________________________________________ systemd-devel mailing list systemd-devel@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/systemd-devel