]> git.pld-linux.org Git - packages/nfs-utils.git/blame - nfs-utils.spec
- rel 3
[packages/nfs-utils.git] / nfs-utils.spec
CommitLineData
042f4ecc
JR
1# TODO
2# - should unmount /proc/fs/nfsd and /var/lib/nfs/rpc_pipefs at package
3# uninstall (or in service nfs stop)
4#
5# Conditional build:
6%bcond_with krb5 # build with MIT Kerberos (+libgssglue) instead of Heimdal
7%bcond_without tirpc # use librpcsecgss instead of libtirpc
8#
9Summary: Kernel NFS server
10Summary(pl.UTF-8): Działający na poziomie jądra serwer NFS
11Summary(pt_BR.UTF-8): Os utilitários para o cliente e servidor NFS do Linux
12Summary(ru.UTF-8): Утилиты для NFS и демоны поддержки для NFS-сервера ядра
13Summary(uk.UTF-8): Утиліти для NFS та демони підтримки для NFS-сервера ядра
14Name: nfs-utils
d1c5b6d6 15Version: 1.2.5
0a929b8a 16Release: 3
042f4ecc
JR
17License: GPL v2
18Group: Networking/Daemons
d1c5b6d6
JR
19#Source0: http://www.kernel.org/pub/linux/utils/nfs/%{name}-%{version}.tar.bz2
20Source0: http://downloads.sourceforge.net/project/nfs/nfs-utils/%{version}/%{name}-%{version}.tar.bz2
21# Source0-md5: 8395ac770720b83c5c469f88306d7765
042f4ecc
JR
22#Source1: ftp://ftp.linuxnfs.sourceforge.org/pub/nfs/nfs.doc.tar.gz
23Source1: nfs.doc.tar.gz
24# Source1-md5: ae7db9c61c5ad04f83bb99e5caed73da
25Source2: nfs.init
26Source3: nfslock.init
27Source4: nfsfs.init
28Source5: rpcidmapd.init
29Source6: rpcgssd.init
30Source7: rpcsvcgssd.init
31Source8: nfs.sysconfig
32Source9: nfslock.sysconfig
33Source10: nfsfs.sysconfig
dbb63347 34Source11: blkmapd.init
042f4ecc
JR
35Patch0: %{name}-install.patch
36Patch1: %{name}-statdpath.patch
37Patch2: %{name}-subsys.patch
38Patch3: %{name}-union-mount.patch
c1a7163e 39Patch4: %{name}-heimdal.patch
d277a362 40Patch5: %{name}-heimdal-kcm.patch
042f4ecc
JR
41URL: http://nfs.sourceforge.net/
42BuildRequires: autoconf >= 2.59
43BuildRequires: automake
44BuildRequires: cpp
d277a362 45BuildRequires: keyutils-devel
05395780 46BuildRequires: libblkid-devel >= 1.40
eac4cf5e 47BuildRequires: libmount-devel
042f4ecc 48BuildRequires: libcap-devel
d1c5b6d6 49BuildRequires: device-mapper-devel
042f4ecc 50BuildRequires: libevent-devel >= 1.2
01ab2117 51BuildRequires: libnfsidmap-devel >= 0.24
042f4ecc
JR
52BuildRequires: libtool
53BuildRequires: libwrap-devel
54BuildRequires: pkgconfig
cf24a9e6 55BuildRequires: rpm-pythonprov
042f4ecc
JR
56%if %{with tirpc}
57BuildRequires: libtirpc-devel >= 1:0.1.10-4
58%else
59BuildRequires: librpcsecgss-devel >= 0.16
60%endif
61%if %{with krb5}
62BuildRequires: krb5-devel >= 1.6
63BuildRequires: libgssglue-devel >= 0.1
64%else
65BuildRequires: heimdal-devel >= 1.0
66%endif
67# lucid context fields mismatch with current version of spkm3.h
68BuildConflicts: gss_mech_spkm3-devel
69Requires(post): fileutils
70Requires(post): sed >= 4.0
71Requires(post,preun): /sbin/chkconfig
72Requires: %{name}-common = %{version}-%{release}
73Requires: rc-scripts >= 0.4.1.5
74Requires: rpcbind >= 0.1.7
75Requires: setup >= 2.4.6-7
76Provides: nfsdaemon
77Obsoletes: knfsd
78Obsoletes: nfs-server
79Obsoletes: nfsdaemon
80Conflicts: kernel < 2.2.5
81Conflicts: krb5-common < 1.7
82ExcludeArch: armv4l
83BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
84
85%description
86This is the *new* kernel NFS server and related tools. It provides a
87much higher level of performance than the traditional Linux user-land
88NFS server.
89
90%description -l pl.UTF-8
91To jest *nowy* działający na poziomie jądra serwer NFS oraz związane z
92nim narzędzia. Serwer ten dostarcza znacznie większą wydajność niż
93tradycyjny, działający na poziomie użytkownika serwer NFS.
94
95%description -l pt_BR.UTF-8
96O pacote nfs-utils provê os utilitários para o cliente e servidor NFS
97do Linux.
98
99%description -l ru.UTF-8
100Пакет nfs-utils предоставляет демона для NFS-сервера, включенного в
101ядро, и сопутствующие утилиты, которые обеспечивают намного большую
102производительность, чем традиционные Linux NFS-сервера, используемые
103большинством пользователей.
104
105%description -l uk.UTF-8
106Пакет nfs-utils надає демона для NFS-сервера, вбудованого в ядро, та
107супутні утиліти, які забезпечують набагато більшу продуктивність, ніж
108традиційні Linux NFS-сервери, які використовує більшість користувачів.
109
110%package clients
111Summary: Clients for connecting to a remote NFS server
112Summary(pl.UTF-8): Klienci do łączenia się ze zdalnym serwerem NFS
113Group: Networking
114Requires(post,preun): /sbin/chkconfig
115Requires: %{name}-common = %{version}-%{release}
116Requires: psmisc
117Requires: rc-scripts
118Provides: nfs-server-clients
119Provides: nfsclient
120Obsoletes: knfsd-clients
121Obsoletes: nfs-server-clients
122Obsoletes: nfsclient
123Conflicts: krb5-common < 1.7
124
125%description clients
126The nfs-server-clients package contains the showmount program.
127Showmount queries the mount daemon on a remote host for information
128about the NFS (Network File System) server on the remote host. For
129example, showmount can display the clients which are mounted on that
130host. This package is not needed to mount NFS volumes.
131
132%description clients -l pl.UTF-8
133Pakiet zawiera program showmount służący do odpytywania serwera NFS.
134Showmount pyta demona na zdalnej maszynie o informacje NFS na zdalnym
135hoście. Na przykład, showmount potrafi pokazać klientów, którzy są
136zamountowani na tym serwerze. Ten pakiet nie jest konieczny do
137zamountowania zasobów NFS.
138
03bd8d09
JR
139%package common
140Summary: Common programs for NFS
141Summary(pl.UTF-8): Wspólne programy do obsługi NFS
042f4ecc
JR
142Group: Networking
143Requires(post,preun): /sbin/chkconfig
03bd8d09 144Provides: user(rpcstatd)
042f4ecc
JR
145Provides: group(rpcstatd)
146Provides: nfslockd
03bd8d09
JR
147Provides: nfs-utils-lock
148Requires: libnfsidmap >= 0.21-3
149Requires: rc-scripts
150Requires: rpcbind >= 0.1.7
151Obsoletes: nfs-utils-lock
042f4ecc
JR
152Obsoletes: knfsd-lock
153Obsoletes: nfslockd
042f4ecc
JR
154Conflicts: mount < 2.13-0.pre7.1
155
156%description common
157Common programs for NFS.
158
159%description common -l pl.UTF-8
160Wspólne programy do obsługi NFS.
161
162%prep
163%setup -q -a1
164%patch0 -p1
165%patch1 -p1
166%patch2 -p1
167%patch3 -p1
c1a7163e 168%patch4 -p1
927aa100 169%patch5 -p1
042f4ecc
JR
170
171%build
172%{__libtoolize}
173%{__aclocal} -I aclocal
174%{__autoconf}
175%{__autoheader}
176%{__automake}
177%configure \
178 --enable-nfsv3 \
179 --enable-nfsv4 \
d1c5b6d6 180 --enable-nfsv41 \
042f4ecc
JR
181 --enable-gss \
182 --enable-mount \
d1c5b6d6 183 --enable-mountconfig \
eac4cf5e 184 --enable-libmount-mount \
5ec77457
JR
185%if %{with tirpc}
186 --enable-tirpc \
042f4ecc 187 --enable-ipv6 \
5ec77457
JR
188%else
189 --disable-tirpc \
190 --disable-ipv6 \
191%endif
d1c5b6d6 192 --with-statdpath=/var/lib/nfs/statd \
042f4ecc
JR
193 --with-statedir=/var/lib/nfs \
194 --with-statduser=rpcstatd \
195 --with-start-statd=%{_sbindir}/start-statd \
196 --with-tcp-wrappers \
8001d84c 197 --with-krb5
042f4ecc
JR
198
199%{__make} all
200
201%install
202rm -rf $RPM_BUILD_ROOT
69621933 203install -d $RPM_BUILD_ROOT%{_sysconfdir}/{rc.d/init.d,sysconfig,exports.d} \
042f4ecc
JR
204 $RPM_BUILD_ROOT%{_var}/lib/nfs/{rpc_pipefs,v4recovery}
205
206%{__make} install \
207 DESTDIR=$RPM_BUILD_ROOT
208
d1c5b6d6
JR
209install -p utils/mount/nfsmount.conf $RPM_BUILD_ROOT/etc
210
042f4ecc
JR
211cat >$RPM_BUILD_ROOT%{_sbindir}/start-statd <<EOF
212#!/bin/sh
213# mount.nfs calls this script when mounting a filesystem with locking
214# enabled, but when statd does not seem to be running (based on
215# /var/run/rpc.statd.pid).
216exec /sbin/service nfslock start
217EOF
218
219sed -e "s|#!/bin/bash|#!/bin/sh|" utils/gssd/gss_destroy_creds > $RPM_BUILD_ROOT%{_sbindir}/gss_destroy_creds
220
221mv $RPM_BUILD_ROOT%{_sbindir}/rpcdebug $RPM_BUILD_ROOT/sbin
222
223install %{SOURCE2} $RPM_BUILD_ROOT/etc/rc.d/init.d/nfs
224install %{SOURCE3} $RPM_BUILD_ROOT/etc/rc.d/init.d/nfslock
225install %{SOURCE4} $RPM_BUILD_ROOT/etc/rc.d/init.d/nfsfs
226install %{SOURCE5} $RPM_BUILD_ROOT/etc/rc.d/init.d/idmapd
227install %{SOURCE6} $RPM_BUILD_ROOT/etc/rc.d/init.d/gssd
228install %{SOURCE7} $RPM_BUILD_ROOT/etc/rc.d/init.d/svcgssd
dbb63347 229install %{SOURCE11} $RPM_BUILD_ROOT/etc/rc.d/init.d/blkmapd
042f4ecc
JR
230install %{SOURCE8} $RPM_BUILD_ROOT/etc/sysconfig/nfsd
231install %{SOURCE9} $RPM_BUILD_ROOT/etc/sysconfig/nfslock
232install %{SOURCE10} $RPM_BUILD_ROOT/etc/sysconfig/nfsfs
233
234> $RPM_BUILD_ROOT%{_var}/lib/nfs/rmtab
235> $RPM_BUILD_ROOT%{_sysconfdir}/exports
236
d1c5b6d6 237%{__rm} $RPM_BUILD_ROOT%{_mandir}/man8/rpc.{mountd,nfsd,statd,sm-notify,svcgssd,gssd,idmapd}.8
042f4ecc
JR
238echo ".so mountd.8" > $RPM_BUILD_ROOT%{_mandir}/man8/rpc.mountd.8
239echo ".so nfsd.8" > $RPM_BUILD_ROOT%{_mandir}/man8/rpc.nfsd.8
240echo ".so statd.8" > $RPM_BUILD_ROOT%{_mandir}/man8/rpc.statd.8
241echo ".so sm-notify.8" > $RPM_BUILD_ROOT%{_mandir}/man8/rpc.sm-notify.8
242echo ".so gssd.8" > $RPM_BUILD_ROOT%{_mandir}/man8/rpc.gssd.8
243echo ".so idmapd.8" > $RPM_BUILD_ROOT%{_mandir}/man8/rpc.idmapd.8
244echo ".so svcgssd.8" > $RPM_BUILD_ROOT%{_mandir}/man8/rpc.svcgssd.8
245
246touch $RPM_BUILD_ROOT/var/lib/nfs/xtab
247
248ln -sf /bin/true $RPM_BUILD_ROOT/sbin/fsck.nfs
249
250cp -a nfs html
251
252%clean
253rm -rf $RPM_BUILD_ROOT
254
255%post
256/sbin/chkconfig --add nfs
257%service nfs restart "NFS daemon"
258/sbin/chkconfig --add svcgssd
259%service svcgssd restart "RPC svcgssd"
260
261%preun
262if [ "$1" = "0" ]; then
263 %service nfs stop
264 /sbin/chkconfig --del nfs
265 %service svcgssd stop
266 /sbin/chkconfig --del svcgssd
267fi
268
269%post clients
270/sbin/chkconfig --add nfsfs
271%service nfsfs restart
272/sbin/chkconfig --add gssd
273%service gssd restart "RPC gssd"
03bd8d09
JR
274/sbin/chkconfig --add blkmapd
275%service blkmapd restart "pNFS blkmapd"
042f4ecc
JR
276
277%preun clients
278if [ "$1" = "0" ]; then
279 %service nfsfs stop
280 /sbin/chkconfig --del nfsfs
281 %service gssd stop
282 /sbin/chkconfig --del gssd
03bd8d09
JR
283 %service blkmapd stop
284 /sbin/chkconfig --del blkmapd
042f4ecc
JR
285fi
286
03bd8d09 287%pre common
042f4ecc
JR
288%groupadd -g 191 rpcstatd
289%useradd -u 191 -d /var/lib/nfs/statd -s /bin/false -c "RPC statd user" -g rpcstatd rpcstatd
290
03bd8d09
JR
291%post common
292/sbin/chkconfig --add idmapd
293%service idmapd restart "RPC idmapd"
042f4ecc
JR
294/sbin/chkconfig --add nfslock
295%service nfslock restart "RPC statd"
296
03bd8d09 297%preun common
042f4ecc 298if [ "$1" = "0" ]; then
03bd8d09
JR
299 %service idmapd stop
300 /sbin/chkconfig --del idmapd
042f4ecc
JR
301 %service nfslock stop
302 /sbin/chkconfig --del nfslock
303fi
304
03bd8d09 305%postun common
042f4ecc
JR
306if [ "$1" = "0" ]; then
307 %userremove rpcstatd
308 %groupremove rpcstatd
309fi
310
03bd8d09
JR
311%triggerpostun common -- %{name}-lock < 1.2.5-3
312if [ -f /etc/sysconfig/nfslock.rpmsave ]; then
313 mv -f /etc/sysconfig/nfslock{,.rpmnew}
314 mv -f /etc/sysconfig/nfslock.rpmsave /etc/sysconfig/nfslock
042f4ecc 315fi
042f4ecc
JR
316
317%files
318%defattr(644,root,root,755)
319%doc ChangeLog README html
320%attr(755,root,root) /sbin/rpcdebug
321%attr(755,root,root) /sbin/fsck.nfs
322%attr(755,root,root) %{_sbindir}/exportfs
323%attr(755,root,root) %{_sbindir}/rpc.mountd
324%attr(755,root,root) %{_sbindir}/rpc.nfsd
325%attr(755,root,root) %{_sbindir}/rpc.svcgssd
326%attr(755,root,root) %{_sbindir}/nfsstat
327
328%attr(754,root,root) /etc/rc.d/init.d/nfs
329%attr(754,root,root) /etc/rc.d/init.d/svcgssd
330
331%attr(664,root,fileshare) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/exports
974d2ecb
JR
332%dir %{_sysconfdir}/exports.d
333
042f4ecc
JR
334%config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/nfsd
335%config(noreplace) %verify(not md5 mtime size) %{_var}/lib/nfs/xtab
336%config(noreplace) %verify(not md5 mtime size) %{_var}/lib/nfs/etab
337%config(noreplace) %verify(not md5 mtime size) %{_var}/lib/nfs/rmtab
338
339%{_mandir}/man5/exports.5*
340%{_mandir}/man7/nfsd.7*
341%{_mandir}/man8/exportfs.8*
342%{_mandir}/man8/mountd.8*
343%{_mandir}/man8/nfsd.8*
344%{_mandir}/man8/nfsstat.8*
345%{_mandir}/man8/rpc.mountd.8*
346%{_mandir}/man8/rpc.nfsd.8*
347%{_mandir}/man8/rpc.svcgssd.8*
348%{_mandir}/man8/rpcdebug.8*
349%{_mandir}/man8/svcgssd.8*
350
042f4ecc
JR
351%files clients
352%defattr(644,root,root,755)
03bd8d09
JR
353%attr(754,root,root) /etc/rc.d/init.d/blkmapd
354%attr(754,root,root) /etc/rc.d/init.d/gssd
042f4ecc
JR
355%attr(754,root,root) /etc/rc.d/init.d/nfsfs
356%config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/nfsfs
d1c5b6d6 357%attr(664,root,fileshare) %config(noreplace) %verify(not md5 mtime size) /etc/nfsmount.conf
042f4ecc
JR
358%attr(4755,root,root) /sbin/mount.nfs
359%attr(4755,root,root) /sbin/umount.nfs
360%attr(4755,root,root) /sbin/mount.nfs4
361%attr(4755,root,root) /sbin/umount.nfs4
03bd8d09 362%attr(755,root,root) %{_sbindir}/blkmapd
042f4ecc
JR
363%attr(755,root,root) %{_sbindir}/mountstats
364%attr(755,root,root) %{_sbindir}/nfsiostat
042f4ecc 365%attr(755,root,root) %{_sbindir}/rpc.gssd
03bd8d09 366%attr(755,root,root) %{_sbindir}/showmount
d1c5b6d6 367%{_mandir}/man5/nfsmount.conf.5*
9d168c46 368%{_mandir}/man8/blkmapd.8*
042f4ecc
JR
369%{_mandir}/man8/gssd.8*
370%{_mandir}/man8/mount.nfs.8*
371%{_mandir}/man8/mountstats.8*
372%{_mandir}/man8/nfsiostat.8*
373%{_mandir}/man8/rpc.gssd.8*
374%{_mandir}/man8/showmount.8*
375%{_mandir}/man8/umount.nfs.8*
376
377%files common
378%defattr(644,root,root,755)
03bd8d09
JR
379%config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/nfslock
380%attr(754,root,root) /etc/rc.d/init.d/idmapd
381%attr(754,root,root) /etc/rc.d/init.d/nfslock
042f4ecc
JR
382%attr(755,root,root) %{_sbindir}/gss_clnt_send_err
383%attr(755,root,root) %{_sbindir}/gss_destroy_creds
fba6fbdd 384%attr(755,root,root) %{_sbindir}/nfsidmap
042f4ecc 385%attr(755,root,root) %{_sbindir}/rpc.idmapd
03bd8d09
JR
386%attr(755,root,root) %{_sbindir}/rpc.statd
387%attr(755,root,root) %{_sbindir}/sm-notify
388%attr(755,root,root) %{_sbindir}/start-statd
042f4ecc
JR
389%dir %{_var}/lib/nfs
390%dir %{_var}/lib/nfs/rpc_pipefs
391%dir %{_var}/lib/nfs/v4recovery
03bd8d09
JR
392%attr(700,rpcstatd,rpcstatd) %dir %{_var}/lib/nfs/statd
393%attr(700,rpcstatd,rpcstatd) %dir %{_var}/lib/nfs/statd/sm
394%attr(700,rpcstatd,rpcstatd) %dir %{_var}/lib/nfs/statd/sm.bak
395%attr(600,rpcstatd,rpcstatd) %config(noreplace) %verify(not md5 mtime size) %{_var}/lib/nfs/statd/state
042f4ecc
JR
396%{_mandir}/man5/nfs.5*
397%{_mandir}/man8/idmapd.8*
fba6fbdd 398%{_mandir}/man8/nfsidmap.8*
042f4ecc 399%{_mandir}/man8/rpc.idmapd.8*
03bd8d09
JR
400%{_mandir}/man8/rpc.sm-notify.8*
401%{_mandir}/man8/rpc.statd.8*
402%{_mandir}/man8/sm-notify.8*
403%{_mandir}/man8/statd.8*
This page took 0.183304 seconds and 4 git commands to generate.