]> git.pld-linux.org Git - packages/nfs-utils.git/blame - nfs-utils.spec
- use generic portmapper check from rc-scripts
[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
JR
15Version: 1.1.0
16%define _pre rc1
17Release: 0.%{_pre}.1
0011b22d 18License: GPL
cb62e4f3 19Group: Networking/Daemons
100fd575
JR
20Source0: http://dl.sourceforge.net/nfs/%{name}-%{version}-%{_pre}.tar.gz
21# Source0-md5: 924dd05dc3958d4da585d74808bb84c4
ae271a1d 22Source1: ftp://ftp.linuxnfs.sourceforge.org/pub/nfs/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
bffa77d2 35# http://www.citi.umich.edu/projects/nfsv4/linux/nfs-utils-patches/
b54d7789
JR
36#Patch2: %{name}-1.0.11-CITI_NFS4_ALL-1.dif
37Patch2: %{name}-CITI_NFS4.patch
100fd575
JR
38Patch3: %{name}-statdpath.patch
39Patch4: %{name}-mount-fake.patch
40Patch5: %{name}-mountd.patch
41Patch6: %{name}-idmapd.conf.patch
42Patch7: %{name}-keytab-path.patch
43Patch8: %{name}-subsys.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
100fd575 160%setup -q -a1 -n %{name}-%{version}-%{_pre}
1bc6345f 161%patch0 -p1
f4ada66b 162%patch1 -p1
6a066142 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
538d5113 170
1bc6345f
JR
171%build
172%configure \
ea4a6f67 173%if %{with nfs4}
ea4a6f67
AM
174 --enable-gss \
175 --with-krb5=%{_prefix} \
4f5693d9 176 --enable-nfsv4 \
ea4a6f67 177%else
5b70fba4
JB
178 --disable-gss \
179 --disable-nfsv4 \
180%endif
0048f570 181 %{?with_mount:--enable-mount} \
75e03a22 182 --disable-rquotad \
1bc6345f 183 --enable-nfsv3 \
538d5113 184 --enable-secure-statd \
f45e2dff 185 --with-statedir=/var/lib/nfs \
186 --with-tcp-wrappers
4f5693d9 187
cee80e09 188%{__make} all
1bc6345f
JR
189
190%install
191rm -rf $RPM_BUILD_ROOT
4f596608 192install -d $RPM_BUILD_ROOT{/sbin,%{_sbindir},%{_mandir}/man{5,8}} \
4f5693d9 193 $RPM_BUILD_ROOT%{_sysconfdir}/{rc.d/init.d,sysconfig} \
0048f570 194 $RPM_BUILD_ROOT%{_var}/lib/nfs/{rpc_pipefs,v4recovery,statd}
1bc6345f 195
e4300aca 196%{__make} install \
4f5693d9 197 DESTDIR=$RPM_BUILD_ROOT
1bc6345f 198
6a066142
JR
199cat >$RPM_BUILD_ROOT%{_sbindir}/start-statd <<EOF
200#!/bin/sh
201# mount.nfs calls this script when mounting a filesystem with locking
202# enabled, but when statd does not seem to be running (based on
203# /var/run/rpc.statd.pid).
204exec /sbin/service nfslock start
205EOF
206
207sed -e "s|#!/bin/bash|#!/bin/sh|" utils/gssd/gss_destroy_creds > $RPM_BUILD_ROOT%{_sbindir}/gss_destroy_creds
208
0048f570 209mv $RPM_BUILD_ROOT%{_sbindir}/rpcdebug $RPM_BUILD_ROOT/sbin
4f5693d9
JR
210install utils/idmapd/idmapd.conf $RPM_BUILD_ROOT%{_sysconfdir}/
211
1bc6345f
JR
212install %{SOURCE2} $RPM_BUILD_ROOT/etc/rc.d/init.d/nfs
213install %{SOURCE3} $RPM_BUILD_ROOT/etc/rc.d/init.d/nfslock
75e03a22
JR
214install %{SOURCE4} $RPM_BUILD_ROOT/etc/rc.d/init.d/nfsfs
215install %{SOURCE5} $RPM_BUILD_ROOT/etc/rc.d/init.d/idmapd
216install %{SOURCE6} $RPM_BUILD_ROOT/etc/rc.d/init.d/gssd
217install %{SOURCE7} $RPM_BUILD_ROOT/etc/rc.d/init.d/svcgssd
218install %{SOURCE8} $RPM_BUILD_ROOT/etc/sysconfig/nfsd
219install %{SOURCE9} $RPM_BUILD_ROOT/etc/sysconfig/nfslock
220install %{SOURCE10} $RPM_BUILD_ROOT/etc/sysconfig/nfsfs
1bc6345f 221
d48d450b 222> $RPM_BUILD_ROOT%{_var}/lib/nfs/rmtab
223> $RPM_BUILD_ROOT%{_sysconfdir}/exports
1bc6345f 224
6a066142 225rm $RPM_BUILD_ROOT%{_mandir}/man8/rpc.{mountd,nfsd,statd,svcgssd,gssd,idmapd,sm-notify}.8
1bc6345f
JR
226echo ".so mountd.8" > $RPM_BUILD_ROOT%{_mandir}/man8/rpc.mountd.8
227echo ".so nfsd.8" > $RPM_BUILD_ROOT%{_mandir}/man8/rpc.nfsd.8
1bc6345f 228echo ".so statd.8" > $RPM_BUILD_ROOT%{_mandir}/man8/rpc.statd.8
6a066142 229echo ".so sm-notify.8" > $RPM_BUILD_ROOT%{_mandir}/man8/rpc.sm-notify.8
6986d116 230%if %{with nfs4}
4f5693d9
JR
231echo ".so gssd.8" > $RPM_BUILD_ROOT%{_mandir}/man8/rpc.gssd.8
232echo ".so idmapd.8" > $RPM_BUILD_ROOT%{_mandir}/man8/rpc.idmapd.8
233echo ".so svcgssd.8" > $RPM_BUILD_ROOT%{_mandir}/man8/rpc.svcgssd.8
6986d116 234%endif
1bc6345f 235
9df625b5 236touch $RPM_BUILD_ROOT/var/lib/nfs/xtab
1bc6345f 237
959e2a35
AM
238ln -sf /bin/true $RPM_BUILD_ROOT/sbin/fsck.nfs
239
11fad0cc 240cp -a nfs html
1bc6345f
JR
241
242%clean
243rm -rf $RPM_BUILD_ROOT
244
245%post
f511a355 246/sbin/chkconfig --add nfs
c5c607cb 247%service nfs restart "NFS daemon"
809898a3
JR
248%if %{with nfs4}
249/sbin/chkconfig --add svcgssd
6a066142 250%service svcgssd restart "RPC svcgssd"
809898a3 251%endif
1bc6345f
JR
252
253%preun
f511a355 254if [ "$1" = "0" ]; then
c5c607cb 255 %service nfs stop
f511a355 256 /sbin/chkconfig --del nfs
809898a3
JR
257%if %{with nfs4}
258 %service svcgssd stop
259 /sbin/chkconfig --del svcgssd
260%endif
f511a355 261fi
1bc6345f 262
e661c6c4 263%post clients
f511a355 264/sbin/chkconfig --add nfsfs
c5c607cb 265%service nfsfs restart
809898a3
JR
266%if %{with nfs4}
267/sbin/chkconfig --add gssd
6a066142 268%service gssd restart "RPC gssd"
809898a3 269%endif
e661c6c4
JR
270
271%preun clients
f511a355 272if [ "$1" = "0" ]; then
c5c607cb 273 %service nfsfs stop
f511a355 274 /sbin/chkconfig --del nfsfs
809898a3
JR
275%if %{with nfs4}
276 %service gssd stop
277 /sbin/chkconfig --del gssd
278%endif
f511a355 279fi
e661c6c4 280
0048f570
JR
281%pre lock
282%groupadd -g 191 rpcstatd
283%useradd -u 191 -d /var/lib/nfs/statd -s /bin/false -c "RPC statd user" -g rpcstatd rpcstatd
284
1bc6345f 285%post lock
f511a355 286/sbin/chkconfig --add nfslock
b474bf5e 287%service nfslock restart "RPC statd"
1bc6345f
JR
288
289%preun lock
f511a355 290if [ "$1" = "0" ]; then
c5c607cb 291 %service nfslock stop
f511a355 292 /sbin/chkconfig --del nfslock
293fi
1bc6345f 294
0048f570
JR
295%postun lock
296if [ "$1" = "0" ]; then
297 %userremove rpcstatd
298 %groupremove rpcstatd
299fi
300
809898a3
JR
301%if %{with nfs4}
302%post common
303/sbin/chkconfig --add idmapd
6a066142 304%service idmapd restart "RPC idmapd"
809898a3
JR
305
306%preun common
307if [ "$1" = "0" ]; then
308 %service idmapd stop
309 /sbin/chkconfig --del idmapd
310fi
311%endif
312
6a066142 313%triggerpostun -- %{name} <= 1.1.0-0.rc1.1
0048f570 314/sbin/chkconfig nfs reset
6a066142
JR
315%if %{with nfs4}
316/sbin/chkconfig svcgssd reset
317%endif
0048f570 318
6a066142 319%triggerpostun lock -- %{name}-lock <= 1.1.0-0.rc1.1
0048f570
JR
320/sbin/chkconfig nfslock reset
321
6a066142 322%triggerpostun clients -- %{name}-clients < 1.1.0-0.rc1.1
11fad0cc
ER
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
0048f570 327/sbin/chkconfig nfsfs reset
6a066142
JR
328%if %{with nfs4}
329/sbin/chkconfig gssd reset
330%endif
331
332%if %{with nfs4}
333%triggerpostun common -- %{name}-common <= 1.1.0-0.rc1.1
334/sbin/chkconfig idmapd reset
335%endif
11fad0cc 336
1bc6345f
JR
337%files
338%defattr(644,root,root,755)
4f5693d9 339%doc ChangeLog README html
1bc6345f 340%attr(755,root,root) /sbin/rpcdebug
959e2a35 341%attr(755,root,root) /sbin/fsck.nfs
1bc6345f
JR
342%attr(755,root,root) %{_sbindir}/exportfs
343%attr(755,root,root) %{_sbindir}/rpc.mountd
344%attr(755,root,root) %{_sbindir}/rpc.nfsd
345%attr(755,root,root) %{_sbindir}/nfsstat
1bc6345f
JR
346
347%attr(754,root,root) /etc/rc.d/init.d/nfs
348
5b70fba4
JB
349%attr(664,root,fileshare) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/exports
350%config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/nfsd
351%config(noreplace) %verify(not md5 mtime size) %{_var}/lib/nfs/xtab
352%config(noreplace) %verify(not md5 mtime size) %{_var}/lib/nfs/etab
353%config(noreplace) %verify(not md5 mtime size) %{_var}/lib/nfs/rmtab
1bc6345f 354
8b926d92
AG
355%{_mandir}/man5/exports.5*
356%{_mandir}/man7/nfsd.7*
1bc6345f
JR
357%{_mandir}/man8/exportfs.8*
358%{_mandir}/man8/mountd.8*
359%{_mandir}/man8/nfsd.8*
360%{_mandir}/man8/nfsstat.8*
361%{_mandir}/man8/rpc.mountd.8*
362%{_mandir}/man8/rpc.nfsd.8*
0048f570 363%{_mandir}/man8/rpcdebug.8*
ea4a6f67 364%if %{with nfs4}
0048f570 365%attr(754,root,root) /etc/rc.d/init.d/svcgssd
ea4a6f67
AM
366%attr(755,root,root) %{_sbindir}/rpc.svcgssd
367%{_mandir}/man8/*svcgss*
368%endif
369
1bc6345f
JR
370%files lock
371%defattr(644,root,root,755)
0048f570 372%attr(700,rpcstatd,rpcstatd) %dir %{_var}/lib/nfs/statd
1bc6345f 373%attr(755,root,root) %{_sbindir}/rpc.statd
100fd575
JR
374%attr(755,root,root) %{_sbindir}/sm-notify
375%attr(755,root,root) %{_sbindir}/start-statd
1bc6345f 376%attr(754,root,root) /etc/rc.d/init.d/nfslock
5b70fba4 377%config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/nfslock
100fd575 378%{_mandir}/man8/*statd.8*
6a066142 379%{_mandir}/man8/*sm-notify.8*
5b70fba4 380%config(noreplace) %verify(not md5 mtime size) %{_var}/lib/nfs/state
1bc6345f
JR
381
382%files clients
383%defattr(644,root,root,755)
e661c6c4 384%attr(754,root,root) /etc/rc.d/init.d/nfsfs
11fad0cc 385%config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/nfsfs
1bc6345f
JR
386%attr(755,root,root) %{_sbindir}/showmount
387%{_mandir}/man8/showmount.8*
0048f570
JR
388%if %{with mount}
389%attr(4755,root,root) /sbin/mount.nfs
390%attr(4755,root,root) /sbin/mount.nfs4
391%attr(4755,root,root) /sbin/umount.nfs
392%attr(4755,root,root) /sbin/umount.nfs4
393%{_mandir}/man8/*mount.nfs.8*
394%endif
ea4a6f67 395%if %{with nfs4}
0048f570 396%attr(754,root,root) /etc/rc.d/init.d/gssd
27439ad6 397%attr(755,root,root) %{_sbindir}/rpc.gssd
ea4a6f67
AM
398%{_mandir}/man8/rpc.gssd*
399%{_mandir}/man8/gssd*
400%endif
401
365015e3
AM
402%files common
403%defattr(644,root,root,755)
8d72ec18
AM
404%attr(755,root,root) %dir %{_var}/lib/nfs
405%attr(755,root,root) %dir %{_var}/lib/nfs/rpc_pipefs
37308b8e 406%attr(755,root,root) %dir %{_var}/lib/nfs/v4recovery
0048f570 407%{_mandir}/man5/nfs*
8d72ec18 408%if %{with nfs4}
0048f570 409%attr(754,root,root) /etc/rc.d/init.d/idmapd
27439ad6
JR
410%attr(755,root,root) %{_sbindir}/gss_*
411%attr(755,root,root) %{_sbindir}/rpc.idmapd
365015e3
AM
412%attr(660,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/idmapd.conf
413%{_mandir}/man[58]/*idmap*
414%endif
This page took 0.125559 seconds and 4 git commands to generate.