2 # - proper init scripts if non-systemd boot is too be supported
3 # (upstream scripts seem overcomplicated and hardly useful)
4 # - run as non-root user
6 # Note on versioning: http://docs.ceph.com/docs/master/releases/
9 %bcond_without java # Java binding
10 %bcond_with accelio # Accelio transport support [needs update for internal API changes]
11 %bcond_with cryptopp # use cryptopp instead of NSS crypto/SSL
12 %bcond_with dpdk # DPDK messaging (requires cryptopp instead of nss)
13 %bcond_with fcgi # RADOS Gateway FCGI frontend
14 %bcond_with fio # FIO engines support
15 %bcond_without pmem # PMDK (persistent memory) support
16 %bcond_with spdk # Ceph SPDK support (DPDK based)
17 %bcond_without system_rocksdb # system RocksDB storage support
18 %bcond_with zfs # ZFS support [not ready for zfs 0.8.x]
19 %bcond_without lttng # LTTng tracing
20 %bcond_without babeltrace # Babeltrace traces support
21 %bcond_without tcmalloc # tcmalloc allocator
22 %bcond_with tests # build tests
25 %undefine with_tcmalloc
27 %ifnarch %{x8664} aarch64
30 %if %{without cryptopp} && %{with dpdk}
31 %error DPDK requires cryptopp
34 Summary: User space components of the Ceph file system
35 Summary(pl.UTF-8): Działające w przestrzeni użytkownika elementy systemu plików Ceph
39 License: LGPL v2.1 (libraries), GPL v2 (some programs)
41 Source0: http://download.ceph.com/tarballs/%{name}-%{version}.tar.gz
42 # Source0-md5: 3cb3d259e59920b0d7145537f338aeec
43 Source1: ceph.sysconfig
44 Source3: ceph.tmpfiles
45 Patch0: %{name}-python.patch
46 Patch1: %{name}-tcmalloc.patch
47 Patch2: %{name}-fcgi.patch
48 Patch3: string-includes.patch
49 Patch4: no-virtualenvs.patch
50 Patch5: system-zstd.patch
52 Patch7: use-provided-cpu-flag-values.patch
53 Patch8: ix86-no-asm.patch
54 Patch9: long-int-time_t.patch
55 Patch10: fuse3-api.patch
57 %{?with_accelio:BuildRequires: accelio-devel}
58 %{?with_babeltrace:BuildRequires: babeltrace-devel}
59 BuildRequires: boost-devel >= 1.66
60 BuildRequires: boost-python3-devel >= 1.66
61 BuildRequires: cmake >= 3.22.2
62 %{?with_cryptopp:BuildRequires: cryptopp-devel}
63 BuildRequires: curl-devel
64 %if %{with dpdk} || %{with spdk}
65 BuildRequires: dpdk-devel
67 BuildRequires: expat-devel >= 1.95
68 %{?with_fcgi:BuildRequires: fcgi-devel}
69 %{?with_fio:BuildRequires: fio-devel}
70 BuildRequires: gdbm-devel
71 BuildRequires: gperftools-devel
74 BuildRequires: jre-X11
76 BuildRequires: keyutils-devel
77 BuildRequires: leveldb-devel >= 1.2
78 BuildRequires: libaio-devel
79 BuildRequires: libatomic_ops
80 BuildRequires: libblkid-devel >= 2.17
81 BuildRequires: libedit-devel >= 2.11
82 BuildRequires: libfuse3-devel
84 %{?with_accelio:BuildRequires: libibverbs-devel}
85 BuildRequires: libltdl-devel
86 BuildRequires: librdkafka-devel
87 %{?with_accelio:BuildRequires: librdmacm-devel}
88 BuildRequires: libstdc++-devel >= 6:4.7
89 %{?with_tcmalloc:BuildRequires: libtcmalloc-devel}
90 BuildRequires: libtool >= 2:1.5
91 BuildRequires: libuuid-devel
92 BuildRequires: libxml2-devel >= 2.0
93 %{?with_lttng:BuildRequires: lttng-ust-devel}
94 BuildRequires: lua-devel
95 BuildRequires: lz4-devel >= 1:1.7
96 %{!?with_cryptopp:BuildRequires: nss-devel >= 3}
97 BuildRequires: oath-toolkit-devel
98 BuildRequires: openldap-devel
99 BuildRequires: openssl-devel
100 BuildRequires: perl-base
101 BuildRequires: pkgconfig
102 %{?with_pmem:BuildRequires: pmdk-devel}
103 BuildRequires: python3 >= 1:3.2
104 BuildRequires: python3-devel >= 1:3.2
105 BuildRequires: python3-tox >= 2.9.1
106 BuildRequires: python3-Cython
107 %{?with_system_rocksdb:BuildRequires: rocksdb-devel >= 5.6.0}
108 BuildRequires: rpmbuild(macros) >= 1.671
109 BuildRequires: sed >= 4.0
110 BuildRequires: snappy-devel
111 BuildRequires: sphinx-pdg >= 3.0
112 BuildRequires: udev-devel
113 %{?with_dpdk:BuildRequires: xorg-lib-libpciaccess-devel}
114 BuildRequires: xfsprogs-devel
118 %{?with_zfs:BuildRequires: zfs-devel >= 0.8.0}
119 BuildRequires: zlib-devel
120 Requires(post,preun): /sbin/chkconfig
121 Requires(preun): rc-scripts
122 Requires: %{name}-libs = %{version}-%{release}
123 Requires: python3-%{name} = %{version}-%{release}
124 Requires: systemd-units >= 38
126 Obsoletes: hadoop-cephfs
127 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
129 %define skip_post_check_so libceph_crypto_isal.so.* libceph_lz4.so.* libceph_snappy.so.* libceph_zlib.so.* libceph_zstd.so.* libcls_.*.so.* libec_.*.so.*
132 Ceph is a distributed network file system designed to provide
133 excellent performance, reliability, and scalability.
135 %description -l pl.UTF-8
136 Ceph to rozproszony sieciowy system plików zaprojektowany z myślą o
137 dobrej wydajności, wiarygodności i skalowalności.
140 Summary: Ceph shared libraries
141 Summary(pl.UTF-8): Biblioteki współdzielone Cepha
145 Ceph shared libraries.
147 %description libs -l pl.UTF-8
148 Biblioteki współdzielone Cepha.
151 Summary: Ceph header files
152 Summary(pl.UTF-8): Pliki nagłówkowe bibliotek Cepha
154 Group: Development/Libraries
155 Requires: %{name}-libs = %{version}-%{release}
156 Requires: boost-devel >= 1.66
158 Requires: expat-devel
160 Requires: nss-devel >= 3
161 Requires: leveldb-devel
162 Requires: libatomic_ops
163 Requires: libblkid-devel >= 2.17
164 Requires: libstdc++-devel >= 6:4.7
165 Requires: libuuid-devel
166 %{?with_lttng:Requires: lttng-ust-devel}
167 Requires: openldap-devel
168 Obsoletes: ceph-static < 12
171 This package contains the headers needed to develop programs that use
174 %description devel -l pl.UTF-8
175 Ten pakiet zawiera pliki nagłówkowe potrzebne do tworzenia programów
176 wykorzystujących Cepha.
178 %package -n python3-ceph
179 Summary: Ceph Python 3 bindings
180 Summary(pl.UTF-8): Wiązania Pythona 3 do bibliotek Cepha
181 Group: Development/Languages/Python
182 Requires: %{name}-libs = %{version}-%{release}
184 %description -n python3-ceph
185 Ceph Python 3 bindings.
187 %description -n python3-ceph -l pl.UTF-8
188 Wiązania Pythona 3 do bibliotek Cepha.
190 %package -n java-cephfs
191 Summary: CephFS Java bindings
192 Summary(pl.UTF-8): Wiązania Javy do biblioteki CephFS
193 Group: Libraries/Java
194 Requires: %{name}-libs = %{version}-%{release}
196 %description -n java-cephfs
197 CephFS Java bindings.
199 %description -n java-cephfs -l pl.UTF-8
200 Wiązania Javy do biblioteki CephFS.
203 Summary: Ceph FUSE-based client
204 Summary(pl.UTF-8): Klient Cepha oparty na FUSE
206 Requires: %{name} = %{version}-%{release}
209 FUSE based client for Ceph distributed network file system.
211 %description fuse -l pl.UTF-8
212 Oparty na FUSE klient rozproszonego sieciowego systemu plików Ceph.
215 Summary: rados REST gateway
216 Summary(pl.UTF-8): Bramka REST-owa rados
217 Group: Applications/System
218 #Requires: apache-mod_fcgid
221 radosgw is an S3 HTTP REST gateway for the RADOS object store. It is
222 implemented as a FastCGI module using libfcgi, and can be used in
223 conjunction with any FastCGI capable web server.
225 %description radosgw -l pl.UTF-8
226 radosgw to REST-owa bramka HTTP S3 do przechowalni obiektów RADOS.
227 Jest zaimplementowana jako moduł FastCGI wykorzystujący libfcgi i może
228 być używana w połączeniu z dowolnym serwerem WWW obsługującym FastCGI.
230 %package resource-agents
231 Summary: OCF Resource Agents for Ceph processes
232 Summary(pl.UTF-8): Agenci OCF do monitorowania procesów Cepha
233 Group: Applications/System
234 Requires: %{name} = %{version}-%{release}
235 Requires: resource-agents
237 %description resource-agents
238 OCF Resource Agents for Ceph processes.
240 %description resource-agents -l pl.UTF-8
241 Agenci OCF do monitorowania procesów Cepha.
244 Summary: Ceph benchmarks and test tools
245 Summary(pl.UTF-8): Narzędzia testowe oraz do mierzenia wydajności dla Ceph
246 Group: Applications/System
247 Requires: %{name} = %{version}-%{release}
250 Ceph benchmarks and test tools.
252 %description test -l pl.UTF-8
253 Narzędzia testowe oraz do mierzenia wydajności dla Ceph.
255 %package -n fio-ceph-objectstore
256 Summary: FIO engine module for Ceph ObjectStore
257 Summary(pl.UTF-8): Moduł silnika FIO do używania Ceph ObjectStore
259 Requires: %{name}-libs = %{version}-%{release}
261 %requires_ge_to fio fio-devel
264 %description -n fio-ceph-objectstore
265 This FIO engine allows you to mount and use a ceph object store
266 directly, without having to build a ceph cluster or start any daemons.
268 %description -n fio-ceph-objectstore -l pl.UTF-8
269 Ten silnik FIO pozwala na bezpośrednie montowanie i używanie
270 przestrzeni obiektów ceph, bez potrzeby budowania klastra ceph czy
271 uruchamiania demonów.
289 %{__sed} -E -i -e '1s,#!\s*/usr/bin/awk(\s|$),#!/bin/awk\1,' \
290 src/rgw/rgw-gap-list-comparator
296 %ifarch %{x8664} %{ix86} x32
300 -DHAVE_INTEL_SSE2=1 \
301 -DHAVE_INTEL_SSE3=1 \
302 -DHAVE_INTEL_SSSE3=1 \
303 -DHAVE_INTEL_PCLMUL=1 \
304 -DHAVE_INTEL_SSE4_1=1 \
305 -DHAVE_INTEL_SSE4_2=1 \
307 -DALLOCATOR="%{?with_tcmalloc:tcmalloc}%{!?with_tcmalloc:libc}" \
308 -DFIO_INCLUDE_DIR=/usr/include/fio \
309 -DWITH_PYTHON3=%{py3_ver} \
310 -DPYTHON=%{__python3} \
311 -DSPHINX_BUILD=/usr/bin/sphinx-build \
312 %{!?with_babeltrace:-DWITH_BABELTRACE=OFF} \
313 %{?with_java:-DWITH_CEPHFS_JAVA=ON} \
314 %{?with_java:-DJAVA_JVM_LIBRARY:PATH=%{_jvmdir}/java/lib/server/libjvm.so} \
315 %{?with_dpdk:-DWITH_DPDK=ON} \
316 %{?with_fio:-DWITH_FIO=ON} \
317 %{!?with_lttng:-DWITH_LTTNG=OFF} \
318 -DLUA_INCLUDE_DIR=%{_includedir}/lua \
320 %{?with_cryptopp:-DWITH_NSS=OFF} \
322 %{?with_pmem:-DWITH_PMEM=ON} \
323 %{?with_fcgi:-DWITH_RADOSGW_FCGI_FRONTEND=ON} \
324 -DWITH_MGR_DASHBOARD_FRONTEND=OFF \
325 %{?with_spdk:-DWITH_SPDK=ON} \
326 -DWITH_SYSTEM_BOOST=ON \
327 %{?with_system_rocksdb:-DWITH_SYSTEM_ROCKSDB=ON} \
329 %{?with_accelio:-DWITH_XIO=ON} \
330 %{?with_zfs:-DWITH_ZFS=ON} \
331 -DWITH_REENTRANT_STRSIGNAL=ON \
332 %{!?with_tests:-DWITH_TESTS=OFF}
337 rm -rf $RPM_BUILD_ROOT
338 install -d $RPM_BUILD_ROOT%{_localstatedir}/{lib/ceph/{tmp,mon,osd,mds,mgr,radosgw,bootstrap-{osd,mds,rgw,mgr,rbd}},log/ceph/stat,run/ceph} \
339 $RPM_BUILD_ROOT%{_sysconfdir}/{ceph,bash_completion.d,logrotate.d,rc.d,sysconfig} \
340 $RPM_BUILD_ROOT{%{systemdunitdir},%{systemdtmpfilesdir},/etc/systemd/system/ceph.target.wants,/sbin}
342 %{__make} -C build install \
343 DESTDIR=$RPM_BUILD_ROOT
345 # sanitize paths; no config options for cmake
346 %{__mv} $RPM_BUILD_ROOT/etc/init.d $RPM_BUILD_ROOT/etc/rc.d
347 %{__mv} $RPM_BUILD_ROOT%{_libexecdir}/systemd/system/* $RPM_BUILD_ROOT%{systemdunitdir}
348 %{__mv} $RPM_BUILD_ROOT%{_sbindir}/mount.* $RPM_BUILD_ROOT/sbin
350 cp -p src/logrotate.conf $RPM_BUILD_ROOT%{_sysconfdir}/logrotate.d/ceph
352 cp -p %{SOURCE1} $RPM_BUILD_ROOT/etc/sysconfig/ceph
353 ln -sf /dev/null $RPM_BUILD_ROOT%{systemdunitdir}/ceph.service
354 cp -p %{SOURCE3} $RPM_BUILD_ROOT%{systemdtmpfilesdir}/ceph.conf
356 %py3_comp $RPM_BUILD_ROOT%{py3_sitescriptdir}
357 %py3_ocomp $RPM_BUILD_ROOT%{py3_sitescriptdir}
360 %{__rm} $RPM_BUILD_ROOT%{_docdir}/sample.ceph.conf
362 %{__sed} -E -i -e '1s,#!\s*/usr/bin/env\s+bash(\s|$),#!/bin/bash\1,' \
363 $RPM_BUILD_ROOT%{_bindir}/{ceph-post-file,rbd-replay-many,rbdmap,rgw-gap-list,rgw-orphan-list}
366 rm -rf $RPM_BUILD_ROOT
369 /sbin/chkconfig --add ceph
370 %service ceph restart
372 # actual services are to be enabled on cluster deployment
373 %systemd_post %{name}.target
376 if [ "$1" = "0" ] ; then
378 /sbin/chkconfig --del ceph
380 %systemd_preun %{name}.target
385 %post libs -p /sbin/ldconfig
386 %postun libs -p /sbin/ldconfig
388 %post -n java-cephfs -p /sbin/ldconfig
389 %postun -n java-cephfs -p /sbin/ldconfig
392 %defattr(644,root,root,755)
393 # COPYING specifies licenses of individual parts
394 %doc AUTHORS COPYING PendingReleaseNotes README.md src/sample.ceph.conf
395 %attr(754,root,root) /etc/rc.d/init.d/ceph
396 %config(noreplace) /etc/sysconfig/ceph
397 %dir /etc/systemd/system/ceph.target.wants
398 %{systemdunitdir}/ceph.service
399 %{systemdunitdir}/ceph.target
400 %{systemdunitdir}/ceph-crash.service
401 %{systemdunitdir}/cephfs-mirror.target
402 %{systemdunitdir}/cephfs-mirror@.service
403 %{systemdunitdir}/ceph-fuse.target
404 %{systemdunitdir}/ceph-fuse@.service
405 %{systemdunitdir}/ceph-immutable-object-cache.target
406 %{systemdunitdir}/ceph-immutable-object-cache@.service
407 %{systemdunitdir}/ceph-mds.target
408 %{systemdunitdir}/ceph-mds@.service
409 %{systemdunitdir}/ceph-mgr.target
410 %{systemdunitdir}/ceph-mgr@.service
411 %{systemdunitdir}/ceph-mon.target
412 %{systemdunitdir}/ceph-mon@.service
413 %{systemdunitdir}/ceph-osd.target
414 %{systemdunitdir}/ceph-osd@.service
415 %{systemdunitdir}/ceph-rbd-mirror.target
416 %{systemdunitdir}/ceph-rbd-mirror@.service
417 %{systemdunitdir}/ceph-volume@.service
418 %{systemdunitdir}/rbdmap.service
419 %{systemdtmpfilesdir}/ceph.conf
420 %dir %{_sysconfdir}/ceph
421 %attr(755,root,root) %{_bindir}/ceph
422 %attr(755,root,root) %{_bindir}/ceph-authtool
423 %attr(755,root,root) %{_bindir}/ceph-bluestore-tool
424 %attr(755,root,root) %{_bindir}/ceph-clsinfo
425 %attr(755,root,root) %{_bindir}/ceph-conf
426 %attr(755,root,root) %{_bindir}/ceph-crash
427 %attr(755,root,root) %{_bindir}/ceph-dencoder
428 %attr(755,root,root) %{_bindir}/ceph-diff-sorted
429 %attr(755,root,root) %{_bindir}/ceph-erasure-code-tool
430 %attr(755,root,root) %{_bindir}/cephfs-data-scan
431 %attr(755,root,root) %{_bindir}/cephfs-journal-tool
432 %attr(755,root,root) %{_bindir}/cephfs-mirror
433 %attr(755,root,root) %{_bindir}/cephfs-table-tool
434 %attr(755,root,root) %{_bindir}/cephfs-top
435 %attr(755,root,root) %{_bindir}/ceph-immutable-object-cache
436 %attr(755,root,root) %{_bindir}/ceph-kvstore-tool
437 %attr(755,root,root) %{_bindir}/ceph-mds
438 %attr(755,root,root) %{_bindir}/ceph-mgr
439 %attr(755,root,root) %{_bindir}/ceph-mon
440 %attr(755,root,root) %{_bindir}/ceph-monstore-tool
441 %attr(755,root,root) %{_bindir}/ceph-objectstore-tool
442 %attr(755,root,root) %{_bindir}/ceph-osd
443 %attr(755,root,root) %{_bindir}/ceph-osdomap-tool
444 %attr(755,root,root) %{_bindir}/ceph-post-file
445 %attr(755,root,root) %{_bindir}/ceph-rbdnamer
446 %attr(755,root,root) %{_bindir}/ceph-run
447 %attr(755,root,root) %{_bindir}/ceph-syn
448 %attr(755,root,root) %{_bindir}/crushtool
449 %attr(755,root,root) %{_bindir}/librados-config
450 %attr(755,root,root) %{_bindir}/monmaptool
451 %attr(755,root,root) %{_bindir}/osdmaptool
452 %attr(755,root,root) %{_bindir}/rados
453 %attr(755,root,root) %{_bindir}/rbd
454 %attr(755,root,root) %{_bindir}/rbd-fuse
455 %attr(755,root,root) %{_bindir}/rbdmap
456 %attr(755,root,root) %{_bindir}/rbd-mirror
457 %attr(755,root,root) %{_bindir}/rbd-nbd
458 %attr(755,root,root) %{_bindir}/rbd-replay
459 %attr(755,root,root) %{_bindir}/rbd-replay-many
460 %attr(755,root,root) %{_bindir}/rbd-replay-prep
461 %attr(755,root,root) %{_bindir}/rgw-gap-list
462 %attr(755,root,root) %{_bindir}/rgw-gap-list-comparator
463 %attr(755,root,root) %{_bindir}/rgw-orphan-list
464 %attr(755,root,root) %{_sbindir}/ceph-create-keys
465 %attr(755,root,root) %{_sbindir}/ceph-volume
466 %attr(755,root,root) %{_sbindir}/ceph-volume-systemd
467 %attr(755,root,root) /sbin/mount.ceph
468 %attr(755,root,root) /sbin/mount.fuse.ceph
469 %if "%{_libexecdir}" != "%{_libdir}"
470 %dir %{_libexecdir}/ceph
472 %{_libexecdir}/ceph/ceph_common.sh
473 %attr(755,root,root) %{_libexecdir}/ceph/ceph-osd-prestart.sh
474 %dir %{_libdir}/ceph/compressor
475 %attr(755,root,root) %{_libdir}/ceph/compressor/libceph_lz4.so*
476 %attr(755,root,root) %{_libdir}/ceph/compressor/libceph_snappy.so*
477 %attr(755,root,root) %{_libdir}/ceph/compressor/libceph_zlib.so*
478 %attr(755,root,root) %{_libdir}/ceph/compressor/libceph_zstd.so*
479 %dir %{_libdir}/ceph/crypto
480 %attr(755,root,root) %{_libdir}/ceph/crypto/libceph_crypto_openssl.so*
482 %attr(755,root,root) %{_libdir}/ceph/crypto/libceph_crypto_isal.so*
484 %dir %{_libdir}/ceph/erasure-code
485 %attr(755,root,root) %{_libdir}/ceph/erasure-code/libec_clay.so*
487 %attr(755,root,root) %{_libdir}/ceph/erasure-code/libec_isa.so*
489 %attr(755,root,root) %{_libdir}/ceph/erasure-code/libec_jerasure.so*
490 %attr(755,root,root) %{_libdir}/ceph/erasure-code/libec_jerasure_generic.so*
492 %attr(755,root,root) %{_libdir}/ceph/erasure-code/libec_jerasure_neon.so*
494 %ifarch %{ix86} %{x8664} x32
495 %attr(755,root,root) %{_libdir}/ceph/erasure-code/libec_jerasure_sse3.so*
496 %attr(755,root,root) %{_libdir}/ceph/erasure-code/libec_jerasure_sse4.so*
497 %attr(755,root,root) %{_libdir}/ceph/erasure-code/libec_shec_sse3.so*
498 %attr(755,root,root) %{_libdir}/ceph/erasure-code/libec_shec_sse4.so*
500 %attr(755,root,root) %{_libdir}/ceph/erasure-code/libec_lrc.so*
501 %attr(755,root,root) %{_libdir}/ceph/erasure-code/libec_shec.so*
502 %attr(755,root,root) %{_libdir}/ceph/erasure-code/libec_shec_generic.so*
503 %dir %{_libdir}/ceph/librbd
504 %attr(755,root,root) %{_libdir}/ceph/librbd/libceph_librbd_parent_cache.so*
505 %dir %{_libdir}/rados-classes
506 %attr(755,root,root) %{_libdir}/rados-classes/libcls_2pc_queue.so*
507 %attr(755,root,root) %{_libdir}/rados-classes/libcls_cas.so*
508 %attr(755,root,root) %{_libdir}/rados-classes/libcls_cephfs.so*
509 %attr(755,root,root) %{_libdir}/rados-classes/libcls_cmpomap.so*
510 %attr(755,root,root) %{_libdir}/rados-classes/libcls_fifo.so*
511 %attr(755,root,root) %{_libdir}/rados-classes/libcls_hello.so*
512 %attr(755,root,root) %{_libdir}/rados-classes/libcls_journal.so*
513 %attr(755,root,root) %{_libdir}/rados-classes/libcls_kvs.so*
514 %attr(755,root,root) %{_libdir}/rados-classes/libcls_lock.so*
515 %attr(755,root,root) %{_libdir}/rados-classes/libcls_log.so*
516 %attr(755,root,root) %{_libdir}/rados-classes/libcls_lua.so*
517 %attr(755,root,root) %{_libdir}/rados-classes/libcls_numops.so*
518 %attr(755,root,root) %{_libdir}/rados-classes/libcls_otp.so*
519 %attr(755,root,root) %{_libdir}/rados-classes/libcls_queue.so*
520 %attr(755,root,root) %{_libdir}/rados-classes/libcls_rbd.so*
521 %attr(755,root,root) %{_libdir}/rados-classes/libcls_refcount.so*
522 %attr(755,root,root) %{_libdir}/rados-classes/libcls_rgw_gc.so*
523 %attr(755,root,root) %{_libdir}/rados-classes/libcls_rgw.so*
524 %attr(755,root,root) %{_libdir}/rados-classes/libcls_sdk.so*
525 %attr(755,root,root) %{_libdir}/rados-classes/libcls_timeindex.so*
526 %attr(755,root,root) %{_libdir}/rados-classes/libcls_user.so*
527 %attr(755,root,root) %{_libdir}/rados-classes/libcls_version.so*
529 %config(noreplace) /etc/logrotate.d/ceph
530 %config(noreplace) %{_sysconfdir}/bash_completion.d/rados
531 %config(noreplace) %{_sysconfdir}/bash_completion.d/ceph
532 %config(noreplace) %{_sysconfdir}/bash_completion.d/rbd
533 %{_mandir}/man8/ceph.8*
534 %{_mandir}/man8/cephadm.8*
535 %{_mandir}/man8/ceph-authtool.8*
536 %{_mandir}/man8/ceph-bluestore-tool.8*
537 %{_mandir}/man8/ceph-clsinfo.8*
538 %{_mandir}/man8/ceph-conf.8*
539 %{_mandir}/man8/ceph-create-keys.8*
540 %{_mandir}/man8/ceph-dencoder.8*
541 %{_mandir}/man8/ceph-deploy.8*
542 %{_mandir}/man8/ceph-diff-sorted.8*
543 %{_mandir}/man8/cephfs-mirror.8*
544 %{_mandir}/man8/cephfs-top.8*
545 %{_mandir}/man8/ceph-immutable-object-cache.8*
546 %{_mandir}/man8/ceph-kvstore-tool.8*
547 %{_mandir}/man8/ceph-mds.8*
548 %{_mandir}/man8/ceph-mon.8*
549 %{_mandir}/man8/ceph-osd.8*
550 %{_mandir}/man8/ceph-post-file.8*
551 %{_mandir}/man8/ceph-rbdnamer.8*
552 %{_mandir}/man8/ceph-run.8*
553 %{_mandir}/man8/ceph-syn.8*
554 %{_mandir}/man8/ceph-volume.8*
555 %{_mandir}/man8/ceph-volume-systemd.8*
556 %{_mandir}/man8/crushtool.8*
557 %{_mandir}/man8/librados-config.8*
558 %{_mandir}/man8/monmaptool.8*
559 %{_mandir}/man8/mount.ceph.8*
560 %{_mandir}/man8/mount.fuse.ceph.8*
561 %{_mandir}/man8/osdmaptool.8*
562 %{_mandir}/man8/rados.8*
563 %{_mandir}/man8/rbd.8*
564 %{_mandir}/man8/rbd-fuse.8*
565 %{_mandir}/man8/rbdmap.8*
566 %{_mandir}/man8/rbd-mirror.8*
567 %{_mandir}/man8/rbd-nbd.8*
568 %{_mandir}/man8/rbd-replay.8*
569 %{_mandir}/man8/rbd-replay-many.8*
570 %{_mandir}/man8/rbd-replay-prep.8*
571 %{_mandir}/man8/rgw-orphan-list.8*
573 %dir %{_localstatedir}/lib/ceph
574 %dir %{_localstatedir}/lib/ceph/bootstrap-mds
575 %dir %{_localstatedir}/lib/ceph/bootstrap-mgr
576 %dir %{_localstatedir}/lib/ceph/bootstrap-osd
577 %dir %{_localstatedir}/lib/ceph/bootstrap-rbd
578 %dir %{_localstatedir}/lib/ceph/bootstrap-rgw
579 %dir %{_localstatedir}/lib/ceph/mds
580 %dir %{_localstatedir}/lib/ceph/mgr
581 %dir %{_localstatedir}/lib/ceph/mon
582 %dir %{_localstatedir}/lib/ceph/osd
583 %dir %{_localstatedir}/lib/ceph/tmp
584 %dir %{_localstatedir}/log/ceph
585 %dir %{_localstatedir}/run/ceph
588 %defattr(644,root,root,755)
589 %attr(755,root,root) %{_libdir}/libcephfs.so.*.*.*
590 %attr(755,root,root) %ghost %{_libdir}/libcephfs.so.2
591 %attr(755,root,root) %{_libdir}/libos_tp.so.*.*.*
592 %attr(755,root,root) %ghost %{_libdir}/libos_tp.so.1
593 %attr(755,root,root) %{_libdir}/libosd_tp.so.*.*.*
594 %attr(755,root,root) %ghost %{_libdir}/libosd_tp.so.1
595 %attr(755,root,root) %{_libdir}/librados.so.*.*.*
596 %attr(755,root,root) %ghost %{_libdir}/librados.so.2
597 %attr(755,root,root) %{_libdir}/librados_tp.so.*.*.*
598 %attr(755,root,root) %ghost %{_libdir}/librados_tp.so.2
599 %attr(755,root,root) %{_libdir}/libradosgw.so.*.*.*
600 %attr(755,root,root) %ghost %{_libdir}/libradosgw.so.2
601 %attr(755,root,root) %{_libdir}/libradosstriper.so.*.*.*
602 %attr(755,root,root) %ghost %{_libdir}/libradosstriper.so.1
603 %attr(755,root,root) %{_libdir}/librbd.so.*.*.*
604 %attr(755,root,root) %ghost %{_libdir}/librbd.so.1
605 %attr(755,root,root) %{_libdir}/librbd_tp.so.*.*.*
606 %attr(755,root,root) %ghost %{_libdir}/librbd_tp.so.1
607 %attr(755,root,root) %{_libdir}/librgw.so.*.*.*
608 %attr(755,root,root) %ghost %{_libdir}/librgw.so.2
609 %attr(755,root,root) %{_libdir}/librgw_op_tp.so.*.*.*
610 %attr(755,root,root) %ghost %{_libdir}/librgw_op_tp.so.2
611 %attr(755,root,root) %{_libdir}/librgw_rados_tp.so.*.*.*
612 %attr(755,root,root) %ghost %{_libdir}/librgw_rados_tp.so.2
613 %attr(755,root,root) %{_libdir}/libcephsqlite.so
615 %attr(755,root,root) %{_libdir}/ceph/libceph-common.so.2
618 %defattr(644,root,root,755)
619 %attr(755,root,root) %{_libdir}/libcephfs.so
620 %attr(755,root,root) %{_libdir}/libos_tp.so
621 %attr(755,root,root) %{_libdir}/libosd_tp.so
622 %attr(755,root,root) %{_libdir}/librados.so
623 %attr(755,root,root) %{_libdir}/librados_tp.so
624 %attr(755,root,root) %{_libdir}/libradosgw.so
625 %attr(755,root,root) %{_libdir}/libradosstriper.so
626 %attr(755,root,root) %{_libdir}/librbd.so
627 %attr(755,root,root) %{_libdir}/librbd_tp.so
628 %attr(755,root,root) %{_libdir}/librgw.so
629 %attr(755,root,root) %{_libdir}/librgw_op_tp.so
630 %attr(755,root,root) %{_libdir}/librgw_rados_tp.so
631 %{_includedir}/cephfs
633 %{_includedir}/radosstriper
635 %{_includedir}/libcephsqlite.h
637 %files -n python3-ceph
638 %defattr(644,root,root,755)
640 %{py3_sitedir}/ceph-1.0.0-py*.egg-info
641 %attr(755,root,root) %{py3_sitedir}/cephfs.cpython-*.so
642 %{py3_sitedir}/cephfs-2.0.0-py*.egg-info
643 %{py3_sitedir}/cephfs_top-0.0.1-py*.egg-info
644 %{py3_sitedir}/ceph_volume
645 %{py3_sitedir}/ceph_volume-1.0.0-py*.egg-info
646 %attr(755,root,root) %{py3_sitedir}/rados.cpython-*.so
647 %{py3_sitedir}/rados-2.0.0-py*.egg-info
648 %attr(755,root,root) %{py3_sitedir}/rbd.cpython-*.so
649 %{py3_sitedir}/rbd-2.0.0-py*.egg-info
650 %attr(755,root,root) %{py3_sitedir}/rgw.cpython-*.so
651 %{py3_sitedir}/rgw-2.0.0-py*.egg-info
652 %{py3_sitescriptdir}/ceph_argparse.py
653 %{py3_sitescriptdir}/ceph_daemon.py
654 %{py3_sitescriptdir}/ceph_volume_client.py
655 %{py3_sitescriptdir}/__pycache__/ceph_argparse.cpython-*.py[co]
656 %{py3_sitescriptdir}/__pycache__/ceph_daemon.cpython-*.py[co]
657 %{py3_sitescriptdir}/__pycache__/ceph_volume_client.cpython-*.py[co]
659 %exclude %{py3_sitedir}/ceph/tests
660 %exclude %{py3_sitedir}/ceph_volume/tests
664 %files -n java-cephfs
665 %defattr(644,root,root,755)
666 %attr(755,root,root) %{_libdir}/libcephfs_jni.so.*.*.*
667 %attr(755,root,root) %ghost %{_libdir}/libcephfs_jni.so.1
668 %attr(755,root,root) %{_libdir}/libcephfs_jni.so
669 %{_javadir}/libcephfs.jar
673 %defattr(644,root,root,755)
674 %attr(755,root,root) %{_bindir}/ceph-fuse
675 %{_mandir}/man8/ceph-fuse.8*
678 %defattr(644,root,root,755)
679 %attr(755,root,root) %{_bindir}/radosgw
680 %attr(755,root,root) %{_bindir}/radosgw-admin
681 %attr(755,root,root) %{_bindir}/radosgw-es
682 %attr(755,root,root) %{_bindir}/radosgw-object-expirer
683 %attr(755,root,root) %{_bindir}/radosgw-token
684 %{systemdunitdir}/ceph-radosgw.target
685 %{systemdunitdir}/ceph-radosgw@.service
686 %{_sysconfdir}/bash_completion.d/radosgw-admin
687 %dir %{_localstatedir}/lib/ceph/radosgw
688 %{_mandir}/man8/radosgw.8*
689 %{_mandir}/man8/radosgw-admin.8*
691 %files resource-agents
692 %defattr(644,root,root,755)
693 %dir %{_prefix}/lib/ocf/resource.d/ceph
694 %attr(755,root,root) %{_prefix}/lib/ocf/resource.d/ceph/rbd
698 %defattr(644,root,root,755)
699 %attr(755,root,root) %{_bindir}/ceph-client-debug
700 %attr(755,root,root) %{_bindir}/ceph-coverage
701 %attr(755,root,root) %{_bindir}/ceph-debugpack
702 %attr(755,root,root) %{_bindir}/ceph-kvstore-tool
703 %attr(755,root,root) %{_bindir}/ceph-monstore-tool
704 %attr(755,root,root) %{_bindir}/ceph-osdomap-tool
705 %attr(755,root,root) %{_bindir}/ceph_bench_log
706 %attr(755,root,root) %{_bindir}/ceph_erasure_code
707 %attr(755,root,root) %{_bindir}/ceph_erasure_code_benchmark
708 %attr(755,root,root) %{_bindir}/ceph_kvstorebench
709 %attr(755,root,root) %{_bindir}/ceph_multi_stress_watch
710 %attr(755,root,root) %{_bindir}/ceph_objectstore_bench
711 %attr(755,root,root) %{_bindir}/ceph_omapbench
712 %attr(755,root,root) %{_bindir}/ceph_perf_local
713 %attr(755,root,root) %{_bindir}/ceph_perf_msgr_client
714 %attr(755,root,root) %{_bindir}/ceph_perf_msgr_server
715 %attr(755,root,root) %{_bindir}/ceph_perf_objectstore
716 %attr(755,root,root) %{_bindir}/ceph_psim
717 %attr(755,root,root) %{_bindir}/ceph_radosacl
718 %attr(755,root,root) %{_bindir}/ceph_rgw_jsonparser
719 %attr(755,root,root) %{_bindir}/ceph_rgw_multiparser
720 %attr(755,root,root) %{_bindir}/ceph_scratchtool
721 %attr(755,root,root) %{_bindir}/ceph_scratchtoolpp
722 %attr(755,root,root) %{_bindir}/ceph_smalliobench
723 %attr(755,root,root) %{_bindir}/ceph_smalliobenchdumb
724 %attr(755,root,root) %{_bindir}/ceph_smalliobenchfs
725 %attr(755,root,root) %{_bindir}/ceph_smalliobenchrbd
726 %attr(755,root,root) %{_bindir}/ceph_test_*
727 %attr(755,root,root) %{_bindir}/ceph_tpbench
728 %attr(755,root,root) %{_bindir}/ceph_xattr_bench
729 %attr(755,root,root) %{_libdir}/ceph/ceph-monstore-update-crush.sh
730 %{_mandir}/man8/ceph-debugpack.8*
731 %{_mandir}/man8/ceph-kvstore-tool.8*
735 %files -n fio-ceph-objectstore
736 %defattr(644,root,root,755)
737 %doc src/test/fio/{README.md,ceph-*.conf,ceph-*.fio}
738 %attr(755,root,root) %{_libdir}/libfio_ceph_objectstore.so