X-Git-Url: https://git.pld-linux.org/?a=blobdiff_plain;f=nfs-utils.spec;h=6227cadb61caaf56dc617747c9ca500410b98b48;hb=f9b212bd347b58a3e7c3d11b6c26af4d79cf05c6;hp=43edbc1f13601647267195156a82b291bb34c5ed;hpb=239fc8866c96c5e9333d41df0996f6bf235b6998;p=packages%2Fnfs-utils.git diff --git a/nfs-utils.spec b/nfs-utils.spec index 43edbc1..6227cad 100644 --- a/nfs-utils.spec +++ b/nfs-utils.spec @@ -1,9 +1,10 @@ # TODO -# - should unmount /proc/fs/nfsd at package uninstall (or in service nfs stop) +# - should unmount /proc/fs/nfsd and /var/lib/nfs/rpc_pipefs at package +# uninstall (or in service nfs stop) # # Conditional build: -%bcond_without nfs4 # without NFSv4 support -%bcond_without mount # don't build mount.nfs program +%bcond_with krb5 # build with MIT Kerberos (+libgssglue) instead of Heimdal +%bcond_without tirpc # use librpcsecgss instead of libtirpc # Summary: Kernel NFS server Summary(pl.UTF-8): Działający na poziomie jądra serwer NFS @@ -11,13 +12,14 @@ Summary(pt_BR.UTF-8): Os utilitários para o cliente e servidor NFS do Linux Summary(ru.UTF-8): Утилиты для NFS и демоны поддержки для NFS-сервера ядра Summary(uk.UTF-8): Утиліти для NFS та демони підтримки для NFS-сервера ядра Name: nfs-utils -Version: 1.0.12 -Release: 6 -License: GPL +Version: 1.2.3 +Release: 2 +License: GPL v2 Group: Networking/Daemons -Source0: http://dl.sourceforge.net/nfs/%{name}-%{version}.tar.gz -# Source0-md5: acf3656cec3872deb597aa7ac13f3c3a -Source1: ftp://ftp.linuxnfs.sourceforge.org/pub/nfs/nfs.doc.tar.gz +Source0: http://www.kernel.org/pub/linux/utils/nfs/%{name}-%{version}.tar.bz2 +# Source0-md5: 1131dc5f27c4f3905a6e7ee0d594fd4d +#Source1: ftp://ftp.linuxnfs.sourceforge.org/pub/nfs/nfs.doc.tar.gz +Source1: nfs.doc.tar.gz # Source1-md5: ae7db9c61c5ad04f83bb99e5caed73da Source2: nfs.init Source3: nfslock.init @@ -28,48 +30,51 @@ Source7: rpcsvcgssd.init Source8: nfs.sysconfig Source9: nfslock.sysconfig Source10: nfsfs.sysconfig -Patch0: %{name}-eepro-support.patch -Patch1: %{name}-install.patch -Patch2: %{name}-heimdal.patch -Patch3: %{name}-heimdal-internals.patch -# http://www.citi.umich.edu/projects/nfsv4/linux/nfs-utils-patches/ -#Patch4: %{name}-1.0.11-CITI_NFS4_ALL-1.dif -Patch4: %{name}-CITI_NFS4.patch -Patch5: %{name}-mountd-leak.patch -Patch6: %{name}-statdpath.patch -Patch7: %{name}-mount-fake.patch -Patch8: %{name}-mountd.patch -Patch9: %{name}-privports.patch -Patch10: %{name}-mount-man-nfs.patch -Patch11: %{name}-mount-fsc.patch -Patch12: %{name}-idmapd.conf.patch +Patch0: %{name}-install.patch +Patch1: %{name}-statdpath.patch +Patch2: %{name}-subsys.patch +Patch3: %{name}-union-mount.patch +Patch4: %{name}-kerberos-ac.patch +Patch5: %{name}-no_libgssapi.patch +Patch6: %{name}-pkgconfig_ac.patch +Patch7: %{name}-heimdal_functions.patch URL: http://nfs.sourceforge.net/ BuildRequires: autoconf >= 2.59 BuildRequires: automake BuildRequires: cpp -BuildRequires: e2fsprogs-devel >= 1.39-5 -%if %{with nfs4} -BuildRequires: heimdal-devel >= 0.7 +BuildRequires: libblkid-devel +BuildRequires: libcap-devel BuildRequires: libevent-devel >= 1.2 -BuildRequires: libnfsidmap-devel -BuildRequires: librpcsecgss-devel >= 0.11-3 -%endif +BuildRequires: libnfsidmap-devel >= 0.21-3 BuildRequires: libtool BuildRequires: libwrap-devel BuildRequires: pkgconfig -BuildRequires: sed >= 4.0 +%if %{with tirpc} +BuildRequires: libtirpc-devel >= 1:0.1.10-4 +%else +BuildRequires: librpcsecgss-devel >= 0.16 +%endif +%if %{with krb5} +BuildRequires: krb5-devel >= 1.6 +BuildRequires: libgssglue-devel >= 0.1 +%else +BuildRequires: heimdal-devel >= 1.0 +%endif +# lucid context fields mismatch with current version of spkm3.h +BuildConflicts: gss_mech_spkm3-devel Requires(post): fileutils Requires(post): sed >= 4.0 Requires(post,preun): /sbin/chkconfig Requires: %{name}-common = %{version}-%{release} -Requires: portmap >= 4.0 -Requires: rc-scripts >= 0.4.0 +Requires: rc-scripts >= 0.4.1.5 +Requires: rpcbind >= 0.1.7 Requires: setup >= 2.4.6-7 Provides: nfsdaemon Obsoletes: knfsd Obsoletes: nfs-server Obsoletes: nfsdaemon Conflicts: kernel < 2.2.5 +Conflicts: krb5-common < 1.7 ExcludeArch: armv4l BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) @@ -111,6 +116,7 @@ Provides: nfsclient Obsoletes: knfsd-clients Obsoletes: nfs-server-clients Obsoletes: nfsclient +Conflicts: krb5-common < 1.7 %description clients The nfs-server-clients package contains the showmount program. @@ -131,12 +137,11 @@ Summary: Programs for NFS file locking Summary(pl.UTF-8): Programy do obsługi blokowania plików poprzez NFS (lock) Group: Networking Requires(post,preun): /sbin/chkconfig -#Requires: kernel >= 2.2.5 -Requires: portmap >= 4.0 Requires: rc-scripts +Requires: rpcbind >= 0.1.7 Provides: group(rpcstatd) -Provides: user(rpcstatd) Provides: nfslockd +Provides: user(rpcstatd) Obsoletes: knfsd-lock Obsoletes: nfslockd @@ -152,6 +157,8 @@ plików (file locking) poprzez NFS. Summary: Common programs for NFS Summary(pl.UTF-8): Wspólne programy do obsługi NFS Group: Networking +Requires: libnfsidmap >= 0.21-3 +Conflicts: mount < 2.13-0.pre7.1 %description common Common programs for NFS. @@ -165,59 +172,53 @@ Wspólne programy do obsługi NFS. %patch1 -p1 %patch2 -p1 %patch3 -p1 -# temporary hack -rm -f utils/mountd/fsloc.[ch] %patch4 -p1 +%if %{without krb5} %patch5 -p1 %patch6 -p1 -%patch7 -p1 -%patch8 -p1 -%patch9 -p1 -%patch10 -p1 -%patch11 -p1 -%patch12 -p1 +%patch7 -p0 +%endif %build -%if "%{_lib}" == "lib64" -sed -i -e 's#/lib/#/%{_lib}/#g' aclocal/kerberos5.m4 -%endif -sed -i -e 's#libroken.a#libroken.so#g' aclocal/kerberos5.m4 +%{__libtoolize} %{__aclocal} -I aclocal %{__autoconf} +%{__autoheader} %{__automake} %configure \ -%if %{with nfs4} - --enable-gss \ - --with-krb5=%{_prefix} \ - --enable-nfsv4 \ -%else - --disable-gss \ - --disable-nfsv4 \ -%endif - %{?with_mount:--enable-mount} \ - --disable-rquotad \ --enable-nfsv3 \ - --enable-secure-statd \ + --enable-nfsv4 \ + --enable-gss \ + --enable-mount \ + --%{?with_tirpc:en}%{!?with_tirpc:dis}able-tirpc \ + --enable-ipv6 \ --with-statedir=/var/lib/nfs \ - --with-tcp-wrappers + --with-statduser=rpcstatd \ + --with-start-statd=%{_sbindir}/start-statd \ + --with-tcp-wrappers \ + --with-krb5-config=%{_bindir}/krb5-config %{__make} all %install rm -rf $RPM_BUILD_ROOT -install -d $RPM_BUILD_ROOT{/sbin,%{_sbindir},%{_mandir}/man{5,8}} \ - $RPM_BUILD_ROOT%{_sysconfdir}/{rc.d/init.d,sysconfig} \ - $RPM_BUILD_ROOT%{_var}/lib/nfs/{rpc_pipefs,v4recovery,statd} +install -d $RPM_BUILD_ROOT%{_sysconfdir}/{rc.d/init.d,sysconfig} \ + $RPM_BUILD_ROOT%{_var}/lib/nfs/{rpc_pipefs,v4recovery} %{__make} install \ DESTDIR=$RPM_BUILD_ROOT -%if %{with mount} -mv $RPM_BUILD_ROOT%{_sbindir}/{mount,umount}.* $RPM_BUILD_ROOT/sbin -%endif +cat >$RPM_BUILD_ROOT%{_sbindir}/start-statd < $RPM_BUILD_ROOT%{_sbindir}/gss_destroy_creds mv $RPM_BUILD_ROOT%{_sbindir}/rpcdebug $RPM_BUILD_ROOT/sbin -install utils/idmapd/idmapd.conf $RPM_BUILD_ROOT%{_sysconfdir}/ install %{SOURCE2} $RPM_BUILD_ROOT/etc/rc.d/init.d/nfs install %{SOURCE3} $RPM_BUILD_ROOT/etc/rc.d/init.d/nfslock @@ -232,24 +233,20 @@ install %{SOURCE10} $RPM_BUILD_ROOT/etc/sysconfig/nfsfs > $RPM_BUILD_ROOT%{_var}/lib/nfs/rmtab > $RPM_BUILD_ROOT%{_sysconfdir}/exports -rm -f $RPM_BUILD_ROOT%{_mandir}/man8/rpc.{mountd,nfsd,statd,lockd,svcgssd,gssd,idmapd}.8 -rm -f $RPM_BUILD_ROOT%{_mandir}/man5/rpc.idmapd.conf.5 -echo ".so lockd.8" > $RPM_BUILD_ROOT%{_mandir}/man8/rpc.lockd.8 +rm $RPM_BUILD_ROOT%{_mandir}/man8/rpc.{mountd,nfsd,statd,sm-notify}.8 +rm $RPM_BUILD_ROOT%{_mandir}/man8/rpc.{svcgssd,gssd,idmapd}.8 echo ".so mountd.8" > $RPM_BUILD_ROOT%{_mandir}/man8/rpc.mountd.8 echo ".so nfsd.8" > $RPM_BUILD_ROOT%{_mandir}/man8/rpc.nfsd.8 echo ".so statd.8" > $RPM_BUILD_ROOT%{_mandir}/man8/rpc.statd.8 -%if %{with nfs4} +echo ".so sm-notify.8" > $RPM_BUILD_ROOT%{_mandir}/man8/rpc.sm-notify.8 echo ".so gssd.8" > $RPM_BUILD_ROOT%{_mandir}/man8/rpc.gssd.8 echo ".so idmapd.8" > $RPM_BUILD_ROOT%{_mandir}/man8/rpc.idmapd.8 echo ".so svcgssd.8" > $RPM_BUILD_ROOT%{_mandir}/man8/rpc.svcgssd.8 -echo ".so idmapd.conf.5" > $RPM_BUILD_ROOT%{_mandir}/man5/rpc.idmapd.conf.5 -%endif touch $RPM_BUILD_ROOT/var/lib/nfs/xtab ln -sf /bin/true $RPM_BUILD_ROOT/sbin/fsck.nfs -rm -rf html cp -a nfs html %clean @@ -258,37 +255,29 @@ rm -rf $RPM_BUILD_ROOT %post /sbin/chkconfig --add nfs %service nfs restart "NFS daemon" -%if %{with nfs4} /sbin/chkconfig --add svcgssd -%service svcgssd restart "RPC svcgssd daemon" -%endif +%service svcgssd restart "RPC svcgssd" %preun if [ "$1" = "0" ]; then %service nfs stop /sbin/chkconfig --del nfs -%if %{with nfs4} %service svcgssd stop /sbin/chkconfig --del svcgssd -%endif fi %post clients /sbin/chkconfig --add nfsfs %service nfsfs restart -%if %{with nfs4} /sbin/chkconfig --add gssd -%service gssd restart "RPC gssd daemon" -%endif +%service gssd restart "RPC gssd" %preun clients if [ "$1" = "0" ]; then %service nfsfs stop /sbin/chkconfig --del nfsfs -%if %{with nfs4} %service gssd stop /sbin/chkconfig --del gssd -%endif fi %pre lock @@ -297,7 +286,7 @@ fi %post lock /sbin/chkconfig --add nfslock -%service nfslock restart "nfslock daemon" +%service nfslock restart "RPC statd" %preun lock if [ "$1" = "0" ]; then @@ -311,30 +300,33 @@ if [ "$1" = "0" ]; then %groupremove rpcstatd fi -%if %{with nfs4} %post common /sbin/chkconfig --add idmapd -%service idmapd restart "RPC idmapd daemon" +%service idmapd restart "RPC idmapd" %preun common if [ "$1" = "0" ]; then %service idmapd stop /sbin/chkconfig --del idmapd fi -%endif -%triggerpostun -- %{name} <= 1.0.12-5 +%triggerpostun -- %{name} < 1.1.0-0.rc1.1 /sbin/chkconfig nfs reset +/sbin/chkconfig svcgssd reset -%triggerpostun lock -- %{name}-lock <= 1.0.12-5 +%triggerpostun lock -- %{name}-lock < 1.1.0-0.rc1.1 /sbin/chkconfig nfslock reset -%triggerpostun clients -- %{name}-clients < 1.0.10-1.2 +%triggerpostun clients -- %{name}-clients < 1.1.0-0.rc1.1 if [ -f /etc/sysconfig/nfsclient.rpmsave ]; then mv -f /etc/sysconfig/nfsfs{,.rpmnew} mv -f /etc/sysconfig/nfsclient.rpmsave /etc/sysconfig/nfsfs fi /sbin/chkconfig nfsfs reset +/sbin/chkconfig gssd reset + +%triggerpostun common -- %{name}-common < 1.1.0-0.rc1.1 +/sbin/chkconfig idmapd reset %files %defattr(644,root,root,755) @@ -344,9 +336,11 @@ fi %attr(755,root,root) %{_sbindir}/exportfs %attr(755,root,root) %{_sbindir}/rpc.mountd %attr(755,root,root) %{_sbindir}/rpc.nfsd +%attr(755,root,root) %{_sbindir}/rpc.svcgssd %attr(755,root,root) %{_sbindir}/nfsstat %attr(754,root,root) /etc/rc.d/init.d/nfs +%attr(754,root,root) /etc/rc.d/init.d/svcgssd %attr(664,root,fileshare) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/exports %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/nfsd @@ -362,56 +356,56 @@ fi %{_mandir}/man8/nfsstat.8* %{_mandir}/man8/rpc.mountd.8* %{_mandir}/man8/rpc.nfsd.8* +%{_mandir}/man8/rpc.svcgssd.8* %{_mandir}/man8/rpcdebug.8* -%if %{with nfs4} -%attr(754,root,root) /etc/rc.d/init.d/svcgssd -%attr(755,root,root) %{_sbindir}/rpc.svcgssd -%{_mandir}/man8/*svcgss* -%endif +%{_mandir}/man8/svcgssd.8* %files lock %defattr(644,root,root,755) %attr(700,rpcstatd,rpcstatd) %dir %{_var}/lib/nfs/statd -%attr(755,root,root) %{_sbindir}/rpc.lockd +%attr(700,rpcstatd,rpcstatd) %dir %{_var}/lib/nfs/statd/sm +%attr(700,rpcstatd,rpcstatd) %dir %{_var}/lib/nfs/statd/sm.bak +%attr(600,rpcstatd,rpcstatd) %config(noreplace) %verify(not md5 mtime size) %{_var}/lib/nfs/statd/state %attr(755,root,root) %{_sbindir}/rpc.statd +%attr(755,root,root) %{_sbindir}/sm-notify +%attr(755,root,root) %{_sbindir}/start-statd %attr(754,root,root) /etc/rc.d/init.d/nfslock %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/nfslock -%{_mandir}/man8/rpc.lockd.8* -%{_mandir}/man8/lockd.8* +%{_mandir}/man8/rpc.sm-notify.8* %{_mandir}/man8/rpc.statd.8* +%{_mandir}/man8/sm-notify.8* %{_mandir}/man8/statd.8* -%config(noreplace) %verify(not md5 mtime size) %{_var}/lib/nfs/state %files clients %defattr(644,root,root,755) %attr(754,root,root) /etc/rc.d/init.d/nfsfs %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/nfsfs -%attr(755,root,root) %{_sbindir}/showmount -%{_mandir}/man8/showmount.8* -%if %{with mount} %attr(4755,root,root) /sbin/mount.nfs -%attr(4755,root,root) /sbin/mount.nfs4 %attr(4755,root,root) /sbin/umount.nfs +%attr(4755,root,root) /sbin/mount.nfs4 %attr(4755,root,root) /sbin/umount.nfs4 -%{_mandir}/man8/*mount.nfs.8* -%endif -%if %{with nfs4} -%attr(754,root,root) /etc/rc.d/init.d/gssd +%attr(755,root,root) %{_sbindir}/mountstats +%attr(755,root,root) %{_sbindir}/nfsiostat +%attr(755,root,root) %{_sbindir}/showmount %attr(755,root,root) %{_sbindir}/rpc.gssd -%{_mandir}/man8/rpc.gssd* -%{_mandir}/man8/gssd* -%endif +%attr(754,root,root) /etc/rc.d/init.d/gssd +%{_mandir}/man8/gssd.8* +%{_mandir}/man8/mount.nfs.8* +%{_mandir}/man8/mountstats.8* +%{_mandir}/man8/nfsiostat.8* +%{_mandir}/man8/rpc.gssd.8* +%{_mandir}/man8/showmount.8* +%{_mandir}/man8/umount.nfs.8* %files common %defattr(644,root,root,755) -%attr(755,root,root) %dir %{_var}/lib/nfs -%attr(755,root,root) %dir %{_var}/lib/nfs/rpc_pipefs -%attr(755,root,root) %dir %{_var}/lib/nfs/v4recovery -%{_mandir}/man5/nfs* -%if %{with nfs4} -%attr(754,root,root) /etc/rc.d/init.d/idmapd -%attr(755,root,root) %{_sbindir}/gss_* +%attr(755,root,root) %{_sbindir}/gss_clnt_send_err +%attr(755,root,root) %{_sbindir}/gss_destroy_creds %attr(755,root,root) %{_sbindir}/rpc.idmapd -%attr(660,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/idmapd.conf -%{_mandir}/man[58]/*idmap* -%endif +%attr(754,root,root) /etc/rc.d/init.d/idmapd +%dir %{_var}/lib/nfs +%dir %{_var}/lib/nfs/rpc_pipefs +%dir %{_var}/lib/nfs/v4recovery +%{_mandir}/man5/nfs.5* +%{_mandir}/man8/idmapd.8* +%{_mandir}/man8/rpc.idmapd.8*