]> git.pld-linux.org Git - packages/nfs-utils.git/blame - nfs-utils.spec
- typo
[packages/nfs-utils.git] / nfs-utils.spec
CommitLineData
4af864e6 1# TODO
6a066142
JR
2# - should unmount /proc/fs/nfsd and /var/lib/nfs/rpc_pipefs at package
3# uninstall (or in service nfs stop)
5b70fba4
JB
4#
5# Conditional build:
6%bcond_without nfs4 # without NFSv4 support
0048f570 7%bcond_without mount # don't build mount.nfs program
5b70fba4 8#
cb62e4f3 9Summary: Kernel NFS server
ada059e5
ER
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-сервера ядра
cb62e4f3 14Name: nfs-utils
100fd575 15Version: 1.1.0
7a3f1242 16Release: 2
0011b22d 17License: GPL
cb62e4f3 18Group: Networking/Daemons
d01055c8
JR
19Source0: ftp://ftp.kernel.org/pub/linux/utils/nfs/%{name}-%{version}.tar.gz
20# Source0-md5: df88c6fe88a26f9797e74cb2d3291a2a
b8d3abb0
JR
21#Source1: ftp://ftp.linuxnfs.sourceforge.org/pub/nfs/nfs.doc.tar.gz
22Source1: nfs.doc.tar.gz
9a665736 23# Source1-md5: ae7db9c61c5ad04f83bb99e5caed73da
1bc6345f
JR
24Source2: nfs.init
25Source3: nfslock.init
75e03a22
JR
26Source4: nfsfs.init
27Source5: rpcidmapd.init
28Source6: rpcgssd.init
29Source7: rpcsvcgssd.init
30Source8: nfs.sysconfig
31Source9: nfslock.sysconfig
32Source10: nfsfs.sysconfig
42ec9fb3
JB
33Patch0: %{name}-eepro-support.patch
34Patch1: %{name}-install.patch
7a3f1242 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
b54d7789 36Patch2: %{name}-CITI_NFS4.patch
100fd575
JR
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
d01055c8 43Patch9: %{name}-mountd-leak.patch
e406194a 44URL: http://nfs.sourceforge.net/
385bb326 45BuildRequires: autoconf >= 2.59
4f5693d9 46BuildRequires: automake
6b12a6b6 47BuildRequires: cpp
910b2b3f 48BuildRequires: e2fsprogs-devel >= 1.39-5
ea4a6f67 49%if %{with nfs4}
b54d7789 50BuildRequires: krb5-devel >= 1.6
51dfb953 51BuildRequires: libevent-devel >= 1.2
2485b7d8 52BuildRequires: libnfsidmap-devel
12e14f6e 53BuildRequires: librpcsecgss-devel >= 0.11-3
ea4a6f67 54%endif
f45e2dff 55BuildRequires: libtool
4ae359cd 56BuildRequires: libwrap-devel
385bb326 57BuildRequires: pkgconfig
4f5693d9 58BuildRequires: sed >= 4.0
8a834723 59Requires(post): fileutils
c5c607cb
ER
60Requires(post): sed >= 4.0
61Requires(post,preun): /sbin/chkconfig
62Requires: %{name}-common = %{version}-%{release}
1bc6345f 63Requires: portmap >= 4.0
4ec71bdf 64Requires: rc-scripts >= 0.4.1.5
c5c607cb 65Requires: setup >= 2.4.6-7
1bc6345f 66Provides: nfsdaemon
8a834723
JB
67Obsoletes: knfsd
68Obsoletes: nfs-server
c5c607cb 69Obsoletes: nfsdaemon
8a834723 70Conflicts: kernel < 2.2.5
1bc6345f 71ExcludeArch: armv4l
d48d450b 72BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
1bc6345f
JR
73
74%description
0011b22d 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.
1bc6345f 78
d44bd88d
JR
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.
1bc6345f 83
d44bd88d
JR
84%description -l pt_BR.UTF-8
85O pacote nfs-utils provê os utilitários para o cliente e servidor NFS
f8d9e6d5 86do Linux.
d48d450b 87
d44bd88d
JR
88%description -l ru.UTF-8
89Пакет nfs-utils предоставляет демона для NFS-сервера, включенного в
90ядро, и сопутствующие утилиты, которые обеспечивают намного большую
91производительность, чем традиционные Linux NFS-сервера, используемые
92большинством пользователей.
011b72fa 93
d44bd88d
JR
94%description -l uk.UTF-8
95Пакет nfs-utils надає демона для NFS-сервера, вбудованого в ядро, та
96супутні утиліти, які забезпечують набагато більшу продуктивність, ніж
97традиційні Linux NFS-сервери, які використовує більшість користувачів.
011b72fa 98
1bc6345f 99%package clients
a4d8ac59 100Summary: Clients for connecting to a remote NFS server
ada059e5 101Summary(pl.UTF-8): Klienci do łączenia się ze zdalnym serwerem NFS
1bc6345f 102Group: Networking
8a834723 103Requires(post,preun): /sbin/chkconfig
365015e3 104Requires: %{name}-common = %{version}-%{release}
c5c607cb
ER
105Requires: psmisc
106Requires: rc-scripts
a4d8ac59 107Provides: nfs-server-clients
c5c607cb 108Provides: nfsclient
523e5742 109Obsoletes: knfsd-clients
c5c607cb
ER
110Obsoletes: nfs-server-clients
111Obsoletes: nfsclient
1bc6345f
JR
112
113%description clients
114The nfs-server-clients package contains the showmount program.
115Showmount queries the mount daemon on a remote host for information
0011b22d 116about the NFS (Network File System) server on the remote host. For
1bc6345f 117example, showmount can display the clients which are mounted on that
0011b22d 118host. This package is not needed to mount NFS volumes.
1bc6345f 119
d44bd88d
JR
120%description clients -l pl.UTF-8
121Pakiet zawiera program showmount służący do odpytywania serwera NFS.
0fb1eec5 122Showmount pyta demona na zdalnej maszynie o informacje NFS na zdalnym
d44bd88d 123hoście. Na przykład, showmount potrafi pokazać klientów, którzy są
26aacf7e 124zamountowani na tym serwerze. Ten pakiet nie jest konieczny do
d44bd88d 125zamountowania zasobów NFS.
1bc6345f
JR
126
127%package lock
a4d8ac59 128Summary: Programs for NFS file locking
ada059e5 129Summary(pl.UTF-8): Programy do obsługi blokowania plików poprzez NFS (lock)
d8de81c5 130Group: Networking
8a834723 131Requires(post,preun): /sbin/chkconfig
1bc6345f 132Requires: portmap >= 4.0
c5c607cb 133Requires: rc-scripts
0048f570
JR
134Provides: group(rpcstatd)
135Provides: user(rpcstatd)
1bc6345f 136Provides: nfslockd
8a834723 137Obsoletes: knfsd-lock
c5c607cb 138Obsoletes: nfslockd
1bc6345f
JR
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
d44bd88d
JR
144%description lock -l pl.UTF-8
145Ten pakiet zawiera programy umożliwiające wykonywanie blokowania
146plików (file locking) poprzez NFS.
1bc6345f 147
365015e3
AM
148%package common
149Summary: Common programs for NFS
ada059e5 150Summary(pl.UTF-8): Wspólne programy do obsługi NFS
365015e3
AM
151Group: Networking
152
153%description common
154Common programs for NFS.
155
d44bd88d
JR
156%description common -l pl.UTF-8
157Wspólne programy do obsługi NFS.
365015e3 158
1bc6345f 159%prep
d01055c8 160%setup -q -a1
1bc6345f 161%patch0 -p1
f4ada66b 162%patch1 -p1
7a3f1242 163%patch2 -p1
b54d7789 164%patch3 -p1
6a066142 165%patch4 -p1
910b2b3f 166%patch5 -p1
0048f570
JR
167%patch6 -p1
168%patch7 -p1
169%patch8 -p1
d01055c8 170%patch9 -p1
538d5113 171
1bc6345f
JR
172%build
173%configure \
ea4a6f67 174%if %{with nfs4}
ea4a6f67
AM
175 --enable-gss \
176 --with-krb5=%{_prefix} \
4f5693d9 177 --enable-nfsv4 \
ea4a6f67 178%else
5b70fba4
JB
179 --disable-gss \
180 --disable-nfsv4 \
181%endif
0048f570 182 %{?with_mount:--enable-mount} \
75e03a22 183 --disable-rquotad \
1bc6345f 184 --enable-nfsv3 \
538d5113 185 --enable-secure-statd \
f45e2dff 186 --with-statedir=/var/lib/nfs \
187 --with-tcp-wrappers
4f5693d9 188
cee80e09 189%{__make} all
1bc6345f
JR
190
191%install
192rm -rf $RPM_BUILD_ROOT
4f596608 193install -d $RPM_BUILD_ROOT{/sbin,%{_sbindir},%{_mandir}/man{5,8}} \
4f5693d9 194 $RPM_BUILD_ROOT%{_sysconfdir}/{rc.d/init.d,sysconfig} \
0048f570 195 $RPM_BUILD_ROOT%{_var}/lib/nfs/{rpc_pipefs,v4recovery,statd}
1bc6345f 196
e4300aca 197%{__make} install \
4f5693d9 198 DESTDIR=$RPM_BUILD_ROOT
1bc6345f 199
6a066142
JR
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
0048f570 210mv $RPM_BUILD_ROOT%{_sbindir}/rpcdebug $RPM_BUILD_ROOT/sbin
4f5693d9
JR
211install utils/idmapd/idmapd.conf $RPM_BUILD_ROOT%{_sysconfdir}/
212
1bc6345f
JR
213install %{SOURCE2} $RPM_BUILD_ROOT/etc/rc.d/init.d/nfs
214install %{SOURCE3} $RPM_BUILD_ROOT/etc/rc.d/init.d/nfslock
75e03a22
JR
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
1bc6345f 222
d48d450b 223> $RPM_BUILD_ROOT%{_var}/lib/nfs/rmtab
224> $RPM_BUILD_ROOT%{_sysconfdir}/exports
1bc6345f 225
727dd6c6 226rm $RPM_BUILD_ROOT%{_mandir}/man8/rpc.{mountd,nfsd,statd,sm-notify}.8
1bc6345f
JR
227echo ".so mountd.8" > $RPM_BUILD_ROOT%{_mandir}/man8/rpc.mountd.8
228echo ".so nfsd.8" > $RPM_BUILD_ROOT%{_mandir}/man8/rpc.nfsd.8
1bc6345f 229echo ".so statd.8" > $RPM_BUILD_ROOT%{_mandir}/man8/rpc.statd.8
6a066142 230echo ".so sm-notify.8" > $RPM_BUILD_ROOT%{_mandir}/man8/rpc.sm-notify.8
6986d116 231%if %{with nfs4}
a9df4f39 232rm $RPM_BUILD_ROOT%{_mandir}/man8/rpc.{svcgssd,gssd,idmapd}.8
4f5693d9
JR
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
6986d116 236%endif
1bc6345f 237
9df625b5 238touch $RPM_BUILD_ROOT/var/lib/nfs/xtab
1bc6345f 239
959e2a35
AM
240ln -sf /bin/true $RPM_BUILD_ROOT/sbin/fsck.nfs
241
11fad0cc 242cp -a nfs html
1bc6345f
JR
243
244%clean
245rm -rf $RPM_BUILD_ROOT
246
247%post
f511a355 248/sbin/chkconfig --add nfs
c5c607cb 249%service nfs restart "NFS daemon"
809898a3
JR
250%if %{with nfs4}
251/sbin/chkconfig --add svcgssd
6a066142 252%service svcgssd restart "RPC svcgssd"
809898a3 253%endif
1bc6345f
JR
254
255%preun
f511a355 256if [ "$1" = "0" ]; then
c5c607cb 257 %service nfs stop
f511a355 258 /sbin/chkconfig --del nfs
809898a3
JR
259%if %{with nfs4}
260 %service svcgssd stop
261 /sbin/chkconfig --del svcgssd
262%endif
f511a355 263fi
1bc6345f 264
e661c6c4 265%post clients
f511a355 266/sbin/chkconfig --add nfsfs
c5c607cb 267%service nfsfs restart
809898a3
JR
268%if %{with nfs4}
269/sbin/chkconfig --add gssd
6a066142 270%service gssd restart "RPC gssd"
809898a3 271%endif
e661c6c4
JR
272
273%preun clients
f511a355 274if [ "$1" = "0" ]; then
c5c607cb 275 %service nfsfs stop
f511a355 276 /sbin/chkconfig --del nfsfs
809898a3
JR
277%if %{with nfs4}
278 %service gssd stop
279 /sbin/chkconfig --del gssd
280%endif
f511a355 281fi
e661c6c4 282
0048f570
JR
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
1bc6345f 287%post lock
f511a355 288/sbin/chkconfig --add nfslock
b474bf5e 289%service nfslock restart "RPC statd"
1bc6345f
JR
290
291%preun lock
f511a355 292if [ "$1" = "0" ]; then
c5c607cb 293 %service nfslock stop
f511a355 294 /sbin/chkconfig --del nfslock
295fi
1bc6345f 296
0048f570
JR
297%postun lock
298if [ "$1" = "0" ]; then
299 %userremove rpcstatd
300 %groupremove rpcstatd
301fi
302
809898a3
JR
303%if %{with nfs4}
304%post common
305/sbin/chkconfig --add idmapd
6a066142 306%service idmapd restart "RPC idmapd"
809898a3
JR
307
308%preun common
309if [ "$1" = "0" ]; then
310 %service idmapd stop
311 /sbin/chkconfig --del idmapd
312fi
313%endif
314
6a066142 315%triggerpostun -- %{name} <= 1.1.0-0.rc1.1
0048f570 316/sbin/chkconfig nfs reset
6a066142
JR
317%if %{with nfs4}
318/sbin/chkconfig svcgssd reset
319%endif
0048f570 320
6a066142 321%triggerpostun lock -- %{name}-lock <= 1.1.0-0.rc1.1
0048f570
JR
322/sbin/chkconfig nfslock reset
323
6a066142 324%triggerpostun clients -- %{name}-clients < 1.1.0-0.rc1.1
11fad0cc
ER
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
0048f570 329/sbin/chkconfig nfsfs reset
6a066142
JR
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
11fad0cc 338
1bc6345f
JR
339%files
340%defattr(644,root,root,755)
4f5693d9 341%doc ChangeLog README html
1bc6345f 342%attr(755,root,root) /sbin/rpcdebug
959e2a35 343%attr(755,root,root) /sbin/fsck.nfs
1bc6345f
JR
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
1bc6345f
JR
348
349%attr(754,root,root) /etc/rc.d/init.d/nfs
350
5b70fba4
JB
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
1bc6345f 356
8b926d92
AG
357%{_mandir}/man5/exports.5*
358%{_mandir}/man7/nfsd.7*
1bc6345f
JR
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*
0048f570 365%{_mandir}/man8/rpcdebug.8*
ea4a6f67 366%if %{with nfs4}
0048f570 367%attr(754,root,root) /etc/rc.d/init.d/svcgssd
ea4a6f67
AM
368%attr(755,root,root) %{_sbindir}/rpc.svcgssd
369%{_mandir}/man8/*svcgss*
370%endif
371
1bc6345f
JR
372%files lock
373%defattr(644,root,root,755)
0048f570 374%attr(700,rpcstatd,rpcstatd) %dir %{_var}/lib/nfs/statd
1bc6345f 375%attr(755,root,root) %{_sbindir}/rpc.statd
100fd575
JR
376%attr(755,root,root) %{_sbindir}/sm-notify
377%attr(755,root,root) %{_sbindir}/start-statd
1bc6345f 378%attr(754,root,root) /etc/rc.d/init.d/nfslock
5b70fba4 379%config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/nfslock
100fd575 380%{_mandir}/man8/*statd.8*
6a066142 381%{_mandir}/man8/*sm-notify.8*
5b70fba4 382%config(noreplace) %verify(not md5 mtime size) %{_var}/lib/nfs/state
1bc6345f
JR
383
384%files clients
385%defattr(644,root,root,755)
e661c6c4 386%attr(754,root,root) /etc/rc.d/init.d/nfsfs
11fad0cc 387%config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/nfsfs
1bc6345f
JR
388%attr(755,root,root) %{_sbindir}/showmount
389%{_mandir}/man8/showmount.8*
0048f570
JR
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
ea4a6f67 397%if %{with nfs4}
0048f570 398%attr(754,root,root) /etc/rc.d/init.d/gssd
27439ad6 399%attr(755,root,root) %{_sbindir}/rpc.gssd
ea4a6f67
AM
400%{_mandir}/man8/rpc.gssd*
401%{_mandir}/man8/gssd*
402%endif
403
365015e3
AM
404%files common
405%defattr(644,root,root,755)
8d72ec18
AM
406%attr(755,root,root) %dir %{_var}/lib/nfs
407%attr(755,root,root) %dir %{_var}/lib/nfs/rpc_pipefs
37308b8e 408%attr(755,root,root) %dir %{_var}/lib/nfs/v4recovery
0048f570 409%{_mandir}/man5/nfs*
8d72ec18 410%if %{with nfs4}
0048f570 411%attr(754,root,root) /etc/rc.d/init.d/idmapd
27439ad6
JR
412%attr(755,root,root) %{_sbindir}/gss_*
413%attr(755,root,root) %{_sbindir}/rpc.idmapd
365015e3
AM
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.199618 seconds and 4 git commands to generate.