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