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