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