1
0
mirror of https://github.com/systemd/systemd.git synced 2024-11-08 11:27:32 +03:00
Commit Graph

815 Commits

Author SHA1 Message Date
Lennart Poettering
0debd2bf2f Revert "units: ignore systemd-sysctl on shutdown"
This reverts commit faeffa73a8.

There isn't really much point in dropping the Conflicts= since shutting
down this service is basically free as it doesn't have anything running.

Also, the patch was incomplete, because shutdown.target was still listed
in Before=.
2013-03-23 03:10:41 +01:00
Kay Sievers
93f04c80f6 units: initrd, multi-user - add a few more words to Description= 2013-03-16 16:29:29 +01:00
Umut Tezduyar
faeffa73a8 units: ignore systemd-sysctl on shutdown
No need to try to stop systemd-sysctl on shutdown as
this service doesn't have ExecStop= anyways.
2013-03-15 22:56:33 -04:00
Harald Hoyer
9e5f0f9291 Make initrd.target the default target in the initrd
First, rename root-fs.target to initrd-root-fs.target to clarify its usage.

Mount units with "x-initrd-rootfs.mount" are now ordered before
initrd-root-fs.target. As we sometimes construct /sysroot mounts in
/etc/fstab in the initrd, we want these to be mounted before the
initrd-root-fs.target is active.

initrd.target can be the default target in the initrd.

                             (normal startup)
                                    :
                                    :
                                    v
                              basic.target
                                    |
             ______________________/|
            /                       |
            |                  sysroot.mount
            |                       |
            |                       v
            |             initrd-root-fs.target
            |                       |
            |                       v
            |            initrd-parse-etc.service
(custom initrd services)            |
            |                       v
            |            (sysroot-usr.mount and
            |             various mounts marked
            |               with fstab option
            |                x-initrd.mount)
            |                       |
            |                       v
            |                initrd-fs.target
            |                       |
            \______________________ |
                                   \|
                                    v
                               initrd.target
                                    |
                                    v
                          initrd-cleanup.service
                               isolates to
                         initrd-switch-root.target
                                    |
                                    v
             ______________________/|
            /                       |
            |        initrd-udevadm-cleanup-db.service
            |                       |
(custom initrd services)            |
            |                       |
            \______________________ |
                                   \|
                                    v
                        initrd-switch-root.target
                                    |
                                    v
                        initrd-switch-root.service
                                    |
                                    v
                               switch-root
2013-03-15 00:49:37 +01:00
Harald Hoyer
700e07ffd5 add initrd-fs.target and root-fs.target
Instead of using local-fs*.target in the initrd, use root-fs.target for
sysroot.mount and initrd-fs.target for /sysroot/usr and friends.

Using local-fs.target would mean to carry over the activated
local-fs.target to the isolated initrd-switch-root.target and thus in
the real root. Having local-fs.target already active after
deserialization causes ordering problems with the real root services and
targets.

We better isolate to targets for initrd-switch-root.target, which are
only available in the initrd.
2013-03-13 08:11:17 +01:00
Harald Hoyer
6bde0b3220 remote-fs.target: want remote-fs-pre.target
This pulls in remote-fs-pre.target if remote-fs.target is needed.

Previously remote-fs-pre.target was not active, if no remote fs was
mounted from /etc/fstab. So, every manual remote fs mount was ordered
against the inactive remote-fs-pre.target and umount.target.

Because remote-fs-pre.target was not active, the remote fs was umounted
at umount.target time, which was too late (network already down).

Now remote-fs-pre.target is active, even if no remote fs is mounted.
On shutdown it is deactivated in the correct order and all manual remote
fs mounts also.
2013-03-12 18:24:44 +01:00
Kay Sievers
3bf3cd95ab udevd: sort into sysinit instead of basic target 2013-03-12 15:56:19 +01:00
Michael Biebl
b39ad46de4 Update .gitignore
for the changes in 7b40ce553f
2013-03-11 17:08:03 +01:00
Michael Biebl
f432bb9144 Move udevadm to rootbindir
The udevadm utility is needed during early boot, so move it to
rootbindir to support split-/usr configurations.
2013-03-11 07:18:33 +01:00
Michael Biebl
7b40ce553f build-sys: don't hard-code binary paths in initrd-*.service
Instead use @bindir@ for udevadm and @rootbindir@ for systemctl.
2013-03-09 10:05:01 +01:00
Harald Hoyer
da61d6b2f2 units: run systemd-ask-password-console.service after systemd-vconsole-setup.service 2013-03-06 15:39:37 +01:00
Harald Hoyer
248ea600d0 initrd-parse-etc.servic: force start local-fs.target 2013-03-06 11:03:39 +01:00
Harald Hoyer
7fdf51751c Revert "add initrd-fs.target and initrd-fs-pre.target"
This reverts commit 39b83cdab3.
2013-03-06 11:03:39 +01:00
Harald Hoyer
fdf1848d1d Revert "units/initrd-*: require initrd-fs.target rather than local-fs.target"
This reverts commit 7d89ce303f.
2013-03-06 11:03:39 +01:00
Lennart Poettering
37495eede9 journal: make gatewayd run under its own user ID 2013-03-05 19:15:31 +01:00
Harald Hoyer
7d89ce303f units/initrd-*: require initrd-fs.target rather than local-fs.target 2013-03-04 19:33:50 +01:00
Harald Hoyer
39b83cdab3 add initrd-fs.target and initrd-fs-pre.target 2013-03-04 19:33:50 +01:00
Tom Gundersen
cf84347794 initrd: add unit files needed for basic systemd-in-initrd support
This will:
 * mount all configured filesystems (typically the rootfs on /sysroot)
 * reload the configuration to pick up anything from the mounted fs (typically
   /sysroot/etc/fstab)
 * mount any newly configured filesystems (typically /usr on /sysroot/usr, if
   applicable)
 * shut-down and clean-up any daemons running in the initramfs (typically udevd)
 * switch-root to /sysroot and start the real init

For an example of what files should be included in an initramfs based on this
see
<https://mailman.archlinux.org/pipermail/arch-projects/2013-February/003628.html>.

Cc: Harald Hoyer <harald.hoyer@gmail.com>
Cc: Dave Reisner <d@falconindy.com>
2013-03-01 22:52:36 +01:00
Zbigniew Jędrzejewski-Szmek
652e737517 build-sys: keep intermediate files
Sometimes it is useful to look at them, and they don't take
up any significant amount of space. Keeping them also avoids
the message about files being removed at the end of make
run.
2013-01-29 21:17:40 -05:00
Lennart Poettering
5d4caf5654 service: ignore dependencies on $syslog and $local_fs in LSB scripts
We no longer allow early-boot init scripts, however in late boot the
syslog socket and local mounts are established anyway, so let's simplify
our dep graph a bit.

If $syslog doesn't resolve to syslog.target anymore there's no reason to
keep syslog.target around anymore. Let's remove it.

Note that many 3rd party service unit files order themselves after
syslog.target. These will be dangling dependencies now, which should be
unproblematic, however.
2013-01-16 21:34:09 +01:00
Kay Sievers
3f141375cb service: sysv - remove distribution specific targets
Systemd should not introduce any new facilities. Distributions which still
need to support their non-standard/legacy facilities should add them as
patches to their packaging.

The following facilities are no longer recognized:
  $x-display-manager
  $mail-transfer-agent
  $mail-transport-agent
  $mail-transfer-agent
  $smtp
  $null

This target is no longer available:
  mail-transfer-agent.target
2013-01-16 04:26:49 +01:00
Lennart Poettering
25ed795892 units: add reference to new wiki page to all api mount units 2013-01-15 18:14:13 +01:00
Lennart Poettering
236bc7573a man: link in API FS documentation from the wiki 2013-01-15 05:13:54 +01:00
Lennart Poettering
aa6c53bf05 man: link in wiki documentation about network.target 2013-01-15 04:12:53 +01:00
Lennart Poettering
7f0086f8c9 units: always use sulogin in rescue.service
sushell makes much less sense than sulogin. If distros want to stick to sushell
they should patch this downstream.
2013-01-04 23:26:21 +01:00
Lennart Poettering
83514a2fa0 units: drop distro specific stuff from units
Since rc-local is now enabled via the SysV compatibility we should only refer
to it based on that too.
2013-01-04 23:26:21 +01:00
Lennart Poettering
b1c4ca25bf build-sys: make rc-local support part of SYSV compat
This also drops automatic selection of the rc local scripts
based on the local distro. Distributions now should specify the paths
of the rc-local and halt-local scripts on the configure command line.
2013-01-04 23:26:20 +01:00
Lennart Poettering
22ffd25ba5 units: add CAP_DAC_OVERRIDE+CAP_SYS_PTRACE to hostnamed so that detection of virtualization works 2012-12-31 21:24:26 +01:00
Tollef Fog Heen
7a14d67f76 Remove frugalware display-manager.service
Frugalware are shipping their own .service file now, so stop shipping
it here.

This effectively reverts 196e3fa74a
2012-12-14 09:17:14 +01:00
Lennart Poettering
00addadd86 unit: link up getty configuration from man page and unit files 2012-11-20 20:10:30 +01:00
Lennart Poettering
95ec8647c7 journal: recommend journalctl -x more often 2012-11-16 03:03:54 +01:00
Lennart Poettering
669b04a492 service: drop special HTTP server target, as it is a bad idea anf Fedora specific
This was premarily intended to support the LSB facility $httpd which is
only known by Fedora, and a bad idea since it lacks any real-life
usecase.

Similar, drop support for some other old Fedora-specific facilities.

Also, document the rules for introduction of new facilities, to clarify
the situation for the future.
2012-10-31 02:55:04 +01:00
Michal Schmidt
2161de72c5 units: agetty overrides TERM
Environment=TERM=... has no effect on agetty who sets it by itself. To
really set TERM to a specified value, it has to be given on the command
line.

https://bugzilla.redhat.com/show_bug.cgi?id=870622
2012-10-29 22:58:40 +01:00
Ramkumar Ramachandra
9c2cd81e0e units: teach m4 scripts in units/ about Debian's rc.local
This makes the behaviour wrt. to rc[-.]local consistent between
various distributions supporting it.
2012-10-28 02:14:41 +02:00
Zbigniew Jędrzejewski-Szmek
aa6eba407b units: reword rescue mode hints
Do not suggest to the user that commands can be issued before
logging in.

sulogin prints it own message, which mentions ^D, so there's no need
to repeat it here.
2012-10-28 02:14:00 +02:00
Lennart Poettering
6524990fdc logind: support for hybrid sleep (i.e. suspend+hibernate at the same time) 2012-10-28 00:50:35 +02:00
Tom Gundersen
d0114527f4 units: don't order tmp.monut after local-fs-pre.target
Since tmp.mount is a tmpfs this is not necesary, and should speed up boot marginally.
2012-10-23 22:33:00 +02:00
Lennart Poettering
5411ae4782 units: use numerig signal for killing systemd, to avoid incompatibilities with procps/util-linux kill 2012-10-23 00:12:33 +02:00
Lennart Poettering
4474d8abd0 units: also add journalctl suggestion to emergency.service
More often than not we enter emergency.service due to fsck failure, so
it makes sense to direct people to the journal to debug those.
2012-10-23 00:12:33 +02:00
Lennart Poettering
74dc2b17e6 units: suggest journalctl -b in rescue.service so that only messages from the current boot are shown 2012-10-23 00:12:33 +02:00
Lennart Poettering
86b2e20a5e units: rework systemd-exit.service to terminate systemd via signal rather than bus
This should make session termination more reliable, as D-Bus doesn't
have to be around anymore for this to succeed.
2012-10-18 01:20:06 +02:00
Lennart Poettering
7b17a7d72f journal: add minimal journal gateway daemon based on GNU libmicrohttpd
This minimal HTTP server can serve journal data via HTTP. Its primary
purpose is synchronization of journal data across the network. It serves
journal data in three formats:

       text/plain: the text format known from /var/log/messages
       application/json: the journal entries formatted as JSON
       application/vnd.fdo.journal: the binary export format of the journal

The HTTP server also serves a small HTML5 app that makes use of the JSON
serialization to present the journal data to the user.

Examples:

This downloads the journal in text format:

 # systemctl start systemd-journal-gatewayd.service
 # wget http://localhost:19531/entries

Same for JSON:

 # curl -H"Accept: application/json" http://localhost:19531/entries

Access via web browser:

 $ firefox http://localhost:19531/
2012-09-28 00:55:24 +02:00
Tom Gundersen
44b1222bd3 udev: don't let systemd-udev-settle delay basic.target
It is no longer possible to manually enable systemd-udev-settle.service,
so its only use is by legacy services explicitly pulling it in. It makes
sense for these services to also explicitly order themselves after
udev-settle.service, which makes After=basic.target redundant.

This should reduce the negative effect on boot-time of having to enable
legacy services such as lvm.service.
2012-09-27 16:53:45 +02:00
Kay Sievers
84c3f7c2bb udev: remove Install section from systemd-udev-settle.service
Legacy tool on-demand pull-in the settling, it should never run
by default, nothing orders against is anyway.
2012-09-27 15:16:03 +02:00
Shawn Landden
608da9e9b5 man: remove timezone(5) and add localtime(5) 2012-09-14 19:27:59 +02:00
Dave Reisner
b51fc639f0 build-sys: perform autodetection of quota-tools binaries
Use AC_PATH_PROG to try and locate the quotaon and quotacheck binaries,
falling back on hardcoded defaults when they can't be found.
2012-09-11 01:43:48 +02:00
Lennart Poettering
ddffe89246 journal: don't pull in flush service from journald service
In the initrd we don't need the flush service hence don't attempt to
pull it in.
2012-09-03 18:59:05 -07:00
Lennart Poettering
7e75c5ac2d unit: make sure structured logging is available before we enter the main boot phase 2012-09-03 18:59:05 -07:00
Lennart Poettering
b2c9cbafb8 units: remove prefdm
It's time to get rid of prefdm. Distributions which still want to use
this should maintain this downstream, but it's probably better to just
provide proper units for the various display managers, like Fedora is
doing this, for example:

https://fedoraproject.org/wiki/Features/DisplayManagerRework
2012-08-07 17:08:31 +02:00
Michal Schmidt
22cfbae09d units: add the modules-load cmdline parameters to the unit conditions
For 'modules-load=' and 'rd.modules-load=' to be effective,
systemd-modules-load.service must be started. It is currently
conditional on the existence of config files. Add the presence of the
cmdline parameters to the triggering conditions.
2012-07-25 08:51:41 +02:00
Lennart Poettering
3f612b9123 units: fix section of man page link in systemd-logind.service
https://bugs.freedesktop.org/show_bug.cgi?id=51963
2012-07-19 12:46:55 +02:00
Lennart Poettering
47ec118473 units: don't enforce a holdoff time for journald, logind, udevd
These services should be restarted as quickly as possible if they fail,
and the extra safety net of the holdoff time is not necessary.
2012-07-18 02:31:52 +02:00
Ville Skyttä
49f43d5f91 Spelling fixes. 2012-07-16 12:16:29 +02:00
Lennart Poettering
7f2cddae09 unit: rename BindTo= to BindsTo=
all other dependencies are in 3rd person. Change BindTo= accordingly to
BindsTo=.

Of course, the dependency is widely used, hence we parse the old name
too for compatibility.
2012-07-13 23:34:40 +02:00
Lennart Poettering
b8156be03f journal: replace implicit flushing of journal by explicit one
The old automatism that the flushing of the journal from /run to /var
was triggered by the appearance of /var/log/journal is broken if that
directory is mounted from another host and hence always available to be
useful as mount point. To avoid probelsm with this, introduce a new unit
that is explicitly orderer after all mounte files systems and triggers
the flushing.
2012-07-11 02:41:16 +02:00
Auke Kok
8401e9f91d MeeGo: Remove build support for MeeGo distribution.
The MeeGo distribution is still a supported distribution, but
will probably not see an updated version of systemd anymore.

Most of the development is focussing on Tizen now, and the
generic support for building --with-distro=other is more than
adequate enough.

This patch removes the support as a custom configuration build
target in systemd. People who are still building this for
the MeeGo distribution should build as "other" distro.
2012-07-09 16:37:46 +02:00
Lennart Poettering
746e436dc5 units: add reference to wiki so syslog.socket 2012-07-03 13:31:09 +02:00
Colin Guthrie
51dfddc2cc units: Rename systemd-udev.service to systemd-udevd.service
This naming convention is more inline with other systemd daemon
unit names (systemd-logind.service, systemd-localed.service etc)

The companion .socket units have also been renamed, however the
-trigger and -settle units keep their current name as these are
not directly related to daemon process itself.
2012-07-02 23:21:51 +02:00
Lennart Poettering
d1f9edafe7 units: rename systemd-debug-shell.service to debug-shell.service
The systemd- prefix for services should be reserved only for services
that invoke our own code rather than generic, external code.
2012-07-02 14:33:04 +02:00
Colin Guthrie
067e1f73e8 mageia: Change the unit for prefdm.service to make it work a bit more like Fedora
Do not wait for some of the Fedora units that we have traditionally not
waited for in Mageia or Mandriva before it.
2012-07-02 11:50:54 +02:00
Lennart Poettering
ac7019f33f timedated: replace systemd-timedated-ntp.target logic with simpler scheme
The previous systemd-timedated-ntp.target was suffering by the problem
that NTP implementations enabled via the machanism could not be disabled
the obvious way on the "systemctl disable" command line. Replace
systemd-timedated-ntp.target by a list of implementations we try in
turn. The list is encoded in $pkgdatadir/ntp-units.
2012-07-02 10:43:56 +02:00
Lennart Poettering
454591be36 units: automatically respawn the core services 2012-06-28 12:18:04 +02:00
Lennart Poettering
5231084b47 units: add explicit dependency on display-manager.service to graphical.target
This replaces the symlink based dependency by an explicit one in the
unit file so that we avoid the dangling symlink when no display manager
is installed.
2012-06-27 22:23:16 +02:00
Lennart Poettering
f5ccf26ded man: document systemd-update-generator 2012-06-27 15:12:29 +02:00
Lennart Poettering
c48754ab3d man: this time, fix Documentation= properly 2012-06-27 14:28:25 +02:00
Lennart Poettering
ca5dc4b67d units: fix Documentation= tag in fsck units 2012-06-27 11:51:38 +02:00
Lennart Poettering
7df46b2af5 man: document systemd-ask-password-console.service and friends 2012-06-27 01:32:15 +02:00
Lennart Poettering
743b8558f6 man: document quotacheck 2012-06-27 01:17:49 +02:00
Lennart Poettering
3eca62862e man: add Documentation= tag to tmp.mount 2012-06-27 01:09:51 +02:00
Lennart Poettering
744881d173 man: add Documentation= tags to all kinds of missing units 2012-06-27 01:07:04 +02:00
Lennart Poettering
ee1c0ad436 man: properly document .socket units in man page 2012-06-27 01:06:35 +02:00
Lennart Poettering
a32f224aaf man: document systemd-fsck 2012-06-27 00:37:36 +02:00
Lennart Poettering
56a379a97e man: document the readahead services 2012-06-26 18:16:00 +02:00
Lennart Poettering
0127336c01 man: document systemd-halt.service and friends 2012-06-26 17:50:29 +02:00
Lennart Poettering
e2b696ee9b man: document systemd-suspend.service 2012-06-26 17:33:11 +02:00
Lennart Poettering
11901ad596 man: document systemd-shutdownd 2012-06-26 00:21:13 +02:00
Lennart Poettering
f59e0b6435 man: document systemd-initctl 2012-06-26 00:15:59 +02:00
Lennart Poettering
29f4f5118b man: document systemd-hostnamed 2012-06-26 00:04:50 +02:00
Lennart Poettering
62ce62123d man: document localed 2012-06-25 23:55:35 +02:00
Lennart Poettering
83620960d6 man: document systemd-timedated.service 2012-06-25 22:56:45 +02:00
Lennart Poettering
6b7b92055d man: document systemd-update-utmp-runlevel 2012-06-25 22:07:58 +02:00
Lennart Poettering
a882169a16 man: document systemd-user-sessions.service 2012-06-25 17:34:50 +02:00
Lennart Poettering
0e0320e045 units: rename halt/hibernate/kexec/poweroff/reboot/suspend to systed-xxx
These service units also execute our own code, hence rename the
accordingly and prefix them with systemd-
2012-06-25 14:28:50 +02:00
Lennart Poettering
93a1d735ac units: rename fsck@.service to systemd-fsck@.service
The rule is that units that encapsulate our own code are prefixed with
"systemd-". Since the fsck units invoke our own code, hence add the
missing prefix. Since a long long time the fsck units didn't invoke the
naked fsck binaries anymore, and it is unlikely that this well ever
change. On the opposite: the code in systemd-fsck will probably get more
complex over time to handle fsck progress to plymouth forwarding.

Same for quotacheck (but not quotaon!)
2012-06-25 14:28:50 +02:00
Lennart Poettering
ca6b98ae21 man: document systemd-remount-fs.service 2012-06-25 13:08:23 +02:00
Lennart Poettering
edcf89bebe man: document systemd-random-seed-load.service 2012-06-25 12:13:17 +02:00
Lennart Poettering
c617f5a96d units: stop sleep.target when it has done its job 2012-06-25 12:01:09 +02:00
Lennart Poettering
4aa6e7782a man: document systemd-vconsole-setup.service 2012-06-25 12:00:43 +02:00
Lennart Poettering
b79f817b1b man: refer to udevd by its service name not binary name
Since the binary name is now hidden away in /usr/lib/ the primary user
handle for the udev service is the unit name, hence change the man page
to be available under the unit name, and make the binary name an alias
for it.
2012-06-22 10:38:40 +02:00
Lennart Poettering
87ce22cc0d readahead: merge three binaries into one
since the binaries share much of the same code and we better load only
one binary instead of two from disk at early boot let's merge the three
readahead binaries into one. This also allows us to drop a lot of
duplicated code.
2012-06-21 23:53:20 +02:00
Kay Sievers
eb125fb693 update .gitignore 2012-06-10 18:28:53 +02:00
Kay Sievers
7a5498fe92 systemd-debug-shell: add to POTFILES.skip 2012-06-07 19:34:57 +02:00
Kay Sievers
26cbf29c52 delete plymouth units; moved to plymouth 2012-06-07 19:27:17 +02:00
Michal Schmidt
ed061a8dc2 units: add systemd-debug-shell.service
If enabled, the service provides a root shell from an early boot. It also
remains active late into shutdown. It is useful for debugging startup and
shutdown problems.

This is the unit referenced in
http://freedesktop.org/wiki/Software/systemd/Debugging#early_debug_shell
2012-06-07 16:33:45 +02:00
Kay Sievers
a2368a3f37 udev: systemd-udev-settle.service fix After=
https://bugs.freedesktop.org/show_bug.cgi?id=50779
2012-06-06 14:30:16 +02:00
Michal Schmidt
3305d6806d units: avoid redundant VT clearing by agetty
TTYVTDisallocate=yes already clears the VT. agetty does not need to do
it again. Run it with --noclear.

Felix Miata found the double clearing confusing in this bugreport:
https://bugzilla.redhat.com/show_bug.cgi?id=828007
Add a comment explaining what clears the VT.
2012-06-06 11:33:18 +02:00
Lennart Poettering
63cb20a28b units: fix man section 2012-06-01 17:27:16 +02:00
Lennart Poettering
01cf0ca850 man: document systemd-journal 2012-06-01 17:27:15 +02:00
Lennart Poettering
af3bccd6d8 man: write man page for systemd-logind 2012-06-01 17:27:15 +02:00
Lennart Poettering
9393a8774c man: add documentation for the binfmt, modules-load, sysctl services 2012-05-31 16:00:34 +02:00
Lennart Poettering
88f8ffbd63 units: add Documentation= field to console-getty.service 2012-05-31 14:51:17 +02:00
Kay Sievers
b5d22f5ebe plymouth: use systemd-udev-settle.service 2012-05-29 22:32:41 +02:00
Kay Sievers
3e920c7164 udev: man - mention systemd-udevd(8) 2012-05-29 00:54:40 +02:00
Lennart Poettering
659635ab22 units: fix file syntax 2012-05-23 12:49:49 +02:00
Lennart Poettering
8d59c9b490 readahead: use Conflicts= instead of masking to get rid of readahead units 2012-05-23 04:02:56 +02:00
Lennart Poettering
08231e5142 readahead: avoid running of readahead services if readahead is already done 2012-05-23 03:51:25 +02:00
Lennart Poettering
1897573598 readahead: when doing a system update drop readahead file 2012-05-23 03:50:15 +02:00
Lennart Poettering
d360705f0f system-update: add system update generator
http://freedesktop.org/wiki/Software/systemd/SystemUpdates
2012-05-22 19:48:51 +02:00
Lennart Poettering
49e7f02774 rescue: don't pull in sockets
In rescue mode let's not establish all sockets, so that we don't end up
starting a lot of additional services automatically.

Instead of pulling in basic.target we now only pull in sysinit.target
which pulls in local-fs.target and swap.target. That way rescue mode has
all the really basic setup around, but normal services are not started
and not autostarted either.
2012-05-22 16:12:25 +02:00
Lennart Poettering
49dbfa7b2b units: introduce new Documentation= field and make use of it everywhere
This should help making the boot process a bit easier to explore and
understand for the administrator. The simple idea is that "systemctl
status" now shows a link to documentation alongside the other status and
decriptionary information of a service.

This patch adds the necessary fields to all our shipped units if we have
proper documentation for them.
2012-05-21 15:14:51 +02:00
Michal Schmidt
7c99edf85b units: do not quit plymouth too early 2012-05-14 14:29:53 +02:00
Lennart Poettering
6edd7d0a09 sleep: implement suspend/hibernate as first class targets 2012-05-08 13:54:23 +02:00
Lennart Poettering
4019a16d5b units: use OOMScoreAdjust= in the unit files to set OOM score adjust 2012-05-04 00:15:21 +02:00
Lennart Poettering
c374339916 units: explicit Type=dbus is now redundant 2012-05-03 14:48:35 +02:00
Lennart Poettering
86fff24864 units: make sure /var is writable before initializing random seed 2012-04-30 10:56:46 +02:00
Lennart Poettering
7c8fa05c4d unit: add new dependency type RequiresMountsFor=
RequiresMountsFor= is a shortcut for adding requires and after
dependencies to all mount units neeed for the specified paths.

This solves a couple of issues regarding dep loop cycles for encrypted
swap.
2012-04-30 10:52:07 +02:00
Lennart Poettering
e2875c4693 timedated: introduce systemd-timedated-ntp.target which is controlled by timedated's NTP setting
We shouldn't hardcode the name of the NTP implementation in the
timedated mechanism, especially since Fedora currently switched from NTP
to chrony.

This patch introduces a new target that is enabled/disabled instead of
the actual NTP implementation. The various NTP implementations should
then add .wants/ symlinks to their services and BindTo back to the
target, so that their implementations are started/stopped jointly with
the target.

https://bugzilla.redhat.com/show_bug.cgi?id=815748
2012-04-25 16:49:02 +02:00
Lennart Poettering
2b93b027d3 remount: consolidate remount-api-vfs and remount-rootfs into one
This has the advantage of removing a confusing warning by mount if the
root directory is not listed in fstab.
2012-04-24 16:42:42 +02:00
Lennart Poettering
f2b6878955 service: introduce Type=idle and use it for gettys
Type=idle is much like Type=simple, however between the fork() and the
exec() in the child we wait until PID 1 informs us that no jobs are
left.

This is mostly a cosmetic fix to make gettys appear only after all boot
output is finished and complete.

Note that this does not impact the normal job logic as we do not delay
the completion of any jobs. We just delay the invocation of the actual
binary, and only for services that otherwise would be of Type=simple.
2012-04-24 14:42:24 +02:00
Lennart Poettering
3b2d5b02ae readahead: rather than checking for virtualization in the C code, use ConditionVirtualization= in the unit 2012-04-24 13:14:40 +02:00
Lennart Poettering
e3f7277c6e units: remount file systems only if /etc/fstab actually exists 2012-04-22 15:35:35 +02:00
Lennart Poettering
5cd6eef69b units: don't try to load kernel modules if CAP_SYS_MODULE is missing 2012-04-22 14:11:32 +02:00
Lennart Poettering
2c8049f3d3 units: skip root fsck if the root directory is writable 2012-04-22 14:11:32 +02:00
Lennart Poettering
acda6a054f default to v102 everywhere, instead of vt100, to synchronize with agetty 2012-04-22 02:45:39 +02:00
Lennart Poettering
337eebb936 container: spawn a getty instead of a sulogin in a container 2012-04-22 02:41:18 +02:00
Kay Sievers
180bd81280 udev: units - reference systemd-* units 2012-04-18 16:29:43 +02:00
Kay Sievers
f13b388f97 udev: install udevd as /usr/lib/systemd/systemd-udevd 2012-04-17 00:18:30 +02:00
Lennart Poettering
186b97d99f units: drop audit reference from description of utmp units since that is build-time optional 2012-04-13 19:46:51 +02:00
Lennart Poettering
fb316903b8 units: add CAP_MKNOD condition to the other two udev services too 2012-04-13 19:46:51 +02:00
Lennart Poettering
41807efb15 units: do binfmt magic only when /proc/sys is writable 2012-04-13 18:52:53 +02:00
Lennart Poettering
8ef58b3efc getty: skip VC gettys if the VC subsystem is not available 2012-04-12 17:31:26 +02:00
Lennart Poettering
88e995fd72 getty: VC devices are always available, we don't need to wait until they show up 2012-04-12 17:29:42 +02:00
Lennart Poettering
1d7f3f5cc8 units: start vconsole-setup only if there's actually a virtual console device 2012-04-12 12:58:19 +02:00
Lennart Poettering
f2a46f8da5 units: run sysctl stuff only when /proc/sys is actually writable, to quieten container boots a little 2012-04-12 12:58:19 +02:00
Lennart Poettering
5430f7f2bc relicense to LGPLv2.1 (with exceptions)
We finally got the OK from all contributors with non-trivial commits to
relicense systemd from GPL2+ to LGPL2.1+.

Some udev bits continue to be GPL2+ for now, but we are looking into
relicensing them too, to allow free copy/paste of all code within
systemd.

The bits that used to be MIT continue to be MIT.

The big benefit of the relicensing is that closed source code may now
link against libsystemd-login.so and friends.
2012-04-12 00:24:39 +02:00
Lennart Poettering
4771148bb9 units: exclude gettys from isolate requests
gettys are nowadays mostly autospawned and hence usually subject to
being shut down on isolate requests, since they are no dependency of any
other unit. This is a bad idea if the user isolates between
multi-user.graphical and graphical.target, hence exclude them from the
isolation.

This has the effect that gettys no longer cleaned up when
emergency.target is isolated, which might actualy be considered a
feature, even though it is a change from previous behaviour...

Note that the one getty that really matters (the one on tty1) is still
removed when isolating to emergency.target since it conflicts with
emergency.service.
2012-04-11 22:37:48 +02:00
Kay Sievers
635f7d8ca7 enable proper access timestamps on all tmpfs mounts 2012-04-11 22:18:55 +02:00
Lennart Poettering
082694b75f units: introduce nss-user-lookup.target
This separates user/group NSS lookups from host/network NSS lookups.

By default order all network mounts after host/network NSS lookups now,
and logind execution after user/group NSS lookups.
2012-04-11 00:11:18 +02:00
Lennart Poettering
704179d839 units: direct users to the journal for logs when entering rescue mode 2012-04-04 13:52:02 +02:00
Dave Reisner
9cf2578683 units/: use @SYSTEMCTL@ instead of hardcoded paths
Especially in the case of --enable-split-usr, several units will point
to the wrong location for systemctl. Use @SYSTEMCTL@ which will always
contain the proper path.
2012-04-04 06:46:35 +02:00
Kay Sievers
3672af61aa udev: fix path in udev.service 2012-04-04 06:21:23 +02:00
Kay Sievers
3e2147858f move imported udev into place 2012-04-04 05:05:07 +02:00
Kay Sievers
623ac9d2fc units: mount /tmp as tmpfs
The default setups should be a stateless as possible. /tmp as tmpfs is
the intended default for general purpose systems.

Small temporary files should not be stored on disk; lager files, or
files which should potentially survive a reboot, belong into /var/tmp.

Also catch up with some good old UNIX history.

More details are here:
  https://fedoraproject.org/wiki/Features/tmp-on-tmpfs
2012-03-27 17:30:41 +02:00
Lennart Poettering
55d029addf units: get rid of var-run.mount and var-lock.mount
Since a number of distribitions don't need this compat glue anymore drop
it from systemd upstream. Distributions which still haven't converted
to /run can steal these unit files from the git history if they need to.
2012-03-27 17:11:00 +02:00
Lennart Poettering
231931ffba units: don't mount tmpfs on /media anymore
udisks2 doesn't use /media anymore, instead mounts removable media in a
user-private directory beneath /run. /media is hence mostly obsolete and
hence it makes little sense to continue to mount a tmpfs to it.

Distributions should consider dropping the mount point entirely since
nothing uses it anymore.
2012-03-27 17:04:22 +02:00
Roberto Sassu
160481f68d systemd: mount the securityfs filesystem at early stage
This is an S/MIME signed message

The mount of the securityfs filesystem is now performed in the main systemd
executable as it is used by IMA to provide the interface for loading custom
policies. The unit file 'units/sys-kernel-security.mount' has been removed
because it is not longer necessary.

Signed-off-by: Roberto Sassu <roberto.sassu@polito.it>
Acked-by: Gianluca Ramunno <ramunno@polito.it>
2012-03-22 00:20:48 +01:00
Lennart Poettering
54ecda32c6 socket: add option for SO_PASSEC
https://bugzilla.redhat.com/show_bug.cgi?id=798760

(Note that this work is not complete yet, as the kernel seems to send us
useless data with SCM_SECURITY enabled)
2012-03-13 00:00:27 +01:00
Lennart Poettering
eb91400c68 units: reword rescue/emergency mode message to fit in 80chars 2012-02-15 20:06:14 +01:00
Lennart Poettering
cabca20b1a journal: add CAP_SETUID and CAP_SETGID to capabilities for journald, so that we can fake SCM_CREDENTIALS 2012-02-10 15:46:24 +01:00
Lennart Poettering
353e12c2f4 service: ignore SIGPIPE by default 2012-02-09 03:18:04 +01:00
Lennart Poettering
ccd07a083e journal: limit caps we pass to journald 2012-02-09 02:06:13 +01:00
Kay Sievers
e0d25329b2 move /usr/bin/systemd to /usr/lib/systemd/systemd 2012-02-08 00:08:10 +01:00
Mike Kazantsev
9c07474c6f logind: add sys_tty_config capability, to let it use VT_ACTIVATE ioctl on "activate" action 2012-01-27 21:14:01 +01:00
Lennart Poettering
bb99a35a87 log: increase socket buffers for logging by default 2012-01-27 18:57:37 +01:00
Lennart Poettering
4cfa2c999d core: switch all log targets to go directly to the journal, instead via syslog 2012-01-12 05:09:06 +01:00
Lennart Poettering
ead51eb4ed units: make sure syslog socket goes away early during shutdown 2012-01-12 04:34:50 +01:00
Lennart Poettering
6342c8eaaf units: remove left-over unit file 2012-01-06 03:20:22 +01:00
Lennart Poettering
ba1d559635 journald: start the journal after the syslog socket, so that the syslog socket queues syslog messages from early boot on 2012-01-06 03:11:56 +01:00
Lennart Poettering
4c0bebc335 kmsg-syslogd: remove kmsg-syslogd, since it's entirely obsoleted and replaced by journald 2012-01-06 03:11:17 +01:00
Lennart Poettering
db5973704b stdout: remove stdout-syslog-bridge since it is now obsoleted by journald 2012-01-06 02:48:38 +01:00
Lennart Poettering
259d2e7620 journal: move sockets into their own subdir 2012-01-05 20:24:16 +01:00
Lennart Poettering
271b032a05 socket: rename the PassCred= option to PassCredentials=, since we don't want to needlessly abbreviate options unless they are very well established 2011-12-31 01:07:49 +01:00
Lennart Poettering
dc1ecd78e9 Merge branch 'journal' 2011-12-31 00:59:37 +01:00
Lennart Poettering
8b18eb674c journald: forward all syslog messages to syslogd 2011-12-30 19:05:43 +01:00
Lennart Poettering
4b2d99d9f4 journal: add unit files and shared library glue 2011-12-30 17:50:37 +01:00
Michal Schmidt
91b684c730 rc-local: order after network.target
As suggested by Bill Nottingham: rc.local is often used for frobbing the
network.

https://bugzilla.redhat.com/show_bug.cgi?id=754789
2011-12-02 11:32:52 +01:00
Michal Schmidt
e951701a4d rc-local: no need to check if the script is executable
rc-local.service is pulled in by a generator only if the script is
executable. No need to check again.
2011-12-02 11:32:04 +01:00
Michal Schmidt
1567308317 add a generator to pull rc-local.service in
rc-local.service acts as an ordering barrier even if its condition is
false, because conditions are evaluated when the service is about to be
started.

To avoid the ordering barrier in a legacy-free system, add a generator
to pull rc-local.service into the transaction only if the script is
executable.

If/when we rewrite SysV compatibility into a generator, this one can become
a part of it.
2011-12-02 11:29:48 +01:00
Michal Schmidt
1a2801529e syslog: use PassCred=yes for the /dev/log socket
Both kmsg-syslogd and the real syslog service want to receive
SCM_CREDENTIALS. With socket activation it is too late to set
SO_PASSCRED in the services.
2011-11-30 11:00:28 +01:00
Michal Schmidt
75d3fc60f8 shutdownd: use PassCred=yes in the socket unit
Since Linux 3.2 in order to receive SCM_CREDENTIALS it is not sufficient
to set SO_PASSCRED just before recvmsg(). The option has to be already
set when the sender sends the message.

With socket activation it is too late to set the option in the service.
It must be set on the socket right from the start.

See the kernel commit:
16e57262 af_unix: dont send SCM_CREDENTIALS by default

Fixes: https://bugzilla.redhat.com/show_bug.cgi?id=757628
2011-11-30 10:12:59 +01:00
Michal Schmidt
42c3673e63 units/suse: let rc-local.service log to syslog
Same change as the previous commit did for Fedora. fcrozat agreed.
2011-11-09 10:10:38 +01:00
Michal Schmidt
9d7286112d units/fedora: let rc-local.service log to syslog
rc-local.service should not be excluded from the default stdout logging.

Missing logs were noticed by Andrew McNabb in
 https://bugzilla.redhat.com/show_bug.cgi?id=750032#c3
2011-11-09 09:22:30 +01:00
Michal Schmidt
c99e42c1db units: drop unnecessary 'StandardOutput=syslog'
DefaultStandardOutput is syslog anyway. There's no reason to assume that
the administrator would want these units to be excluded when he configures
a different DefaultStandardOutput.
2011-11-09 08:48:25 +01:00
Dexter Morgan
6fdae8a6a4 Add Mageia support
This patch adds support for the Mageia Linux distribution:
 http://www.mageia.org/

Mageia is a fork of Mandriva although some divergence has already occured
and thus inclusion of these changes upstream allow us to (hopefully)
migrate more rapidly to the new standard approaches systemd offers.
Indeed, we already use the preferred mechanism of OS identification via
the /etc/os-release file rather than a distro specific variation.

This patch mostly mirrors the patch added previously for Mandriva
support. In addition to those original authors, this patch was mostly
written by Dexter Morgan with help from Colin Guthrie and Eugeni Dodonov.
2011-11-02 02:16:39 +01:00
Lennart Poettering
fc8f0b5c9c units: drop [Install] section from remote-fs-pre.target
remote-fs-pre.target is not a unit a user should ever explicitly enable.
Instead services which need to hook before network mounts should pull it
in.
2011-11-01 22:29:48 +01:00
Lennart Poettering
822b18599d units: forgot target units 2011-10-11 14:26:20 +02:00
Lennart Poettering
f84aea434f units: increase LimitNOFILE a bit
since we need one fd per session (for logind) and one fd per service
(for stdout-syslog-bridge) increase the default rlimit a bit.
2011-10-11 04:43:29 +02:00
Lennart Poettering
8266f984df units: remount root and API FS before all mount units are applied
In order to ensure that bind mounts copy the final mount settings to the
new bind mount make the root and API FS mount options are applied before
the other file systems are mounted.

https://bugzilla.redhat.com/show_bug.cgi?id=718464
2011-10-11 03:41:04 +02:00
Lennart Poettering
a966a504e8 readahead: opt out of bridge logging for readahead in order not to delay things unnecessarily 2011-09-23 17:42:54 +02:00
Michal Schmidt
0fe9972f3c units: fix rescue.service race with plymouth
It was possible for the "ExecStartPre=-/bin/plymouth quit" to race
with plymouth-start.service which is pulled in indirectly by
basic.target -> sysinit.target.

The race left plymouth running on the terminal, making it unusable for
rescue purposes.

https://bugzilla.redhat.com/show_bug.cgi?id=710487
2011-09-22 23:59:50 +02:00
Lennart Poettering
7ef5875d14 units: introduce unit file for FUSE fs
FUSE and configfs is very very similar, so handle both the same way.
2011-09-22 03:00:04 +02:00
Marko Saukko
d418f857f8 units: In MeeGo there was more than one ExecStart lines present that caused systemd to refuse the rescue.service 2011-09-21 21:38:46 +02:00
Lennart Poettering
4f38cd85f6 units: we don't need to check whether /sys/kernel/security is already mounted since we'll enumerate that fact anyway 2011-09-21 18:06:24 +02:00
Lennart Poettering
ac0a983ac6 units: drop automount unit for /dev/hugepages
Since hugetlbfs cannot be compiled as kernel module there's little point
in doing on-demand mounting via autofs for it.
2011-09-21 03:56:56 +02:00
Lennart Poettering
1f2c94a487 units: drop automount unit for /dev/mqueue
Since the mqueue support cannot be built as a module there's little
benefit in having an autofs mount point set up for this.
2011-09-21 03:56:56 +02:00
Lennart Poettering
77f81d8b30 units: drop automount unit for /sys/kernel/security
Since securityfs cannot be build as module there's little value in
having an on-demand autofs mount point for it.
2011-09-21 03:56:56 +02:00
Lennart Poettering
e124e7a4a1 units: drop automount unit for /sys/kernel/debug
Since debugfs cannot be compiled as module there's little benefit in
having it as autofs mount point.
2011-09-21 03:56:55 +02:00
Lennart Poettering
0286cc1551 units: drop /sys/kernel/config automount unit
The mount point directory /sys/kernel/config is only created after the
module is loaded, hence there's little value in having this an automount
unit: the runtime penalty for mounting an autofs here should be the same
as for a real mount.
2011-09-21 03:56:55 +02:00
Michal Schmidt
0d60602c3b condition: add ConditionPathIsSymbolicLink 2011-09-21 01:42:02 +02:00
Lennart Poettering
b1db68fa60 units: don't initialize automount point for securityfs if the initrd already mounted the directory 2011-09-21 00:50:41 +02:00
Michal Schmidt
cbe8269481 units: direct stdout/stderr of rescue shells to tty
With output of services going to syslog by default now, the rescue shell
units need to direct their output to tty explicitly.
Specify stderr too, just in case.
2011-09-20 12:15:48 +02:00
Bill Nottingham
d6bca18e28 units: Add support for automounting configfs, ala debugfs, etc. 2011-09-20 03:35:09 +02:00
Lennart Poettering
07bceef2a9 locale: support $LANGUAGE too
$LANGUAGE is a GNU extension that is probably worth supporting, since it
allows specifiying an order of languages.

https://bugs.freedesktop.org/show_bug.cgi?id=40510
2011-08-31 14:10:50 +02:00
Lennart Poettering
4b7b2efb69 man: don't recommend After=syslog.target anymore since we don't support non-socket-activatable syslogs anymore where that was ncessary 2011-08-31 01:35:43 +02:00
Lennart Poettering
346bce1f4c stdout-bridge: rename logger to stdout-syslog-bridge to make it more descriptive 2011-08-30 22:42:49 +02:00
Lennart Poettering
6b3fd98f7a untis: allow both console and plymouth ask password agents in boot transaction to allow dynamically disabled plymouth 2011-08-29 21:48:51 +02:00
Lennart Poettering
8e4fb44ab0 plymouth: don't enable ask-password agent of plymouth is disabled 2011-08-29 19:45:47 +02:00
Lennart Poettering
1d6702e8d3 umask: set umask of a number of sockets by default, even though we check creds on connections 2011-08-01 22:42:07 +02:00
Lennart Poettering
82e487c56d unit: introduce ConditionFileIsExecutable= and use it where we check for a binary we'll spawn 2011-07-12 04:25:02 +02:00
Frederic Crozat
a268a6a38f units: add units for boot.local/halt.local on SUSE distributions. 2011-07-12 00:15:35 +02:00
Lennart Poettering
26b8e979c8 units: enable dev-hugepages.automount and dev-mqueue.automount only when enabled in kernel 2011-07-02 01:00:00 +02:00
Lennart Poettering
bde7f90721 logind: temporarily hack right user bus address into unit file 2011-07-01 22:36:15 +02:00
Lennart Poettering
d42d27ead9 logind: add service for per-user shared systemd daemon 2011-06-30 02:18:01 +02:00
Lennart Poettering
d0a522eb31 logind: autospawn gettys when necessary 2011-06-28 00:26:10 +02:00
Bill Nottingham
1616acbba4 units: Use /etc/rc.d/rc.local as the path to rc.local in Fedora.
/etc/rc.local is a symlink.
2011-06-27 14:25:33 +02:00
Lennart Poettering
3084a7c453 logind: add more necessary caps to the service 2011-06-24 23:52:02 +02:00
Lennart Poettering
094062918c logind: fix set of capabilities 2011-06-24 22:55:51 +02:00
Lennart Poettering
91f9dcaf92 dbus: add dbus introspection extraction 2011-06-21 19:29:45 +02:00
Lennart Poettering
f401e48c2d mechanisms: add mechanisms to change system locale and clock 2011-06-21 19:29:45 +02:00
Tom Gundersen
54763e1266 remote-fs.target: do not order after network.target
remote-fs.target is ordered after the {auto,}mount units. In case of automount
we do not want to wait for the network to come up before proceeding. In case
of a regular mount unit, the unit will be ordered after network.target
so the behavior is unchanged.

This speeds up boot quite a bit for me when having some services needing
NetworkManager-wait-online.service, and having my home partition on nfs
under an automountpoint.
2011-06-14 17:30:46 +02:00
Kay Sievers
da26173785 drop hwclock-save.service
We don't want to fiddle around changing the RTC, not on bootup, not
on shutdown.

If we don't run NTP, we have absolutely no clue what's the current
time to store in the RTC. If we run NTP, the kernel syncs the system
time every 11 minutes to the RTC.

Especially in multi-boot environents we must not call hwclock(8)
which tries to be smart with calculating/storing/applying drifts
and such.

Live-CDs must never touch the RTC, because we don't know if it is
running in UTC or locatime.
2011-05-25 18:21:36 +02:00
Kay Sievers
7948c4dfbe rtc in localtime: use settimeofday(NULL, tz) instead of hwclock(8)
We check for LOCAL in /etc/adjtime and if needed, ask the kernel to
apply the timezone delta to the system clock.

The very first call of settimeofday() without a time, but a timezone
warps the system clock, so that it properly runs in UTC.
2011-05-24 20:23:07 +02:00
Lennart Poettering
6ea832a207 exec: hangup/reset/deallocate VTs in gettys
Explicitly disconnect all clients from a VT when a getty starts/finishes
(requires TIOCVHANGUP, available in 2.6.29).

Explicitly deallocate getty VTs in order to flush scrollback buffer.

Explicitly reset terminals to a defined state before spawning getty.
2011-05-18 01:07:36 +02:00
Miklos Vajna
34a852e6f9 units: Enable plymouth for Frugalware 2011-05-09 22:41:02 +02:00
Lennart Poettering
7ec75dc70f units: enable automount units only if the kernel supports them 2011-05-02 17:43:18 +02:00
Kay Sievers
adf70c5e4e binfmt, modules-load, sysctl, tmpfiles: add missing ConditionDirectoryNotEmpty= 2011-04-30 23:08:15 +02:00
Lennart Poettering
24a73f5157 plymouth: introduce plymouth.enable=0 kernel command line switch 2011-04-30 04:23:36 +02:00
Lennart Poettering
9534ce5485 units: set capability bounding set for syslog services 2011-04-20 03:34:58 +02:00
Chris E Ferron
54e4fdef80 MeeGo support
This commit consists of the initial work to include MeeGo as a ported
distribution for systemd.

The majority of the changes are small configuration additions to auto
tools, so that MeeGo is identified as a valid distribution option.

Some small deviations will be noticed between the configuration of MeeGo
and other distributions. As MeeGo is a distribution striving for
compliancy to support its near embedded attributes and target users,
there is less user configuration options available by default. Most
services will be enabled by systemd as part of the distribution
requirements, and as such most links and service files will be pre-setup
for the MeeGo distribution. As much of this is going to be done within
the MeeGo distribution packaging this is still noteworthy to mention, as
it explains why in systemd you will observe configuration differences
where the MeeGo distribution removes all links in the pkgsysconfdir for
instance.  MeeGo will be user configurable if there is desire, but most
services will be enabled by the distribution as designated by the MeeGo
compliancy standards.

Other changes are in source to add such areas as meego-release defined
in utils, and hostname in hostname-setup, defining vconsole-setup,
localizations and rescue additions as needed.

As this is all ground work, MeeGo will continue to strive for complete
compatibility.
2011-04-20 01:05:30 +02:00
Lennart Poettering
f67c572a7d fsck: don't fsck against basic.target in order to properly allow automount /home 2011-04-20 00:44:37 +02:00
Lennart Poettering
2286fdf7c5 hostnamed: drop all caps but CAP_SYS_ADMIN 2011-04-19 06:07:29 +02:00
Lennart Poettering
7640a5de1b hostnamed: introduce systemd-hostnamed
http://www.freedesktop.org/wiki/Software/systemd/hostnamed
2011-04-16 02:03:35 +02:00
Lennart Poettering
25e3655a00 units: wording fix 2011-04-16 02:03:35 +02:00
Lennart Poettering
42549a5a6a units: order quotacheck after remount-rootfs 2011-04-16 02:03:35 +02:00
Lennart Poettering
c8f4d7642b manager: introduce IgnoreOnIsolate flag so that we can keep systemd-logger around when isolating 2011-04-16 02:03:34 +02:00
Lennart Poettering
cfcab43508 units: never pull in sysinit from utmp, so that we can shutdown from emergency mode without pulling in sysinit 2011-04-16 02:03:34 +02:00
Lennart Poettering
57bd42336e units: require syslog.socket from the logger because we simply fail if we don't have it 2011-04-16 02:03:33 +02:00
Lennart Poettering
530add9d62 logger: adjust socket description to match service 2011-04-16 02:03:33 +02:00
Lennart Poettering
1b5e66919d units: set stdout of kmsg syslogd to /dev/null 2011-04-16 02:03:33 +02:00
Lennart Poettering
7f62e3774c units: add --no-block when starting normal service after shell exited 2011-04-16 02:03:33 +02:00
Lennart Poettering
090bf7cbc4 units: isolate emergency.target instead of emergency.service when we fail to mount all file systems 2011-04-13 04:35:07 +02:00
Lennart Poettering
b9a2a36b51 local-fs: invoke emergency.service mounting at boot fails 2011-04-10 01:42:48 +02:00
Lennart Poettering
0e456f9781 path: optionally, create watched directories in .path units 2011-04-10 01:30:14 +02:00
Lennart Poettering
4466194c43 units: rename rtc-set.target to time-sync.target and pull it in by hwclock-load.service
On request of Miroslav Lichvar, rename rtc-set.target to
time-sync.target since usually the RTC chip isn't involved at all in NTP
syncs.

Also, pull it in by hwclock-load.service.
2011-04-06 19:18:17 +02:00
Lennart Poettering
33bd08a97a units: call the logger a bridge too 2011-04-05 23:22:35 +02:00
Lennart Poettering
f1159d7c78 logger: name socket like service 2011-04-04 15:27:35 +02:00
Lennart Poettering
30d6500340 units: improve logger descriptions 2011-04-04 04:06:24 +02:00
Lennart Poettering
151b190e79 binfmt: add binfmt tool to set up binfmt_misc at boot 2011-04-04 03:36:42 +02:00
Lennart Poettering
99ee2e9295 initctl: /dev/initctl is a named pipe, not a socket 2011-04-03 22:15:14 +02:00
Lennart Poettering
9408a2d295 plymouth: use PID file to detect whether ply is running 2011-03-31 04:26:40 +02:00
Lennart Poettering
39366bacda plymouth: don't explicitly enable status message when plymouth is up
https://bugzilla.redhat.com/show_bug.cgi?id=676302

systemd now watches /run/initramfs/plymouth and generates messages
exactly when that file exists. Hence we don't need the sending of the
signals anymore.
2011-03-30 03:03:35 +02:00
Lennart Poettering
cd25cce98f exec: drop process group kill mode since it has little use and confuses the user 2011-03-29 23:31:38 +02:00
Lennart Poettering
1ead1cad4b man: really fix all LC_MESSAGE to LC_MESSAGES
https://bugs.freedesktop.org/show_bug.cgi?id=35534
2011-03-29 12:12:31 +02:00
William Jon McCann
c20deda415 plymouth: Remove the calls to plymouth message
* messages aren't translated
 * console text is ugly
 * they are jargonny
 * they really aren't needed

https://bugs.freedesktop.org/show_bug.cgi?id=35711
2011-03-29 01:21:54 +02:00
Kay Sievers
2b583ce657 use /run instead of /dev/.run
Instead of the /dev/.run trick we have currently implemented, we decided
to move the early-boot runtime dir to /run.

An existing /var/run directory is bind-mounted to /run. If /var/run is
already a symlink, no action is taken.

An existing /var/lock directory is bind-mounted to /run/lock.
If /var/lock is already a symlink, no action is taken.

To implement the directory vs. symlink logic, we have a:
  ConditionPathIsDirectory=
now, which is used in the mount units.

Skipped mount unit in case of symlink:
  $ systemctl status var-run.mount
  var-run.mount - Runtime Directory
    Loaded: loaded (/lib/systemd/system/var-run.mount)
    Active: inactive (dead)
            start condition failed at Fri, 25 Mar 2011 04:51:41 +0100; 6min ago
     Where: /var/run
      What: /run
    CGroup: name=systemd:/system/var-run.mount

The systemd rpm needs to make sure to add something like:
  %pre
  mkdir -p -m0755 /run >/dev/null 2>&1 || :
or it needs to be added to filesystem.rpm.

Udev -git already uses /run if that exists, and is writable at bootup.
Otherwise it falls back to the current /dev/.udev.

Dracut and plymouth need to be adopted to switch from /dev/.run to run
too.

Cheers,
Kay
2011-03-28 23:00:00 +02:00
Andrey Borzenkov
8c944383c2 units: replace Names=dm.service with symlink for mandriva prefdm 2011-03-18 19:32:49 +03:00
Andrey Borzenkov
0c380104cf mount: pull in quota services from local mountpoints with usr/grpquota options 2011-03-18 19:12:58 +03:00
Lennart Poettering
a0e155d440 units: pull in syslog.target from syslog.socket 2011-03-18 05:17:02 +01:00
Lennart Poettering
d94ac66d32 units: don't ever pull in SysV targets from other SysV targets 2011-03-18 05:13:06 +01:00
Lennart Poettering
1c7c17ea61 units: document that some targets exists only for compat with SysV 2011-03-18 05:12:34 +01:00
Lennart Poettering
6699c857a2 units: we don't need to generate syslog.target with sed anymore 2011-03-18 05:01:30 +01:00
Lennart Poettering
db25d1d765 units: we no longer need m4 to build graphical.target or multi-user.taregt 2011-03-18 04:59:05 +01:00
Lennart Poettering
b1c66c44ef units: on mandriva/fedora create single.service alias via symlink, not Names= 2011-03-18 04:53:31 +01:00
Lennart Poettering
97df13c0ac units: get rid of runlevel Names=, the symlinks in /lib/systemd/system are much more useful 2011-03-18 04:53:31 +01:00
Lennart Poettering
997a624029 units: get rid of empty units/suse/ subdir 2011-03-18 04:53:31 +01:00
Lennart Poettering
f1dd0c3f9b syslog: rework syslog detection so that we need no compile-time option what the name of the syslog implementation is 2011-03-18 04:53:31 +01:00
Lennart Poettering
177b3ffedb special: get rid of dbus.target 2011-03-18 04:53:12 +01:00
Miklos Vajna
196e3fa74a Add Frugalware display-manager service 2011-03-16 03:53:55 +01:00
Lennart Poettering
1063dc3a52 units: add console-shell.service which can be used insted of the gettys to get a shell on /dev/console 2011-03-14 21:00:53 +01:00
Lennart Poettering
91b22f21f3 core: move abstract namespace sockets to /dev/.run
Now that we have /dev/.run there's no need to use abstract namespace
sockets. So, let's move things to /dev/.run, to make things more easily
discoverable and improve compat with chroot() and fs namespacing.
2011-03-14 03:12:25 +01:00
Lennart Poettering
7d640cdf66 units: move the last flag files to /dev/.run 2011-03-11 01:06:53 +01:00
Lennart Poettering
b925e72633 dev: use /dev/.run/systemd as runtime directory, instead of /dev/.systemd 2011-03-09 22:45:47 +01:00
Lennart Poettering
cc5524ecc6 mount: use /dev/.run as an early boot alias for /var/run
During early boot, mount a tmpfs to /dev/.run and then bind mount it to
/var/run as soon as /var is available.

This makes it possible for programs involved in early boot to put
runtime data in /dev/.run which later on will show up in /var/run like
any other.

This can be used to solve the early-boot D-Bus problem: D-Bus may start
up with its socket bound to /dev/.run/dbus/system_bus_socket and after
/var it will also be available under the traditional name
/var/run/dbus/system_bus_socket.

This also is intended to be used as a better place for systemd, mount,
mdadm, blkid, plymouth, bootchart and dracut runtime data, which is
currently stored in various places in /dev/.xxx.
2011-03-09 02:51:45 +01:00
Andrey Borzenkov
1de4d79bf5 build-sys: add Mandriva distribution support
This merges several separate patches that I carry as part of
Mandriva systemd RPM. They touch those parts that are very
unlikely to be changed in near future and do not impose any
functionality change for systemd core. I also think it is
useful for troubleshooting to have real distribution name in
system logs, espicially when someone reports problem upstream.

The patch looks bigger than sum of replaced patches because

- previous patches were applied on top of distro=fedora, now
I need to add all those bits for distro=mandriva as well

- part of patch was done as spec file magic, but it seems more
logical to ship all these bits together
2011-03-08 19:47:36 +01:00
Lennart Poettering
267632f0ab unit: distuingish mandatory from triggering conditions 2011-03-08 03:04:47 +01:00
Lennart Poettering
c4b5a3d66f mount: make /media a tmpfs 2011-03-07 17:38:15 +01:00
53bdb7c186 build-sys: update ALTLinux support
Please apply patch for update ALTLinux support.
2011-02-28 22:10:13 +01:00
Lennart Poettering
aa2e211587 units: synchronize gettys to plymouth even if plymouth is killed by gdm 2011-02-24 02:32:50 +01:00
Lennart Poettering
be12dd0cb8 rescue: terminate plymouth entirely when going into rescue mode 2011-02-23 18:42:08 +01:00
Lennart Poettering
3642d1c988 plymouth: don't wait forever for plymouth in case it is stuck 2011-02-22 18:51:44 +01:00
Lennart Poettering
b7ff1e47da plymouth: ensure we start not a single getty before plymouth is gone because we never know which ttys plymouth still controls 2011-02-21 23:55:17 +01:00
Lennart Poettering
80f7378c5d unit: don't timeout fsck 2011-02-20 20:27:59 +01:00
Lennart Poettering
783bd61209 units: order fsck@.service before basic.target instead of local-fs.target to relax things a little 2011-02-18 12:39:30 +01:00
Lennart Poettering
70db8e3a0b rescue: make 'systemctl default' fail if there is already something running when the shell exited 2011-02-16 19:34:38 +01:00
Lennart Poettering
0a494f1ff3 exec: introduce global defaults for the standard output of services 2011-02-15 11:52:29 +01:00
Lennart Poettering
48774cf60f fsck: output to /dev/console by default in addition to syslog 2011-02-15 01:28:31 +01:00
Lennart Poettering
7a57b332d0 fsck: skip root fsck if dracut already did it 2011-02-14 11:42:47 +01:00
Lennart Poettering
74ce487daf tmpfiles: move binary to /bin to make it publicly available 2011-02-13 14:04:57 +01:00
Lennart Poettering
88dfa2938a units: introduce and hook up sound.target 2011-02-09 21:07:53 +01:00
Lennart Poettering
e1b2b49465 systemd: show status when run with plymouth, and don't start plymouth a second time when it is already running 2011-02-09 14:17:52 +01:00
Jeff Mahoney
cd3f8b7ddb plymouth: move plymouth out of TARGET_FEDORA 2011-02-08 18:47:32 +01:00
a338bab5d0 build-sys: initial support ALTLinux
Hi all!
I added basic support for ALTLinux.
Please see patch or
http://git.altlinux.org/people/shaba/packages/systemd.git?p=systemd.git;a=shortlog;h=refs/heads/altlinux
Thanks.
2011-02-08 12:52:06 +01:00
Lennart Poettering
63c862b051 cryptsetup: fix ordering loop when dealing with encrypted swap devices
https://bugzilla.redhat.com/show_bug.cgi?id=657234
2011-01-21 03:30:18 +01:00
Lennart Poettering
c32e0c40f7 serial-getty: invoking /sbin/securetty is no longer necessary since pam_securetty can now look for console= in /proc/cmdline 2011-01-18 23:51:06 +01:00
Tom Gundersen
dda9be8a99 arch: remove rc-local.service
This is now shipped downstream.
2011-01-17 22:41:28 +01:00
Lennart Poettering
1640944a84 getty: unset locale before execution
On the console indian characters cannot be displayed, hence it is
advisable to disable indian locales on the console, which most
distributions traditionally did from a shell fragment executed post
login. If getty gets started with locale settings passed it would itself
however be translated without the no-indian-on-console fixup applied.

Hence, for now don't pass any locale settings to getty/login, and thus
rely on the classic post-login script fragment to set and fix the
locale.

Eventually we probably want to drop this again since the system locale
should be read and set at one place, and not at multiple, and that one
place should be PID 1.

https://bugzilla.redhat.com/show_bug.cgi?id=663900
2011-01-06 20:38:06 +01:00
Lennart Poettering
60b4f27794 serial: use TERM=vt100 instead of TERM=vt100-nav
TERM=vt100-nav was necessary for compat with some ppc hvc devices, a
long time ago. Unfortunately vt100-nav terminfo is not installed by
default on most distros, hence change the default to v100 which is
available universally and still should be a relatively safe and
conservative default.

Should it turn out that vt100 is not really the best choice we can
revert this change again and then ask distros to move vt100-nav into
their default install.
2011-01-04 21:45:52 +01:00
Miklos Vajna
01c3a63e17 Fix misspellings in os-release manpage and hwclock-load.service 2010-12-20 16:30:59 +01:00
Miklos Vajna
6279e1f014 Frugalware: start gettys after local.service 2010-12-16 15:02:19 +01:00
Gustavo Sverzut Barbieri
d2ffe6deac units: Remove Gentoo specific xdm.service
That unity pulls in OpenRC which in turn pulls in most of legacy
system that causes lots of troubles as it is too smart, thus not
recommended.

Moreover, SystemD developers seems to agree that a service file per DM
is the best approach, so having gdm.service, kdm.service, slim.service
is better than a single wrapper for them.
2010-11-25 00:30:16 +01:00
Lennart Poettering
d4a80c1243 units: simplify shutdown scripts 2010-11-23 01:37:18 +01:00
Lennart Poettering
e096bf2f95 units: move a couple of units from base.target to sysinit.target 2010-11-19 16:24:21 +01:00
Lennart Poettering
8e1bd70d4c sysctl: implement native sysctl tool to support Debian-style /etc/sysctl.d 2010-11-18 21:52:26 +01:00
Lennart Poettering
8cf3a8a982 units: enable console ask-password agent by default 2010-11-18 05:22:25 +01:00
Lennart Poettering
c1d6bc0e53 units: make sure prefdm is killed first, user sessions second on shutdown 2010-11-18 02:45:04 +01:00
Lennart Poettering
2f8cd170ae cryptsetup: automatically order crypt partitions before cryptsetup.target 2010-11-18 02:16:36 +01:00
Lennart Poettering
eb8d87c125 units: order hwclock after readahead 2010-11-16 03:32:54 +01:00
Lennart Poettering
180f90cb13 units: set TERM for gettys again, since they acquire a TTY on their own 2010-11-16 01:54:07 +01:00
Lennart Poettering
f2a29e51f2 units: allow start-up of plymouth ask-password agent very early 2010-11-16 01:51:57 +01:00
Lennart Poettering
74c84e715a units: enable ask-paswword .path units early enough to be useful for early mounts 2010-11-16 01:25:48 +01:00
Lennart Poettering
1e7ba843da units: delay getty until logins are allowed 2010-11-16 01:25:19 +01:00
Lennart Poettering
e3aa71c38c exec: automatically determine right TERM= setting based on tty name 2010-11-15 23:49:02 +01:00
Lennart Poettering
af2d49f70b drop support for MANAGER_SESSION, introduce MANAGER_USER instead 2010-11-15 22:13:26 +01:00
Lennart Poettering
f5319832c4 units: use ConditionDirectoryNotEmpty= where applicable 2010-11-15 22:13:26 +01:00
Kay Sievers
d8b4dbe6d7 delete tmp.mount which may conflict with an unrelated fstab entry 2010-11-15 19:47:25 +01:00
Lennart Poettering
92ab323c82 units: make use of agetty mandatory 2010-11-14 23:48:20 +01:00
Michael Biebl
7611630462 Remove umount*.service files for Debian
With the introduction of native shutdown/reboot, the killall.service was
removed (as this functionality was moved into systemd-shutdown).
Without killall.service though, the umount*.service files no longer work
correctly.
Wit native mount support those files are also no longer necessary, so
remove them.
2010-11-14 22:14:39 +01:00
Lennart Poettering
f54409d8b8 units: deal properly with the fact that agetty is called getty on Debian 2010-11-11 00:30:00 +01:00
Lennart Poettering
3370f947d6 readahead: shortcut replay if /.readahead doesn't exist 2010-10-31 00:53:12 +02:00
Lennart Poettering
739aad5169 fedora: start plymouth after udev-settle, so that the graphics modules are loaded 2010-10-31 00:52:35 +02:00
Lennart Poettering
198b625ba7 units: add unit to call /bin/plymouth update-root-fs --read-write 2010-10-30 23:56:12 +02:00
Lennart Poettering
5edf93ec94 fedora: /bin/plymouth --sysinit is not necessary on shut down 2010-10-30 23:56:12 +02:00
Lennart Poettering
6c6a7c0153 fedora: invoke plymouth with its /bin instead of the /usr/bin/ path 2010-10-29 16:51:13 +02:00
Lennart Poettering
9423fd773e units: fix variable expansion 2010-10-29 16:28:30 +02:00
Lennart Poettering
577780ac5c units: fix quota check description 2010-10-29 16:28:29 +02:00
Lennart Poettering
36044f5a70 fedora plymouthd doesn't seem to like --attach-to-session here 2010-10-29 16:28:29 +02:00
Lennart Poettering
de47ca9b50 units: make fedora/single.service standard and rename it to rescue.service 2010-10-29 16:28:29 +02:00
Lennart Poettering
42eacdadf5 units: introduce plymouth-start and plymouth-kexec, and move a few things back from basic to sysinit 2010-10-29 16:28:29 +02:00
Lennart Poettering
c19a87330f fedora: get rid of sysinit.service 2010-10-29 16:28:29 +02:00
Bill Nottingham
90d2e58ae9 Fedora: by default, run prefdm last to match prior behavior. 2010-10-29 16:28:28 +02:00
Bill Nottingham
8e9b7dd86b Fedora: don't ship [Install] sections; these are enabled in the system configuration. 2010-10-29 16:28:28 +02:00
Bill Nottingham
73d35ff8e4 Fedora: further unit tweaks
1) Just ship rc-local as-is; don't worry about the 'local' name.
2) Don't install rc-local and prefdm to /etc ; just enable them globally for the system in /lib.
2010-10-29 16:28:28 +02:00
Bill Nottingham
9524600eac Fedora: Assorted tweaks to Fedora single-user mode.
1) Start after basic.target, not the deprecated sysinit.target
2) Conflict with shutdown.
2010-10-29 16:28:28 +02:00
Lennart Poettering
ead8e4788e unit: get rid of gnoreDependencyFailure= instead treat ConflictedBy= as weaker counterpart of Conflicts=, similar to Wants= vs. Requires= 2010-10-29 16:28:27 +02:00
Kay Sievers
9ed81015f0 getty@.service: switch to agetty as the default 2010-10-29 15:50:09 +02:00
Lennart Poettering
b81884e746 unit: replace StopRetroactively= by BindTo= dependencies
The property StopRetroactively= needs to be per-dependency, not
per-unit, in order to properly express dependencies between .mount units
and its .device and fsck .service units. If the .device unit is
unplugged the mount should go away, but if the fsck process terminates
the .mount should stay.
2010-10-29 00:45:46 +02:00
Lennart Poettering
c858849d45 units: run sysctl only if /etc/sysctl.conf exists 2010-10-28 22:12:05 +02:00
Lennart Poettering
4690698d49 units: run sysv related scripts with TERM=linux 2010-10-27 05:45:09 +02:00
Lennart Poettering
e0e1580aae ask-password: enable plymouth agent by default 2010-10-26 04:40:32 +02:00
Lennart Poettering
5f36328f55 units: now that we don't set TERM anymore by default, make sure to pass it to our rescue sessions 2010-10-26 02:58:59 +02:00
Franz Dietrich
5b40d54851 units: Remove the distro specific references to killall.service.
Maybe debian and fedora still have the killall.service but usually it shouldn't be necessary anymore.
2010-10-26 00:01:12 +02:00
Franz Dietrich
9ef9c0b3a3 units: Since killall.service does not exist anymore remove all references.
This commit deletes all references to killall.service for the default
services.  The distribution specific services will be modified in a
separate commit.
2010-10-25 23:54:36 +02:00
Lennart Poettering
a55c7d2ea0 mount: add nosuid,nodev,noexec switches to /var/lock and /var/run 2010-10-25 23:28:42 +02:00
Tom Gundersen
ac52853d6d arch: remove obsolete sysinit.service
This is now split into smaller units and shipped with the downstream package.
2010-10-25 22:03:22 +02:00
Tom Gundersen
72de7bbf39 fsck: remove symlink from fsck.target to sysinit.target 2010-10-25 22:02:52 +02:00
Andrew Edmunds
858dae181b ubuntu: Treat Ubuntu as a distinct distro in configure.ac etc
Previously Ubuntu was treated as being equivalent to Debian, but the two
distributions require different behaviour in certain places.  This commit does
not change the behaviour of systemd on either distro but it creates a
framework for changes to be introduced by later commits.

The following previously meant "Target is Debian or Ubuntu".
    * configure option "--with-distro=debian"
    * C preprocessor symbol "TARGET_DEBIAN"
    * Automake conditional "TARGET_DEBIAN"
After this commit, all of the above are redefined to mean "Target is Debian"

The following are introduced to mean "Target is Ubuntu".
    * configure option "--with-distro=ubuntu"
    * C preprocessor symbol "TARGET_UBUNTU"
    * Automake conditional "TARGET_UBUNTU"

Most code written for Debian will also be applicable to Ubuntu. An extra
Automake conditional "TARGET_DEBIAN_OR_UBUNTU" is introduced to avoid
duplication of code that would otherwise occur.

This commit updates configure.ac, Makefile.am and distro-specific source files
in line with the above definitions.
2010-10-25 21:09:56 +02:00
Lennart Poettering
306a7fd82e units: activate wall agent automatically if something is dropped in /dev/.systemd/ask-password 2010-10-25 21:02:01 +02:00
Lennart Poettering
5cf18f777f units: order syslog.target after syslog.socket 2010-10-21 13:49:21 +02:00
Lennart Poettering
52f319b293 syslog: enable kmsg bridge by default and enable syslogging for early boot services 2010-10-20 17:48:01 +02:00
Lennart Poettering
0206d45866 quota: fix quotaon command line 2010-10-20 16:43:55 +02:00
Lennart Poettering
9fc507041e unit: introduce %f specifier to decode file names 2010-10-20 16:16:45 +02:00
Lennart Poettering
f875bcfe35 quota: enable quotaon/quotacheck in local-fs.target, not basic.target 2010-10-20 16:15:33 +02:00
Lennart Poettering
4c446f03e8 quota: add install hooks for basic.target 2010-10-20 15:22:20 +02:00
Lennart Poettering
7d1316aa29 fsck: wait for device to show up 2010-10-20 15:22:04 +02:00
Lennart Poettering
ba5beeb174 units: properly use ConditionPathExists= instead of ConditionFileExists= 2010-10-20 14:22:49 +02:00
Lennart Poettering
2ba545f1a0 service: implement FsckPassNo= option 2010-10-20 14:22:23 +02:00
Lennart Poettering
335aa753fa units: add missing fsck units 2010-10-20 00:13:23 +02:00
Lennart Poettering
a9e1f5ec36 fsck: properly hook in fsck everywhere, add special support for fsck'ing root dir 2010-10-19 23:45:18 +02:00
Lennart Poettering
3b63d2d31d tmpfiles: integrate kay's directory cleanup code and otherwise beef up tmpfiles quite a bit 2010-10-18 22:38:41 +02:00
Lennart Poettering
ddd941ed5c fedora: add compat unit for /sbin/halt.local 2010-10-14 03:59:49 +02:00