ジオサーバー用のいくつかのマップファイルを内部rpmパッケージにパックしようとしています。ビルド部分の場合、これはファイルをコピーするためだけのものです。これは期待どおりに機能すると思います。しかし、これらの20GBの画像をパックするには非常に長い時間がかかります。
rpmがデータを内部的に圧縮し、これはいくつかの異なる圧縮アルゴリズムで実行できることを読みました。しかし、rpmがどの圧縮を選択し、これにどのように影響を与えることができるかについての手がかりはありません。rpmbuildコマンド、specfile、またはリストできる一般的なrpmオプションのオプションが見つかりませんでしたrpmbuild --showrc
私はrpmbuildとspecfilesの経験はあまりありませんが、rpm.orgの多くのマニュアルページとチュートリアルを読んだ後、それ以上のアイデアはありません。
私が使用するspecfileは次のようになります。
%define debug_package %{nil}
%global mapsversion 0.9
# If this is a snapshot, put the date here and uncomment
#global snapshot_version 20100519
# This is the version in a form acceptable
# an an RPM version string (i.e. no '-')
# Hier werden die Makros definiert.
%global rpmversion %(echo %{mapsversion} | tr '-' '_')
%global pkgversion %{mapsversion}%{?snapshot_version:-SNAPSHOT}
%global pkgname %{name}
Name: geoserver-maps-part2
Version: %{rpmversion}
Release: 1%{?dist}
Summary: Swiss Maps for GeoServer
Group: Application/ourApp
License: Copyright (c) 2011
URL: http://doc.polyalert.local
#Source0: %{name}-%{version}.tgz
BuildArch: noarch
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
Requires: geoserver
%define mapshome /opt/geoserver/swisstopo
%define mapssource /home/user/polyalert_env/geoserver/swisstopo
%description
Swiss Maps for GeoServer
%prep
%build
/bin/true
%install
rm -rf $RPM_BUILD_ROOT
mkdir -p $RPM_BUILD_ROOT%{mapshome}
cp -a %{mapssource}/pk100 $RPM_BUILD_ROOT%{mapshome}
%clean
rm -rf $RPM_BUILD_ROOT
%pre
%post
%preun
%files
%{mapshome}/pk100
%changelog
* Tue Feb 14 2012 user - 1.0
- First version of specfile
私はこのようにrpmbuildを呼び出します:
rpmbuild -bb --define "_topdir $TOP_DIR" --define "_gpg_name ourkey" --define "_signature gpg" --sign $TOP_DIR/SPECS/$SPEC_FILE_NAME $RPM_BUILD_PARAMETER
助言がありますか?