X-Git-Url: https://git.tld-linux.org/?p=packages%2Flvm2.git;a=blobdiff_plain;f=lvm2.spec;h=4926c592effd8f1da9bc4de79a7d57dbeffa9982;hp=5d10fdbd8a0722c1c70226b26f835abfe49f7e3a;hb=HEAD;hpb=bf0e149a8b30880914b7ce3b57c4b85cd0ce7905 diff --git a/lvm2.spec b/lvm2.spec index 5d10fdb..4926c59 100644 --- a/lvm2.spec +++ b/lvm2.spec @@ -1,86 +1,67 @@ # TODO # - vgscan --ignorelocking failure creates /var/lock/lvm (even if /var is not yet mounted) -# - --with-replicators (=internal/shared/none, default is none)? +# - internal vs shared for snapshots,mirrors,thin,cache ? +# note: dmeventd requires mirrors=internal) # # Conditional build: -%bcond_with initrd # build initrd version -%bcond_without uClibc # link initrd version with uClibc -%bcond_with dietlibc # link initrd version with dietlibc -%bcond_with glibc # link initrd version with static GLIBC -%bcond_without cluster # disable all cluster support (clvmd&cmirrord) -%bcond_without lvmetad # disable lvmetad (and lvmlockd) -%bcond_without lvmpolld # disable lvmpolld (and lvmlockd) -%bcond_without lvmlockd # disable lvmlockd +# - functionality +%bcond_without cluster # disable all cluster support (cmirrord, dlm support in lvmlockd) +%bcond_without lvmdbusd # lvmdbusd +%bcond_without lvmpolld # lvmpolld (and lvmlockd) +%bcond_without lvmlockd # lvmlockd %bcond_with sanlock # sanlock support in lvmlockd -%bcond_with replicator # internal replicator support +# - additional features %bcond_without selinux # SELinux support -%bcond_without python # Python binding - -# lvmlockd requires lvmetad and lvmpolld -%if %{without lvmetad} || %{without lvmpolld} -%undefine with_lvmpolld -%endif - -# if one of the *libc is enabled disable default dietlibc -%if %{with dietlibc} && %{with uClibc} -%undefine with_dietlibc +# - bindings +%bcond_without python # Python bindings +%bcond_without python2 # Python 2 binding +%bcond_without python3 # Python 3 binding and lvmdbusd + +# lvmlockd requires lvmpolld +%if %{without lvmpolld} +%undefine with_lvmlockd %endif -# with glibc disables default dietlibc -%if %{with glibc} && %{with dietlibc} -%undefine with_dietlibc -%endif - -# fallback is glibc if neither alternatives are enabled -%if %{without dietlibc} && %{without uClibc} -%define with_glibc 1 +%if %{without cluster} && %{without sanlock} +%undefine with_lvmlockd %endif Summary: The new version of Logical Volume Manager for Linux Summary(pl.UTF-8): Nowa wersja Logical Volume Managera dla Linuksa Name: lvm2 -Version: 2.02.132 -Release: 1.1 +Version: 2.03.23 +Release: 1 License: GPL v2 and LGPL v2.1 Group: Applications/System -Source0: ftp://sources.redhat.com/pub/lvm2/LVM2.%{version}.tgz -# Source0-md5: 80af5af726949bbbb2aceb15b24b7d20 -Source1: clvmd.sysconfig +Source0: ftp://sourceware.org/pub/lvm2/LVM2.%{version}.tgz +# Source0-md5: 0535b5e638b6f0b48f7b259e0ec0ba65 Patch0: %{name}-selinux.patch -Patch1: %{name}-diet.patch -Patch2: device-mapper-dmsetup-export.patch -Patch3: %{name}-tld_init.patch -Patch4: dl-dlsym.patch -Patch6: %{name}-lvm_path.patch -Patch7: %{name}-clvmd_cmd_timeout.patch -Patch8: device-mapper-dmsetup-deps-export.patch +Patch1: device-mapper-dmsetup-export.patch +Patch2: %{name}-tld_init.patch +Patch3: %{name}-run-dir.patch +Patch4: %{name}-thin.patch +Patch5: link.patch URL: http://www.sourceware.org/lvm2/ -BuildRequires: autoconf >= 2.61 +BuildRequires: autoconf >= 2.69 +BuildRequires: autoconf-archive BuildRequires: automake # for /run detection BuildRequires: filesystem >= 3.0-43 +BuildRequires: libaio-devel BuildRequires: libblkid-devel >= 2.24 %{?with_selinux:BuildRequires: libselinux-devel >= 1.10} %{?with_selinux:BuildRequires: libsepol-devel} BuildRequires: ncurses-devel BuildRequires: pkgconfig -%{?with_python:BuildRequires: python-devel >= 2} +%if %{with lvmdbusd} +BuildRequires: python3-dbus +BuildRequires: python3-devel >= 1:3.2 +BuildRequires: python3-pyudev +%endif BuildRequires: readline-devel BuildRequires: rpmbuild(macros) >= 1.647 -%{?with_sanlock:BuildRequires: sanlock-devel >= 3.2.4} +%{?with_sanlock:BuildRequires: sanlock-devel >= 3.3.0} BuildRequires: udev-devel >= 1:176 -%if %{with initrd} -%if %{with dietlibc} -BuildRequires: dietlibc-static >= 2:0.32-7 -BuildConflicts: device-mapper-dietlibc -%endif -%if %{with glibc} -%{?with_selinux:BuildRequires: libselinux-static} -%{?with_selinux:BuildRequires: libsepol-static} -%endif -%{?with_glibc:BuildRequires: glibc-static} -%{?with_uClibc:BuildRequires: uClibc-static >= 2:0.9.29} -%endif %if %{with cluster} BuildRequires: corosync-devel BuildRequires: dlm-devel >= 3.99.5 @@ -90,9 +71,10 @@ Requires: device-mapper >= %{version}-%{release} %{?with_selinux:Requires: libselinux >= 1.10} # doesn't work with 2.4 kernels Requires: uname(release) >= 2.6 -Suggests: thin-provisioning-tools >= 0.5.4 -Obsoletes: lvm -Obsoletes: lvm2-systemd +Suggests: thin-provisioning-tools >= 0.7.0 +Obsoletes: lvm < 2 +Obsoletes: lvm2-clvmd < 2.03 +Obsoletes: lvm2-systemd < 2.02.94 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) %define _sbindir /sbin @@ -101,17 +83,10 @@ BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) # changing CFLAGS in the middle confuses confcache %undefine configure_cache -# borken on AC -%define filterout_ld -Wl,--as-needed - # causes: undefined reference to `__stack_chk_fail_local' %define filterout_c -fstack-protector -# for some reason known only to rpm there must be "\\|" not "\|" here -%define dietarch %(echo %{_target_cpu} | sed -e 's/i.86\\|pentium.\\|athlon/i386/;s/amd64/x86_64/;s/armv.*/arm/') -%define dietlibdir %{_prefix}/lib/dietlibc/lib-%{dietarch} - -%define skip_post_check_so '.*libdevmapper-event-lvm2.so.*' +%define skip_post_check_so '.*libdevmapper-event-lvm2.so.*' 'liblvm2cmd.so.*' %description This package includes a number of utilities for creating, checking, @@ -121,37 +96,6 @@ and repairing logical volumes. Pakiet ten zawiera narzędzia do tworzenia, sprawdzania i naprawiania logicznych wolumenów dyskowych (LVM2). -%package initrd -Summary: The new version of Logical Volume Manager for Linux - initrd version -Summary(pl.UTF-8): Nowa wersja Logical Volume Managera dla Linuksa - wersja dla initrd -Group: Base -Conflicts: geninitrd < 10000.18 - -%description initrd -This package includes a number of utilities for creating, checking, -and repairing logical volumes - staticaly linked for initrd. - -%description initrd -l pl.UTF-8 -Pakiet ten zawiera narzędzia do tworzenia, sprawdzania i naprawiania -logicznych wolumenów dyskowych (LVM2) - statycznie skonsolidowane na -potrzeby initrd. - -%package clvmd -Summary: Cluster LVM daemon -Summary(pl.UTF-8): Demon clustra LVM -Group: Applications/System -Requires: %{name} = %{version}-%{release} - -%description clvmd -clvmd is the daemon that distributes LVM metadata updates around a -cluster. It must be running on all nodes in the cluster and will give -an error if a node in the cluster does not have this daemon running. - -%description clvmd -l pl.UTF-8 -clvmd to demon który rozprowadza zmiany meta-danych LVM po klastrze. -Mysi działać na wszystkich węzłach klastra i zgłosi błąd gdy jakiś -węzeł w klastrze nie ma tego demona uruchomionego. - %package cmirrord Summary: Cluster mirror log daemon Summary(pl.UTF-8): Demon śledzący log lustrzany w klastrze @@ -168,7 +112,7 @@ This daemon relies on the cluster infrastructure provided by the Cluster MANager (CMAN), which must be set up and running in order for cmirrord to function. -%description cmirrord +%description cmirrord -l pl.UTF-8 cmirrord to demon śledzący informacje logu lustrzanego w klastrze. Jest specyficzny dla klastrów lustrzanych opartych na device-mapperze (oraz, poprzez rozszerzenie, klastrów lustrzanych LVM). W klastrach @@ -178,6 +122,37 @@ Ten demon polega na infrastrukturze klastra dostarczanej przez CMAN (Cluster MANager), który musi być skonfigurowany i działający, aby działał cmirrord. +%package dbusd +Summary: LVM2 D-Bus daemon +Summary(pl.UTF-8): Demon LVM2 D-Bus +Group: Daemons +Requires: %{name} = %{version}-%{release} +Requires: python3-dbus +Requires: python3-pygobject3 >= 3 +Requires: python3-pyudev + +%description dbusd +Daemon for access to LVM2 functionality through a D-Bus interface. + +%description dbusd -l pl.UTF-8 +Demon umożliwiający dostęp do funkcjonalności LVM2 poprzez interfejs +D-Bus. + +%package lockd +Summary: LVM2 locking daemon +Summary(pl.UTF-8): Demon blokad LVM2 +Group: Daemons +Requires: %{name} = %{version}-%{release} +%{?with_cluster:Requires: dlm-libs >= 3.99.5} +%{?with_sanlock:Requires: sanlock-libs >= 3.3.0} + +%description lockd +LVM commands use lvmlockd to coordinate access to shared storage. + +%description lockd -l pl.UTF-8 +Polecenia LVM wykorzystują lvmlockd do koordynowania dostępu do +współdzielonej pamięci masowej. + %package resource-agents Summary: OCF Resource Agents for LVM2 processes Summary(pl.UTF-8): Agenci OCF do monitorowania procesów LVM2 @@ -191,18 +166,6 @@ OCF Resource Agents for LVM2 processes. %description resource-agents -l pl.UTF-8 Agenci OCF do monitorowania procesów LVM2. -%package -n python-lvm -Summary: Python interface to LVM2 -Summary(pl.UTF-8): Interfejs Pythona do LVM2 -Group: Libraries/Python -Requires: device-mapper-libs = %{version}-%{release} - -%description -n python-lvm -Python interface to LVM2. - -%description -n python-lvm -l pl.UTF-8 -Interfejs Pythona do LVM2. - %package -n device-mapper Summary: Userspace support for the device-mapper Summary(pl.UTF-8): Wsparcie dla mapowania urządzeń w przestrzeni użytkownika @@ -229,9 +192,11 @@ narzędzia do zarządzania logicznymi wolumenami. Summary: Device-mapper shared libraries Summary(pl.UTF-8): Biblioteki współdzielone device-mappera Group: Libraries -Conflicts: device-mapper < 2.02.119-1 Requires: libblkid >= 2.24 Requires: udev-libs >= 1:176 +Obsoletes: python-lvm < 2.03 +Obsoletes: python3-lvm < 2.03 +Conflicts: device-mapper < 2.02.119-1 %description -n device-mapper-libs Device-mapper shared libraries. @@ -283,34 +248,6 @@ Static devmapper library built with dietlibc. %description -n device-mapper-dietlibc -l pl.UTF-8 Statyczna biblioteka devmapper zbudowana z dietlibc. -%package -n device-mapper-initrd -Summary: Userspace support for the device-mapper - initrd version -Summary(pl.UTF-8): Wsparcie dla mapowania urządzeń w przestrzeni użytkownika - wersja dla initrd -Group: Base -Obsoletes: device-mapper-initrd-devel -Conflicts: geninitrd < 10000.10 - -%description -n device-mapper-initrd -The goal of this driver is to support volume management. The driver -enables the definition of new block devices composed of ranges of -sectors of existing devices. This can be used to define disk -partitions - or logical volumes. This light-weight kernel component -can support user-space tools for logical volume management. - -This package contains dmsetup program linked staticaly for use in -initrd. - -%description -n device-mapper-initrd -l pl.UTF-8 -Celem tego sterownika jest obsługa zarządzania wolumenami. Sterownik -włącza definiowanie nowych urządzeń blokowych złożonych z przedziałów -sektorów na istniejących urządzeniach. Może to być wykorzystane do -definiowania partycji na dysku lub logicznych wolumenów. Ten lekki -składnik jądra może wspierać działające w przestrzeni użytkownika -narzędzia do zarządzania logicznymi wolumenami. - -Ten pakiet zawiera program dmsetup skonsolidowany statycznie na -potrzeby initrd. - %prep %setup -q -n LVM2.%{version} %{?with_selinux:%patch0 -p1} @@ -318,101 +255,48 @@ potrzeby initrd. %patch2 -p1 %patch3 -p1 %patch4 -p1 -%patch6 -p1 -%patch7 -p1 -%patch8 -p1 - -# do not force --export-symbol linker option for e.g. statically linked executables -# -rdynamic compiler option drives linker in the right way. -%{__sed} -i -e 's#-Wl,--export-dynamic#-rdynamic#g' configure.in +%patch5 -p1 %build -%if %{with initrd} -echo Using %{?with_glibc:GLIBC} %{?with_uClibc:uClibc} %{?with_dietlibc:diet} for initrd -%endif -cp -f /usr/share/automake/config.sub autoconf %{__aclocal} %{__autoconf} -%if %{with initrd} -%{?with_glibc:export CC="%{__cc}"} -%{?with_uClibc:export CC="%{_target_cpu}-uclibc-gcc"} -%{?with_dietlibc:cc="%{__cc}"; export CC="diet ${cc#ccache }"} - -%configure \ - ac_cv_lib_dl_dlopen=no \ - %{?with_uClibc:ac_cv_func_siginterrupt=no} \ - %{?debug:--enable-debug} \ - --disable-nls \ - --disable-readline \ - --enable-selinux%{!?with_glibc:=no} \ - --enable-static_link \ - --with-lvm1=internal \ - --with-optimisation="%{rpmcflags} -Os" -# glibc version links with normal static libdevicemapper which has selinux enabled -# and we need to keep these in sync between device-mapper and lvm2 - -%{__sed} -i -e 's#rpl_malloc#malloc#g' lib/misc/configure.h -%{__sed} -i -e 's#rpl_realloc#realloc#g' lib/misc/configure.h - -%{__make} -j1 -C include -%{__make} -j1 -C lib LIB_SHARED= VERSIONED_SHLIB= -%{__make} -j1 -C libdm LIB_SHARED= VERSIONED_SHLIB= -%{__make} -j1 -C libdaemon/client LIB_SHARED= VERSIONED_SHLIB= -%{__make} -j1 -C tools dmsetup.static lvm.static %{?with_dietlibc:DIETLIBC_LIBS="-lcompat"} -mv -f tools/lvm.static initrd-lvm -mv -f tools/dmsetup.static initrd-dmsetup - -# check if tools works -for tool in initrd-lvm initrd-dmsetup; do - LVM_SYSTEM_DIR=$(pwd) ./$tool help && rc=$? || rc=$? - if [ $rc -gt 127 ]; then - echo >&2 "Unexpected failure (exit status: $rc) from $tool. Does this tool work?!" - exit 1 - fi -done - -%{?with_dietlibc:mv -f libdm/ioctl/libdevmapper.a diet-libdevmapper.a} -%{__make} clean - -unset CC -%endif - %configure \ - --enable-applib \ + --enable-cache_check_needs_check \ --enable-cmdlib \ +%if %{with cluster} + --enable-cmirrord \ +%endif + %{?with_lvmdbusd:--enable-dbus-service} \ %{?debug:--enable-debug} \ --enable-dmeventd \ + --enable-dmfilemapd \ --enable-fsadm \ %if %{with lvmlockd} - %{?with_cluster:--enable-lockd-dlm} \ - %{?with_sanlock:--enable-lockd-sanlock} \ + %{?with_cluster:--enable-lvmlockd-dlm} \ + %{?with_sanlock:--enable-lvmlockd-sanlock} \ %endif - %{?with_lvmetad:--enable-lvmetad} \ + --enable-lvmpolld \ --enable-ocf \ - %{?with_python:--enable-python_bindings} \ + --enable-pkgconfig \ --enable-readline \ %{!?with_selinux:--disable-selinux} \ - --enable-pkgconfig \ + --disable-silent-rules \ + --enable-thin_check_needs_check \ --enable-udev_sync \ --enable-udev_rules \ + --disable-udev-systemd-background-jobs \ --with-cache=internal \ --with-cache-check=/usr/sbin/cache_check \ --with-cache-dump=/usr/sbin/cache_dump \ --with-cache-repair=/usr/sbin/cache_repair \ --with-cache-restore=/usr/sbin/cache_restore \ - --with-cluster=internal \ -%if %{with cluster} - --with-clvmd=corosync \ - --enable-cmirrord \ -%endif + --with-default-locking-dir=/var/lock/lvm \ --with-dmeventd-path=%{_sbindir}/dmeventd \ --with-interface=ioctl \ - --with-lvm1=internal \ + --with-libexecdir=%{_libexecdir} \ --with-mirrors=internal \ --with-optimisation="%{rpmcflags}" \ - --with-pool=internal \ - %{?with_replicator:--with-replicators=internal} \ --with-snapshots=internal \ --with-thin=internal \ --with-thin-check=/usr/sbin/thin_check \ @@ -420,29 +304,32 @@ unset CC --with-thin-repair=/usr/sbin/thin_repair \ --with-thin-restore=/usr/sbin/thin_restore \ --with-udev-prefix=/ \ - --with-usrlibdir=%{_libdir} - -%{__make} -j1 -%{__make} -j1 -C libdm LIB_STATIC=libdevmapper.a + --with-usrlibdir=%{_libdir} \ + --with-vdo=internal --with-vdo-format=%{_bindir}/vdoformat \ + --with-writecache=internal +# use bash because of "set -o pipefail" +# V=1 still used because of missing --disable-silent-rules support in libdm (as of 2.03.09) +%{__make} -j1 \ + SHELL=/bin/bash \ + V=1 +%{__make} -j1 -C libdm \ + LIB_STATIC=libdevmapper.a \ + V=1 %install rm -rf $RPM_BUILD_ROOT -install -d $RPM_BUILD_ROOT{/%{_lib},%{_sysconfdir}/lvm,/etc/sysconfig} -%{?with_dietlibc:install -d $RPM_BUILD_ROOT%{dietlibdir}} +install -d $RPM_BUILD_ROOT{/%{_lib},%{_sysconfdir}/lvm,/etc/sysconfig,/var/lock/lvm/subsys} %{__make} install install_system_dirs install_initscripts \ DESTDIR=$RPM_BUILD_ROOT \ + PYTHON_PREFIX=%{_prefix} \ OWNER="" \ GROUP="" %{__make} -C scripts \ - DESTDIR=$RPM_BUILD_ROOT \ + DESTDIR=$RPM_BUILD_ROOT -%if %{with cluster} -cp -p %{SOURCE1} $RPM_BUILD_ROOT/etc/sysconfig/clvmd -%endif - -mv $RPM_BUILD_ROOT%{_libdir}/lib*.so.* $RPM_BUILD_ROOT/%{_lib} +%{__mv} $RPM_BUILD_ROOT%{_libdir}/lib*.so.* $RPM_BUILD_ROOT/%{_lib} for lib in $RPM_BUILD_ROOT/%{_lib}/lib*.so.*; do lib=$(echo $lib | sed -e "s#$RPM_BUILD_ROOT##g") slib=$(basename $lib | sed -e 's#\.so\..*#.so#g') @@ -451,73 +338,157 @@ done touch $RPM_BUILD_ROOT%{_sysconfdir}/lvm/lvm.conf -%if %{with initrd} -install -d $RPM_BUILD_ROOT%{_libdir}/initrd -install -p initrd-lvm $RPM_BUILD_ROOT%{_libdir}/initrd/lvm -install -p initrd-dmsetup $RPM_BUILD_ROOT%{_libdir}/initrd/dmsetup - -%{?with_dietlibc:cp -a diet-libdevmapper.a $RPM_BUILD_ROOT%{dietlibdir}/libdevmapper.a} -%endif - cp -a libdm/libdevmapper.a $RPM_BUILD_ROOT%{_libdir} %clean rm -rf $RPM_BUILD_ROOT +%triggerin -- lvm2 < 2.03.00 +%service lvm2-lvmetad stop +/sbin/chkconfig --del lvm2-lvmetad + +%triggerin -- lvm2-clvmd +%service clvmd stop +/sbin/chkconfig --del clvmd + %post -/sbin/chkconfig --add lvm2-lvmetad -%service lvm2-lvmetad restart /sbin/chkconfig --add lvm2-monitor %service lvm2-monitor restart /sbin/chkconfig --add lvm2-lvmpolld %service lvm2-lvmpolld restart # no service restart available /sbin/chkconfig --add blk-availability +# no service blk-availability restart -%postun +%preun if [ "$1" = "0" ]; then - %service lvm2-lvmetad stop - /sbin/chkconfig --del lvm2-lvmetad %service lvm2-lvmpolld stop /sbin/chkconfig --del lvm2-lvmpolld %service lvm2-monitor stop /sbin/chkconfig --del lvm2-monitor + #no service blk-availability stop /sbin/chkconfig --del blk-availability fi %post -n device-mapper-libs -p /sbin/ldconfig %postun -n device-mapper-libs -p /sbin/ldconfig -%post clvmd -/sbin/chkconfig --add clvmd -# no service restart - it breaks current locks! -export NORESTART=1 -# re-exec instead -/usr/sbin/clvmd -S 2>/dev/null || : - -%postun clvmd -if [ "$1" = "0" ]; then - %service clvmd stop - /sbin/chkconfig --del clvmd -fi - %files %defattr(644,root,root,755) %doc README WHATS_NEW doc/* %attr(755,root,root) %{_sbindir}/blkdeactivate %attr(755,root,root) %{_sbindir}/fsadm -%attr(755,root,root) %{_sbindir}/lv* -%attr(755,root,root) %{_sbindir}/pv* -%attr(755,root,root) %{_sbindir}/vg* +%attr(755,root,root) %{_sbindir}/lvchange +%attr(755,root,root) %{_sbindir}/lvconvert +%attr(755,root,root) %{_sbindir}/lvcreate +%attr(755,root,root) %{_sbindir}/lvdisplay +%attr(755,root,root) %{_sbindir}/lvextend +%attr(755,root,root) %{_sbindir}/lvm +%attr(755,root,root) %{_sbindir}/lvm_import_vdo +%attr(755,root,root) %{_sbindir}/lvmconfig +%attr(755,root,root) %{_sbindir}/lvmdevices +%attr(755,root,root) %{_sbindir}/lvmdiskscan +%attr(755,root,root) %{_sbindir}/lvmdump +%attr(755,root,root) %{_sbindir}/lvmsadc +%attr(755,root,root) %{_sbindir}/lvmsar +%attr(755,root,root) %{_sbindir}/lvreduce +%attr(755,root,root) %{_sbindir}/lvremove +%attr(755,root,root) %{_sbindir}/lvrename +%attr(755,root,root) %{_sbindir}/lvresize +%attr(755,root,root) %{_sbindir}/lvs +%attr(755,root,root) %{_sbindir}/lvscan +%attr(755,root,root) %{_sbindir}/pvchange +%attr(755,root,root) %{_sbindir}/pvck +%attr(755,root,root) %{_sbindir}/pvcreate +%attr(755,root,root) %{_sbindir}/pvdisplay +%attr(755,root,root) %{_sbindir}/pvmove +%attr(755,root,root) %{_sbindir}/pvremove +%attr(755,root,root) %{_sbindir}/pvresize +%attr(755,root,root) %{_sbindir}/pvs +%attr(755,root,root) %{_sbindir}/pvscan +%attr(755,root,root) %{_sbindir}/vgcfgbackup +%attr(755,root,root) %{_sbindir}/vgcfgrestore +%attr(755,root,root) %{_sbindir}/vgchange +%attr(755,root,root) %{_sbindir}/vgck +%attr(755,root,root) %{_sbindir}/vgconvert +%attr(755,root,root) %{_sbindir}/vgcreate +%attr(755,root,root) %{_sbindir}/vgdisplay +%attr(755,root,root) %{_sbindir}/vgexport +%attr(755,root,root) %{_sbindir}/vgextend +%attr(755,root,root) %{_sbindir}/vgimport +%attr(755,root,root) %{_sbindir}/vgimportclone +%attr(755,root,root) %{_sbindir}/vgimportdevices +%attr(755,root,root) %{_sbindir}/vgmerge +%attr(755,root,root) %{_sbindir}/vgmknodes +%attr(755,root,root) %{_sbindir}/vgreduce +%attr(755,root,root) %{_sbindir}/vgremove +%attr(755,root,root) %{_sbindir}/vgrename +%attr(755,root,root) %{_sbindir}/vgs +%attr(755,root,root) %{_sbindir}/vgscan +%attr(755,root,root) %{_sbindir}/vgsplit +%attr(755,root,root) %{_libexecdir}/lvresize_fs_helper %{_mandir}/man5/lvm.conf.5* +%{_mandir}/man7/lvmautoactivation.7* %{_mandir}/man7/lvmcache.7* +%{_mandir}/man7/lvmraid.7* +%{_mandir}/man7/lvmreport.7* %{_mandir}/man7/lvmsystemid.7* %{_mandir}/man7/lvmthin.7* +%{_mandir}/man7/lvmvdo.7* %{_mandir}/man8/blkdeactivate.8* %{_mandir}/man8/fsadm.8* -%{_mandir}/man8/lv*.8* -%{_mandir}/man8/pv*.8* -%{_mandir}/man8/vg*.8* +%{_mandir}/man8/lvchange.8* +%{_mandir}/man8/lvconvert.8* +%{_mandir}/man8/lvcreate.8* +%{_mandir}/man8/lvdisplay.8* +%{_mandir}/man8/lvextend.8* +%{_mandir}/man8/lvm-config.8* +%{_mandir}/man8/lvm-dumpconfig.8* +%{_mandir}/man8/lvm-fullreport.8* +%{_mandir}/man8/lvm-lvpoll.8* +%{_mandir}/man8/lvm.8* +%{_mandir}/man8/lvm_import_vdo.8* +%{_mandir}/man8/lvmconfig.8* +%{_mandir}/man8/lvmdevices.8* +%{_mandir}/man8/lvmdiskscan.8* +%{_mandir}/man8/lvmdump.8* +%{_mandir}/man8/lvmsadc.8* +%{_mandir}/man8/lvmsar.8* +%{_mandir}/man8/lvreduce.8* +%{_mandir}/man8/lvremove.8* +%{_mandir}/man8/lvrename.8* +%{_mandir}/man8/lvresize.8* +%{_mandir}/man8/lvs.8* +%{_mandir}/man8/lvscan.8* +%{_mandir}/man8/pvchange.8* +%{_mandir}/man8/pvck.8* +%{_mandir}/man8/pvcreate.8* +%{_mandir}/man8/pvdisplay.8* +%{_mandir}/man8/pvmove.8* +%{_mandir}/man8/pvremove.8* +%{_mandir}/man8/pvresize.8* +%{_mandir}/man8/pvs.8* +%{_mandir}/man8/pvscan.8* +%{_mandir}/man8/vgcfgbackup.8* +%{_mandir}/man8/vgcfgrestore.8* +%{_mandir}/man8/vgchange.8* +%{_mandir}/man8/vgck.8* +%{_mandir}/man8/vgconvert.8* +%{_mandir}/man8/vgcreate.8* +%{_mandir}/man8/vgdisplay.8* +%{_mandir}/man8/vgexport.8* +%{_mandir}/man8/vgextend.8* +%{_mandir}/man8/vgimport.8* +%{_mandir}/man8/vgimportclone.8* +%{_mandir}/man8/vgimportdevices.8* +%{_mandir}/man8/vgmerge.8* +%{_mandir}/man8/vgmknodes.8* +%{_mandir}/man8/vgreduce.8* +%{_mandir}/man8/vgremove.8* +%{_mandir}/man8/vgrename.8* +%{_mandir}/man8/vgs.8* +%{_mandir}/man8/vgscan.8* +%{_mandir}/man8/vgsplit.8* %attr(750,root,root) %dir %{_sysconfdir}/lvm %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/lvm/lvm.conf %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/lvm/lvmlocal.conf @@ -528,30 +499,27 @@ fi %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/lvm/profile/metadata_profile_template.profile %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/lvm/profile/thin-generic.profile %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/lvm/profile/thin-performance.profile -%if %{with lvmetad} -/lib/udev/rules.d/69-dm-lvm-metad.rules -%endif +%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/lvm/profile/vdo-small.profile %dir %{_sysconfdir}/lvm/cache %ghost %{_sysconfdir}/lvm/cache/.cache %attr(754,root,root) /etc/rc.d/init.d/blk-availability -%if %{with lvmetad} -%attr(754,root,root) /etc/rc.d/init.d/lvm2-lvmetad +%attr(754,root,root) /etc/rc.d/init.d/lvm2-monitor +%attr(700,root,root) %dir /var/run/lvm +%attr(700,root,root) %dir /var/lock/lvm +%attr(700,root,root) %dir /var/lock/lvm/subsys +%if %{with lvmlockd} +%attr(755,root,root) %{_sbindir}/lvmlockctl +%attr(755,root,root) %{_sbindir}/lvmlockd +%{_mandir}/man8/lvmlockctl.8* +%{_mandir}/man8/lvmlockd.8* %endif %if %{with lvmpolld} +%attr(755,root,root) %{_sbindir}/lvmpolld %attr(754,root,root) /etc/rc.d/init.d/lvm2-lvmpolld +%{_mandir}/man8/lvmpolld.8* %endif -%attr(754,root,root) /etc/rc.d/init.d/lvm2-monitor -%attr(700,root,root) %dir /run/lvm -%attr(700,root,root) %dir /var/lock/lvm %if %{with cluster} -%files clvmd -%defattr(644,root,root,755) -%attr(755,root,root) %{_usrsbindir}/clvmd -%attr(754,root,root) /etc/rc.d/init.d/clvmd -%config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/clvmd -%{_mandir}/man8/clvmd.8* - %files cmirrord %defattr(644,root,root,755) %attr(755,root,root) %{_usrsbindir}/cmirrord @@ -559,31 +527,44 @@ fi %{_mandir}/man8/cmirrord.8* %endif +%if %{with lvmdbusd} +%files dbusd +%defattr(644,root,root,755) +%attr(755,root,root) %{_sbindir}/lvmdbusd +%{py3_sitescriptdir}/lvmdbusd +%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/lvm/profile/lvmdbusd.profile +%{_mandir}/man8/lvmdbusd.8* +%endif + %files resource-agents %defattr(644,root,root,755) %dir %{_prefix}/lib/ocf/resource.d/lvm2 %attr(755,root,root) %{_prefix}/lib/ocf/resource.d/lvm2/VolumeGroup -%if %{with python} -%files -n python-lvm -%defattr(644,root,root,755) -%attr(755,root,root) %{py_sitedir}/lvm.so -%{py_sitedir}/lvm-%{version}_*-py*.egg-info -%endif - %files -n device-mapper %defattr(644,root,root,755) %doc *_DM /lib/udev/rules.d/10-dm.rules /lib/udev/rules.d/11-dm-lvm.rules /lib/udev/rules.d/13-dm-disk.rules +/lib/udev/rules.d/69-dm-lvm.rules /lib/udev/rules.d/95-dm-notify.rules %attr(755,root,root) %{_sbindir}/dmeventd +%attr(755,root,root) %{_sbindir}/dmfilemapd %attr(755,root,root) %{_sbindir}/dmsetup %attr(755,root,root) %{_sbindir}/dmstats +%attr(755,root,root) %{_libdir}/libdevmapper-event-lvm2mirror.so +%attr(755,root,root) %{_libdir}/libdevmapper-event-lvm2raid.so +%attr(755,root,root) %{_libdir}/libdevmapper-event-lvm2snapshot.so +%attr(755,root,root) %{_libdir}/libdevmapper-event-lvm2thin.so +%attr(755,root,root) %{_libdir}/libdevmapper-event-lvm2vdo.so %dir %{_libdir}/device-mapper -%attr(755,root,root) %{_libdir}/device-mapper/*.so -%attr(755,root,root) %{_libdir}/libdevmapper-event-*.so +%attr(755,root,root) %{_libdir}/device-mapper/libdevmapper-event-lvm2mirror.so +%attr(755,root,root) %{_libdir}/device-mapper/libdevmapper-event-lvm2raid.so +%attr(755,root,root) %{_libdir}/device-mapper/libdevmapper-event-lvm2snapshot.so +%attr(755,root,root) %{_libdir}/device-mapper/libdevmapper-event-lvm2thin.so +%attr(755,root,root) %{_libdir}/device-mapper/libdevmapper-event-lvm2vdo.so +%{_mandir}/man8/dmfilemapd.8* %{_mandir}/man8/dmsetup.8* %{_mandir}/man8/dmstats.8* %{_mandir}/man8/dmeventd.8* @@ -593,39 +574,20 @@ fi %attr(755,root,root) /%{_lib}/libdevmapper.so.*.* %attr(755,root,root) /%{_lib}/libdevmapper-event.so.*.* %attr(755,root,root) /%{_lib}/libdevmapper-event-lvm2.so.*.* -%attr(755,root,root) /%{_lib}/liblvm2app.so.*.* %attr(755,root,root) /%{_lib}/liblvm2cmd.so.*.* %files -n device-mapper-devel %defattr(644,root,root,755) %attr(755,root,root) %{_libdir}/libdevmapper.so %attr(755,root,root) %{_libdir}/libdevmapper-event.so -%attr(755,root,root) %{_libdir}/liblvm2app.so +%attr(755,root,root) %{_libdir}/libdevmapper-event-lvm2.so %attr(755,root,root) %{_libdir}/liblvm2cmd.so %{_includedir}/libdevmapper.h %{_includedir}/libdevmapper-event.h -%{_includedir}/lvm2app.h %{_includedir}/lvm2cmd.h %{_pkgconfigdir}/devmapper.pc %{_pkgconfigdir}/devmapper-event.pc -%{_pkgconfigdir}/lvm2app.pc %files -n device-mapper-static %defattr(644,root,root,755) %{_libdir}/libdevmapper.a - -%if %{with initrd} -%if %{with dietlibc} -%files -n device-mapper-dietlibc -%defattr(644,root,root,755) -%{dietlibdir}/libdevmapper.a -%endif - -%files -n device-mapper-initrd -%defattr(644,root,root,755) -%attr(755,root,root) %{_libdir}/initrd/dmsetup - -%files initrd -%defattr(644,root,root,755) -%attr(755,root,root) %{_libdir}/initrd/lvm -%endif