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