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