chiark / gitweb /
remount: consolidate remount-api-vfs and remount-rootfs into one
authorLennart Poettering <lennart@poettering.net>
Tue, 24 Apr 2012 14:42:42 +0000 (16:42 +0200)
committerLennart Poettering <lennart@poettering.net>
Tue, 24 Apr 2012 14:42:42 +0000 (16:42 +0200)
This has the advantage of removing a confusing warning by mount if the
root directory is not listed in fstab.

.gitignore
Makefile.am
src/core/special.h
src/core/swap.c
src/remount-fs/Makefile [moved from src/remount-api-vfs/Makefile with 100% similarity]
src/remount-fs/remount-fs.c [moved from src/remount-api-vfs/remount-api-vfs.c with 96% similarity]
units/.gitignore
units/quotacheck.service.in
units/systemd-remount-api-vfs.service.in [deleted file]
units/systemd-remount-fs.service.in [moved from units/remount-rootfs.service with 86% similarity]

index ea031c4..a921c76 100644 (file)
@@ -1,3 +1,4 @@
+/systemd-remount-fs
 /build-aux
 /test-watchdog
 /test-journal-send
index ab7fca6..b503b01 100644 (file)
@@ -225,7 +225,7 @@ rootlibexec_PROGRAMS = \
        systemd-shutdownd \
        systemd-shutdown \
        systemd-modules-load \
-       systemd-remount-api-vfs \
+       systemd-remount-fs \
        systemd-reply-password \
        systemd-fsck \
        systemd-timestamp \
@@ -287,7 +287,6 @@ dist_systemunit_DATA = \
        units/sys-kernel-debug.mount \
        units/sys-fs-fuse-connections.mount \
        units/tmp.mount \
-       units/remount-rootfs.service \
        units/printer.target \
        units/sound.target \
        units/bluetooth.target \
@@ -308,7 +307,7 @@ nodist_systemunit_DATA = \
        units/systemd-initctl.service \
        units/systemd-shutdownd.service \
        units/systemd-modules-load.service \
-       units/systemd-remount-api-vfs.service \
+       units/systemd-remount-fs.service \
        units/systemd-update-utmp-runlevel.service \
        units/systemd-update-utmp-shutdown.service \
        units/systemd-tmpfiles-setup.service \
@@ -345,7 +344,7 @@ EXTRA_DIST += \
        units/systemd-initctl.service.in \
        units/systemd-shutdownd.service.in \
        units/systemd-modules-load.service.in \
-       units/systemd-remount-api-vfs.service.in \
+       units/systemd-remount-fs.service.in \
        units/systemd-update-utmp-runlevel.service.in \
        units/systemd-update-utmp-shutdown.service.in \
        units/systemd-tmpfiles-setup.service.in \
@@ -1110,12 +1109,12 @@ systemd_rc_local_generator_LDADD = \
        libsystemd-shared.la
 
 # ------------------------------------------------------------------------------
-systemd_remount_api_vfs_SOURCES = \
-       src/remount-api-vfs/remount-api-vfs.c \
+systemd_remount_fs_SOURCES = \
+       src/remount-fs/remount-fs.c \
        src/core/mount-setup.c \
        src/core/mount-setup.h
 
-systemd_remount_api_vfs_LDADD = \
+systemd_remount_fs_LDADD = \
        libsystemd-shared.la
 
 # ------------------------------------------------------------------------------
@@ -3059,13 +3058,11 @@ systemd-install-data-hook:
                rm -f systemd-update-utmp-shutdown.service && \
                $(LN_S) ../systemd-update-utmp-shutdown.service systemd-update-utmp-shutdown.service )
        ( cd $(DESTDIR)$(systemunitdir)/local-fs.target.wants && \
-               rm -f systemd-remount-api-vfs.service \
+               rm -f systemd-remount-fs.service \
                        fsck-root.service \
-                       remount-rootfs.service \
                        tmp.mount && \
-               $(LN_S) ../systemd-remount-api-vfs.service systemd-remount-api-vfs.service && \
+               $(LN_S) ../systemd-remount-fs.service systemd-remount-fs.service && \
                $(LN_S) ../fsck-root.service fsck-root.service && \
-               $(LN_S) ../remount-rootfs.service remount-rootfs.service && \
                $(LN_S) ../tmp.mount tmp.mount )
        ( cd $(DESTDIR)$(userunitdir) && \
                rm -f shutdown.target sockets.target bluetooth.target printer.target sound.target && \
index f1ff1b9..2db4711 100644 (file)
@@ -65,7 +65,7 @@
 #define SPECIAL_FSCK_SERVICE "fsck@.service"
 #define SPECIAL_QUOTACHECK_SERVICE "quotacheck.service"
 #define SPECIAL_QUOTAON_SERVICE "quotaon.service"
-#define SPECIAL_REMOUNT_ROOTFS_SERVICE "remount-rootfs.service"
+#define SPECIAL_REMOUNT_FS_SERVICE "systemd-remount-fs.service"
 
 /* Services systemd relies on */
 #define SPECIAL_DBUS_SERVICE "dbus.service"
index fea3f68..d2f9491 100644 (file)
@@ -211,9 +211,9 @@ static int swap_add_device_links(Swap *s) {
                                           UNIT(s)->manager->running_as == MANAGER_SYSTEM);
         else
                 /* File based swap devices need to be ordered after
-                 * remount-rootfs.service, since they might need a
+                 * systemd-remount-fs.service, since they might need a
                  * writable file system. */
-                return unit_add_dependency_by_name(UNIT(s), UNIT_AFTER, SPECIAL_REMOUNT_ROOTFS_SERVICE, NULL, true);
+                return unit_add_dependency_by_name(UNIT(s), UNIT_AFTER, SPECIAL_REMOUNT_FS_SERVICE, NULL, true);
 }
 
 static int swap_add_default_dependencies(Swap *s) {
similarity index 96%
rename from src/remount-api-vfs/remount-api-vfs.c
rename to src/remount-fs/remount-fs.c
index 373ae25..35b7154 100644 (file)
@@ -78,7 +78,9 @@ int main(int argc, char *argv[]) {
                 int k;
                 char *s;
 
-                if (!mount_point_is_api(me->mnt_dir))
+                /* Remount the root fs and all API VFS */
+                if (!mount_point_is_api(me->mnt_dir) &&
+                    !path_equal(me->mnt_dir, "/"))
                         continue;
 
                 log_debug("Remounting %s", me->mnt_dir);
index 16cbf2d..68c174f 100644 (file)
@@ -28,7 +28,7 @@ systemd-readahead-replay.service
 serial-getty@.service
 systemd-kmsg-syslogd.service
 systemd-modules-load.service
-systemd-remount-api-vfs.service
+/systemd-remount-fs.service
 systemd-vconsole-setup.service
 systemd-auto-serial-getty.service
 systemd-shutdownd.service
index d28b533..d3343df 100644 (file)
@@ -8,7 +8,7 @@
 [Unit]
 Description=File System Quota Check
 DefaultDependencies=no
-After=systemd-readahead-collect.service systemd-readahead-replay.service remount-rootfs.service
+After=systemd-readahead-collect.service systemd-readahead-replay.service systemd-remount-fs.service
 Before=local-fs.target shutdown.target
 ConditionPathExists=/sbin/quotacheck
 
diff --git a/units/systemd-remount-api-vfs.service.in b/units/systemd-remount-api-vfs.service.in
deleted file mode 100644 (file)
index 60ff9c3..0000000
+++ /dev/null
@@ -1,20 +0,0 @@
-#  This file is part of systemd.
-#
-#  systemd is free software; you can redistribute it and/or modify it
-#  under the terms of the GNU Lesser General Public License as published by
-#  the Free Software Foundation; either version 2.1 of the License, or
-#  (at your option) any later version.
-
-[Unit]
-Description=Remount API VFS
-DefaultDependencies=no
-Conflicts=shutdown.target
-After=systemd-readahead-collect.service systemd-readahead-replay.service
-Before=local-fs-pre.target local-fs.target shutdown.target
-Wants=local-fs-pre.target
-ConditionPathExists=/etc/fstab
-
-[Service]
-Type=oneshot
-RemainAfterExit=yes
-ExecStart=@rootlibexecdir@/systemd-remount-api-vfs
similarity index 86%
rename from units/remount-rootfs.service
rename to units/systemd-remount-fs.service.in
index 52a7074..5074ab5 100644 (file)
@@ -6,7 +6,7 @@
 #  (at your option) any later version.
 
 [Unit]
-Description=Remount Root FS
+Description=Remount Root and Kernel File Systems
 DefaultDependencies=no
 Conflicts=shutdown.target
 After=systemd-readahead-collect.service systemd-readahead-replay.service fsck-root.service
@@ -17,4 +17,4 @@ ConditionPathExists=/etc/fstab
 [Service]
 Type=oneshot
 RemainAfterExit=yes
-ExecStart=/bin/mount / -o remount
+ExecStart=@rootlibexecdir@/systemd-remount-fs