MooseFS rpm Spec File

Name:           mfs
Version:        1.6.27
Release:        1%{?dist}
Summary:       	mfs
Group:          Applications/System  
 
License:        GPL
URL:            http://xxxxx.com/ 
BuildRoot:      %{_buildrootdir}/%{name}-%{version}-%{release}-XXXXXX)
 
BuildRequires:      fuse-devel = 2.7.4,fuse = 2.7.4
Requires:           fuse = 2.7.4
 
Provides:           mfs
Source0:    %{name}-%{version}-5.tar.gz
 
%description
Mfs 
 
%package master
Summary:	MooseFS master server
Group:		System Environment/Daemons
 
%description master
MooseFS master (metadata) server together with metarestore utility.
 
%package metalogger
Summary:	MooseFS metalogger server
Group:		System Environment/Daemons
 
%description metalogger
MooseFS metalogger (metadata replication) server.
 
%package chunkserver
Summary:	MooseFS data server
Group:		System Environment/Daemons
 
%description chunkserver
MooseFS data server
 
%package cgi
Summary:	MooseFS CGI Monitor
Group:		System Environment/Daemons
Requires:	python
 
%description cgi
MooseFS CGI Monitor.
 
%package cgiserv
Summary:	Simple CGI-capable HTTP server to run MooseFS CGI Monitor
Group:		System Environment/Daemons
Requires:	%{name}-cgi = %{version}-%{release}
 
%description cgiserv
Simple CGI-capable HTTP server to run MooseFS CGI Monitor.
 
 
%prep
%setup -q
 
%build
export DESTDIR=%{buildroot}
./configure --prefix=/usr  --sysconfdir=/etc --with-default-user=mfs --with-default-group=mfs --enable-mfsmount
make %{?_smp_mflags}
 
%install
rm -rf %{buildroot}
make install DESTDIR=%{buildroot}
%{__install} -p -d -m 0755 %{buildroot}/etc/rc.d/init.d
for i in `ls rpm/rh/`;do
	cp -avf rpm/rh/$i %{buildroot}/etc/rc.d/init.d/`echo $i|awk -F. '{print $1}'`
	sed -i 's/@initddir@/\/etc\/init.d/g' %{buildroot}/etc/rc.d/init.d/`echo $i|awk -F. '{print $1}'`
	sed -i 's/@sbindir@/\/usr\/sbin/g' %{buildroot}/etc/rc.d/init.d/`echo $i|awk -F. '{print $1}'`
	sed -i 's/@sysconfdir@/\/etc/g' %{buildroot}/etc/rc.d/init.d/`echo $i|awk -F. '{print $1}'`
done
for f in `ls %{buildroot}/etc/mfs/`;do
	mv %{buildroot}/etc/mfs/$f %{buildroot}/etc/mfs/`echo $f |sed 's/.dist//'`
done
cp -avf %{buildroot}/usr/var/mfs/metadata.mfs.empty %{buildroot}/usr/var/mfs/metadata.mfs
%clean
rm -rf %{buildroot}
 
%pre
if [ $1 == 1 ]; then
    if ! id %{name} &>/dev/null;then
	/usr/sbin/useradd -s /sbin/nologin %{name} 2>/dev/null
	fi
fi
 
%pre cgi
if [ $1 == 1 ]; then
    if ! id %{name} &>/dev/null;then
	/usr/sbin/useradd -s /sbin/nologin %{name} 2>/dev/null
	fi
fi
 
%pre master
if [ $1 == 1 ]; then
    if ! id %{name} &>/dev/null;then
	/usr/sbin/useradd -s /sbin/nologin %{name} 2>/dev/null
	fi
fi
 
%post master
if [ $1 == 1 ]; then
    /sbin/chkconfig --add %{name}master
    /sbin/chkconfig %{name}master on
fi
 
%preun master
if [ $1 = 0 ]; then
    /sbin/service %{name}master stop >/dev/null 2>&1
    /sbin/chkconfig --del %{name}master
fi
 
%pre metalogger
if [ $1 == 1 ]; then
    if ! id %{name} &>/dev/null;then
	/usr/sbin/useradd -s /sbin/nologin %{name} 2>/dev/null
	fi
fi
 
%post metalogger
if [ $1 == 1 ]; then
    /sbin/chkconfig --add %{name}metalogger
    /sbin/chkconfig %{name}metalogger on
fi
 
%preun metalogger
if [ $1 = 0 ]; then
    /sbin/service %{name}metalogger stop >/dev/null 2>&1
    /sbin/chkconfig --del %{name}metalogger
fi
 
 
%pre chunkserver
if [ $1 == 1 ]; then
    if ! id %{name} &>/dev/null;then
	/usr/sbin/useradd -s /sbin/nologin %{name} 2>/dev/null
	fi
fi
 
%post chunkserver
if [ $1 == 1 ]; then
    /sbin/chkconfig --add %{name}chunkserver
    /sbin/chkconfig %{name}chunkserver on
fi
 
%preun chunkserver
if [ $1 = 0 ]; then
    /sbin/service %{name}chunkserver stop >/dev/null 2>&1
    /sbin/chkconfig --del %{name}chunkserver   
fi
 
%pre cgiserv
if [ $1 == 1 ]; then
    if ! id %{name} &>/dev/null;then
	/usr/sbin/useradd -s /sbin/nologin %{name} 2>/dev/null
	fi
fi
 
%post cgiserv
if [ $1 == 1 ]; then
    /sbin/chkconfig --add %{name}cgiserv
    /sbin/chkconfig %{name}cgiserv on
fi
 
%preun cgiserv
if [ $1 = 0 ]; then
    /sbin/service %{name}cgiserv stop >/dev/null 2>&1
    /sbin/chkconfig --del %{name}cgiserv
fi
 
 
%files
%defattr(644,root,root,755)
%doc NEWS README UPGRADE
%config(noreplace) /etc/mfs/mfsmount.cfg
%attr(755,root,root) %{_bindir}/mfsappendchunks
%attr(755,root,root) %{_bindir}/mfscheckfile
%attr(755,root,root) %{_bindir}/mfsdeleattr
%attr(755,root,root) %{_bindir}/mfsdirinfo
%attr(755,root,root) %{_bindir}/mfsfileinfo
%attr(755,root,root) %{_bindir}/mfsfilerepair
%attr(755,root,root) %{_bindir}/mfsgeteattr
%attr(755,root,root) %{_bindir}/mfsgetgoal
%attr(755,root,root) %{_bindir}/mfsgettrashtime
%attr(755,root,root) %{_bindir}/mfsmakesnapshot
%attr(755,root,root) %{_bindir}/mfsmount
%attr(755,root,root) %{_bindir}/mfsrgetgoal
%attr(755,root,root) %{_bindir}/mfsrgettrashtime
%attr(755,root,root) %{_bindir}/mfsrsetgoal
%attr(755,root,root) %{_bindir}/mfsrsettrashtime
%attr(755,root,root) %{_bindir}/mfsseteattr
%attr(755,root,root) %{_bindir}/mfssetgoal
%attr(755,root,root) %{_bindir}/mfssettrashtime
%attr(755,root,root) %{_bindir}/mfssnapshot
%attr(755,root,root) %{_bindir}/mfstools
%{_mandir}/man1/*.1*
%{_mandir}/man7/mfs.7*
%{_mandir}/man7/moosefs.7*
%{_mandir}/man8/mfsmount.8*
 
 
%files master
%defattr(644,root,root,755)
%doc NEWS README UPGRADE
%attr(754,root,root) %{_initrddir}/mfsmaster
%attr(755,root,root) %{_sbindir}/mfsmaster
%attr(755,root,root) %{_sbindir}/mfsmetadump
%attr(755,root,root) %{_sbindir}/mfsmetarestore
%attr(755,mfs,mfs) /usr/var/mfs
%{_mandir}/man5/mfsexports.cfg.5*
%{_mandir}/man5/mfstopology.cfg.5*
%{_mandir}/man5/mfsmaster.cfg.5*
%{_mandir}/man7/mfs.7*
%{_mandir}/man7/moosefs.7*
%{_mandir}/man8/mfsmaster.8*
%{_mandir}/man8/mfsmetarestore.8*
%config(noreplace) /etc/mfs/mfsexports.cfg
%config(noreplace) /etc/mfs/mfstopology.cfg
%config(noreplace) /etc/mfs/mfsmaster.cfg
 
 
%files metalogger
%defattr(644,root,root,755)
%doc NEWS README UPGRADE
%attr(754,root,root) %{_initrddir}/mfsmetalogger
%attr(755,root,root) %{_sbindir}/mfsmetalogger
%attr(755,mfs,mfs) /usr/var/mfs
%{_mandir}/man5/mfsmetalogger.cfg.5*
%{_mandir}/man8/mfsmetalogger.8*
%config(noreplace) /etc/mfs/mfsmetalogger.cfg
 
%files chunkserver
%defattr(644,root,root,755)
%doc NEWS README UPGRADE
%attr(754,root,root) %{_initrddir}/mfschunkserver
%attr(755,root,root) %{_sbindir}/mfschunkserver
%attr(755,mfs,mfs) /usr/var/mfs
%{_mandir}/man5/mfschunkserver.cfg.5*
%{_mandir}/man5/mfshdd.cfg.5*
%{_mandir}/man8/mfschunkserver.8*
%config(noreplace) /etc/mfs/mfschunkserver.cfg
%config(noreplace) /etc/mfs/mfshdd.cfg
 
%files cgi
%defattr(644,root,root,755)
%doc NEWS README UPGRADE
%{_datadir}/mfscgi
 
%files cgiserv
%defattr(644,root,root,755)
%attr(754,root,root) %{_initrddir}/mfscgiserv
%attr(755,root,root) %{_sbindir}/mfscgiserv
%{_mandir}/man8/mfscgiserv.8*
 
 
%changelog
*  Tue Mar 11 2014 andy_f <[email protected]> - 1.6.27-1
- init


你可能感兴趣的:(rpm,MFS,mfs-spec)