diff options
author | David Teigland <teigland@redhat.com> | 2022-01-25 16:05:32 -0600 |
---|---|---|
committer | David Teigland <teigland@redhat.com> | 2022-01-27 16:43:11 -0600 |
commit | ee8fb0310c53ed003a43b324c99cdfd891dd1a7c (patch) | |
tree | 02666dd7745226b0ddfcfa58cd38f62c7a1a57cc /man | |
parent | a425729da9e756a91a5729addb26029216bfd476 (diff) | |
download | lvm2-ee8fb0310c53ed003a43b324c99cdfd891dd1a7c.tar.gz |
remove static autoactivation
event based autoactivation is now the only method that lvm
provides for autoactivation.
Setting lvm.conf event_activation=0 can still be used to disable
event based autoactivation commands, but doing so will no longer
enable static autoactivation.
Diffstat (limited to 'man')
-rw-r--r-- | man/Makefile.in | 12 | ||||
-rw-r--r-- | man/lvm.8_main | 1 | ||||
-rw-r--r-- | man/lvm2-activation-generator.8_main | 58 | ||||
-rw-r--r-- | man/lvmautoactivation.7_main | 49 | ||||
-rw-r--r-- | man/see_also.end | 1 |
5 files changed, 15 insertions, 106 deletions
diff --git a/man/Makefile.in b/man/Makefile.in index ba6f2046f..d3f0f583a 100644 --- a/man/Makefile.in +++ b/man/Makefile.in @@ -47,7 +47,6 @@ MAN8=lvm.8 lvmdump.8 lvm-fullreport.8 lvm-lvpoll.8 \ MAN8SO=lvm-config.8 lvm-dumpconfig.8 MAN8DM=dmsetup.8 dmstats.8 MAN8CLUSTER= -MAN8SYSTEMD_GENERATORS=lvm2-activation-generator.8 ifeq (,$(findstring $(MAKECMDGOALS), distclean all_man install_all_man)) MAN7 += lvmcache.7 lvmthin.7 lvmvdo.7 @@ -119,7 +118,7 @@ TESTMAN=test.gen include $(top_builddir)/make.tmpl CLEAN_TARGETS+=$(MAN5) $(MAN7) $(MAN8) $(MAN8SO) $(MAN8:%.8=%.8_gen) $(MAN8CLUSTER) \ - $(MAN8SYSTEMD_GENERATORS) $(MAN8DM) $(TESTMAN) + $(MAN8DM) $(TESTMAN) all: man device-mapper @@ -127,11 +126,11 @@ all: man device-mapper device-mapper: $(MAN8DM) -man: $(MAN5) $(MAN7) $(MAN8) $(MAN8SO) $(MAN8CLUSTER) $(MAN8SYSTEMD_GENERATORS) +man: $(MAN5) $(MAN7) $(MAN8) $(MAN8SO) $(MAN8CLUSTER) all_man: man -$(MAN5) $(MAN7) $(MAN8) $(MAN8SO) $(MAN8DM) $(MAN8CLUSTER) $(MAN8SYSTEMD_GENERATORS): Makefile +$(MAN5) $(MAN7) $(MAN8) $(MAN8SO) $(MAN8DM) $(MAN8CLUSTER): Makefile $(MANGENERATOR): @echo " [MAKE] $<" @@ -289,11 +288,6 @@ install_device-mapper: $(MAN8DM) $(Q) $(INSTALL) -d $(MAN8DIR) $(Q) $(INSTALL_DATA) $^ $(MAN8DIR)/ -install_systemd_generators: $(MAN8SYSTEMD_GENERATORS) - @echo " [INSTALL] $^" - $(Q) $(INSTALL) -d $(MAN8DIR) - $(Q) $(INSTALL_DATA) $^ $(MAN8DIR)/ - install: install_lvm2 install_device-mapper install_cluster install_all_man: install install_systemd_generators diff --git a/man/lvm.8_main b/man/lvm.8_main index a008a3bc0..6e8a1d1d3 100644 --- a/man/lvm.8_main +++ b/man/lvm.8_main @@ -563,7 +563,6 @@ Prepends source file name and code line number with libdm debugging. .P .BR lvm-fullreport (8), .BR lvm-lvpoll (8), -.BR lvm2-activation-generator (8), .BR blkdeactivate (8), .BR lvmdump (8), .P diff --git a/man/lvm2-activation-generator.8_main b/man/lvm2-activation-generator.8_main deleted file mode 100644 index 4c54da285..000000000 --- a/man/lvm2-activation-generator.8_main +++ /dev/null @@ -1,58 +0,0 @@ -.TH "LVM2-ACTIVATION-GENERATOR" "8" "LVM TOOLS #VERSION#" "Red Hat, Inc" "\"" -. -.SH "NAME" -. -lvm2-activation-generator - generator for systemd units to activate LVM volumes on boot -. -.SH SYNOPSIS -. -.B #SYSTEMD_GENERATOR_DIR#/lvm2-activation-generator -. -.SH DESCRIPTION -. -The lvm2-activation-generator is called by \fBsystemd\fP(1) on boot to -generate systemd units at runtime to activate LVM Logical Volumes (LVs) -when global/event_activation=0 is set in \fBlvm.conf\fP(5). These units use -\fBvgchange -aay\fP to activate LVs. -.P -If event_activation=1, the lvm2-activation-generator exits immediately without -generating any systemd units, and LVM fully relies on event-based -activation to activate LVs. In this case, event-generated -.B pvscan --cache -aay -commands activate LVs. -.P -These systemd units are generated by lvm2-activation-generator: -.P -.I lvm2-activation-early.service -is run before systemd's special \fBcryptsetup.target\fP to activate -LVs that are not layered on top of encrypted devices. -.P -.I lvm2-activation.service -is run after systemd's special \fBcryptsetup.target\fP to activate -LVs that are layered on top of encrypted devices. -.P -.I lvm2-activation-net.service -is run after systemd's special \fBremote-fs-pre.target\fP to activate -LVs that are layered on attached remote devices. -.P -Note that all the underlying LVM devices (Physical Volumes) need to be -present when the service is run. If the there are any devices that appear -to the system later, LVs using these devices need to be activated directly -by \fBlvchange\fP(8) or \fBvgchange\fP(8). -.P -The lvm2-activation-generator implements the \fBGenerators Specification\fP -as referenced in \fBsystemd\fP(1). -. -.SH SEE ALSO -.nh -.ad l -.BR lvm.conf (5), -.BR vgchange (8), -.BR lvchange (8), -.BR pvscan (8), -.P -.BR systemd (1), -.BR systemd.target (5), -.BR systemd.special (7), -.P -.BR udev (7) diff --git a/man/lvmautoactivation.7_main b/man/lvmautoactivation.7_main index 54dab718b..808ea0d9f 100644 --- a/man/lvmautoactivation.7_main +++ b/man/lvmautoactivation.7_main @@ -17,13 +17,11 @@ is another way to limit autoactivation. . .SS event autoactivation .P -The most common form of autoactivation is "event based", in which complete -VGs are activated in response to uevents which occur during system startup -or at any time after the system has started. Another form of -autoactivation is "static" in which complete VGs are activated at a fixed -point during system startup by a systemd service, and not in response to -events. This can be controlled with the lvm.conf setting -event_activation. +LVM autoactivation is "event based", in which complete VGs are activated +in response to uevents which occur during system startup or at any time +after the system has started. An old form of autoactivation was "static" +in which complete VGs are activated at a fixed point during system startup +by a systemd service, and not in response to events. .P Event based autoactivation is driven by udev, udev rules, and systemd. When a device is attached to a machine, a uevent is generated by the @@ -32,7 +30,7 @@ rules to process the new device. Udev rules use blkid to identify the device as an LVM PV and then execute the lvm-specific udev rule for the device, which triggers autoactivation. .P -There are two variations of event baed autoactivation that may be used on +There are two variations of event based autoactivation that may be used on a system, depending on the LVM udev rule that is installed (found in /lib/udev/rules.d/.) The following summarizes the steps in each rule which lead to autoactivation: @@ -179,35 +177,12 @@ concurrent commands attempt to activate a VG at once. . .SS static autoactivation .P -When event autoactivation is disabled by setting lvm.conf -event_activation=0, autoactivation is performed at one or more static -points during system startup. At these points, a vgchange -aay command is -run to activate complete VGs from devices that are present on the system -at that time. pvscan commands (and lvm2-pvscan services) do not perform -autoactivation in this mode. pvscan commands may still be run from -uevents but will do nothing when they read the event_activation=0 setting. -.P -The static vgchange -aay commands are run by three systemd services at -three points during startup: lvm2-activation-early, lvm2-activation, and -lvm2-activation-net. These static activation services are "generated -services", so the service files are created at run time by the -lvm2-activation-generator command (run by systemd). -lvm2-activation-generator creates the services if lvm.conf -event_activation=0. -.P -The limitation of this method is that devices may not be attached to the -system (or set up) at a reliable point in time during startup, and they -may not be present when the services run vgchange. In this case, the VGs -will not be autoactivated. So, the timing of device attachment/setup -determines whether static autoactivation will produce the same results as -event autoactivation. For this reason, static autoactivation is not -recommended. -.P -Sometimes, static autoactivation is mistakenly expected to disable all -autoactivation of particular VGs. This may appear to be effective if those -VGs are slow to be attached or set up. But, the only correct and reliable -way to disable autoactivation is using vgchange/lvchange ---setautoactivation n, or lvm.conf auto_activation_volume_list. +A static autoactivation method is no longer provided by lvm. +Setting event_activation=0 still disables event based autoactivation. +WARNING: disabling event activation without an alternative may prevent a +system from booting. A custom systemd service could be written to run +autoactivation during system startup, in which case disabling event +autoactivation may be useful. . .SH EXAMPLES .P diff --git a/man/see_also.end b/man/see_also.end index cf7834052..46c82802a 100644 --- a/man/see_also.end +++ b/man/see_also.end @@ -53,7 +53,6 @@ .P .BR lvm-fullreport (8), .BR lvm-lvpoll (8), -.BR lvm2-activation-generator (8), .BR blkdeactivate (8), .BR lvmdump (8), .P |