Быстрое создание rpm пакета в CentOS с помощью Checkinstall
Для того, чтобы создать RPM пакет используя исходный код приложения вам понадобится Checkinstall
.
Это самый простой и быстрый способ создания RPM пакетов. Готовый пакет можно устанавливать на другие сервера без необходимости компилировать его каждый раз.
Установите обработчики rpm пакетов:
yum install -y rpm-build rpmdevtools
После установки выполните следующую команду. Она создаст зависимости rpm пакетов:
rpmdev-setuptree
К сожалению Checkinstall недоступен в репозитариях CentOS. Солный список rpm пакетов доступен на следующей странице:
http://rpm.pbone.net/index.php3?stat=3&search=checkinstall&srodzaj=3
Его нужно скачать и установить:
wget -no-check-certificate https://filebox.ece.vt.edu/~mclint/puppet/files/checkinstall-1.6.2-3.el6.1.x86_64.rpm
rpm -i checkinstall-1.6.2-3.el6.1.x86_64.rpm
Раньше использовалась другая ссылка и когда она перестала работать я чуть не пришел у ужас. В общем нашел другую, скачал и разместил у себя на сервере:
wget /wp-content/uploads/2016/04/01/checkinstall-1.6.2-3.el6.1.x86_64.rpm
После этого checkinstall готов к использованию. Используйте его вместо make install
при сборке пакетов.
Следующая конструкция не будет устанавливать приложение, а подготовит пакет готовый к установке и покажет его местонахождение:
checkinstall -install=no
Например:
**********************************************************************
Done. The new package has been saved to
/root/rpmbuild/RPMS/x86_64/httpd-2.2.31-1.x86_64.rpm
You can install it in your system anytime using:
rpm -i httpd-2.2.31-1.x86_64.rpm
**********************************************************************
Готовый пакет можно установить следующей командой:
rpm -i /root/rpmbuild/RPMS/x86_64/httpd-2.2.31-1.x86_64.rpm
Если же Вы собрали пакет для обновления существующего в системе, тогда используйте:
rpm -U /root/rpmbuild/RPMS/x86_64/httpd-2.2.31-1.x86_64.rpm