RPM 패키지 생성 프로젝트

김동주·2024년 1월 24일
0
post-thumbnail

RPM

RPM이란 Redhat Package Manager의 약자로 레드헷 계열의 리눅스 배포판에서 사용하는 프로그램(패키지) 설치 관리 도구이다.

🚩 프로젝트

다음 사이트를 참고하여 vitetris RPM 파일을 만들어 보자.
RPM packaging: A simplified guide to creating your first RPM
https://developers.redhat.com/blog/2019/03/18/rpm-packaging-guide-creating-rpm/

RPM PACKAGING GUIDE
https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/7/html-single/rpm_packaging_guide/index?extIdCarryOver=true&sc_cid=701f2000001OH7JAAW

🤼‍ 사용된 os

Linux CentOS7

🌐 선수 작업

yum 패키지 설치

yum –y group install ‘Development Tools
yum -y install rpm-build rpmdevtools rpmlint httpd
mod_ssl createrepog

1. vitetris 패기지 다운

mkdir /vitetris ;; cd /vitetris
wget https://www.victornils.net/tetris/vitetris-0.57.tar.gz

2. 압축 파일 복사

cp vitetris-0.57.tar.gz ~/rpmbuild/SOURCES/

3. spec 파일 생성

# rpmdev-newspec rpmbuild/SPECS/vitetris.spec
# vi rpmbuild/SPECS/vitetris.spec

Name: vitetris
Version: 0.57
Release: 1%{?dist}
Summary: ASCII based tetris game
License: BSD
URL: https://www.victornils.net/tetris/
Source0: vitetris-0.57.tar.gz
BuildRequires: gcc
%description
vitetris is a multiplayer ASCII-based Tetris game
%files

4. 에러점검

# rpmlint ~/rpmbuild/SPECS/tetris.spec

5. rpm build (-ba)

yum -y install rpm-build
rpmbuild –ba rpmbuild/SPECS/vitetris.spec
tree rpmbuild
cd rpmbuild/RPMS/x86_64

생성한 패키지 설치 및 삭제
rpm -Uvh vitetris-0.57-1.el8.x86_64.rpm
rpm -e vitetris

6. GPG Key 생성

cd
gpg --gen-key

gpg --list-key
-EAFE484AC95B42BA2387794292F7665A9AA0F820

7. 패키지 Sign

echo “%_gpg_name EAFE484AC95B42BA2387794292F7665A9AA0F82
>> ~/.rpmmacros
rpmsign —addsign ~/rpmbuild/RPMS/x86_64
/vitetris-0.57-1.el8.x86_64.rpm

8. RPM-GPG-KEY-test 파일 생성

gpg -a -o ~/RPM-GPG-KEY —export
EAFE484AC95B42BA2387794292F7665A9AA0F820

ls RPM*
cat RPM-GPG-KEY-test

9. YUM Repository 구성

systemctl enable --now httpd
cp ~/rpmbuild/RPMS/x86_64/vitetris-0.57-1.el8.x86_64.rpm 
/var/www/html/packages/
cp ~/RPM-GPG-KEY-test /var/www/html/packages/
tree /var/www/html/
createrepo /var/www/html/packages/

vitetris.repo 파일 생성

  • vi /etc/yum.repos.d/vitetris.repo

[vitetris]
name=vitetris
description=Test Yum Repository
baseurl=http://192.168.10.20/packages
enabled=1
gpgcheck=1
gpgkey=http://192.168.10.20/packages/RPM-GPG-KEY-test

10. 설치

yum -y install vitetris
profile
더욱 더 발전된 엔지니어가 되기 위한 개인 공부 블로그(DevOps/Cloud)

0개의 댓글