Upload
manish-chopra
View
76
Download
1
Embed Size (px)
Citation preview
Creating RPM package in Linux
This exercise was done on RHEL 6 and same steps are applicable for other variants too. This tutorial provides you with
steps to create your own RPM packages in Linux. Following procedure shows creating a basic RPM package that
includes a shell script. After the RPM is installed, the script is executed on the command prompt to display the output.
Step 1 – Install necessary RPM dependencies
[student@desktop3 ~]$yum install rpm-build–y
Step 2 – Setup your package in a directory
[student@desktop3 ~]$mkdir myrpm-1.0 [student@desktop3 ~]$cd myrpm-1.0 (Create a simple script which executes after installing the rpm) [student@desktop3 ~]$ vi myrpm.sh #!/bin/bash # echo 'Hello There ! This is my RPM script...' exit 0 (Make the script executable) [student@desktop3 ~]$ chmod a+x myrpm.sh
Step 3 – Create a tar file of your package
[student@desktop3 ~]$ mkdir -p ~/rpmbuild/SOURCES [student@desktop3 ~]$ mkdir -p ~/rpmbuild/SPECS [student@desktop3 ~]$ tar -zcvf ~/rpmbuild/SOURCES/myrpm-1.0-1.tar.gz myrpm-1.0/
Step 4 – Create and edit SPEC file
[student@desktop3 ~]$ vi ~/rpmbuild/SPECS/myrpm.spec Name: myrpm Version: 1.0 Release: 1 Summary: MyRPM Group: RHCE License: GPL URL: http://www.redhat.com Source0: %{name}-%{version}-%{release}.tar.gz BuildRoot: /var/tmp/%{name}-buildroot %description Installs /root/bin/myrpm.sh %prep %setup -q -n %{name}-%{version}
%build %install rm -rf $RPM_BUILD_ROOT mkdir -p $RPM_BUILD_ROOT/root/bin install -m 755 myrpm.sh $RPM_BUILD_ROOT/root/bin/myrpm.sh %clean rm -rf $RPM_BUILD_ROOT %files %defattr(-,root,root,-) /root/bin/myrpm.sh %changelog
Step 5 – Execute rpmbuild to build the RPM package
[student@desktop3 ~]$rpmbuild -ba rpmbuild/SPECS/myrpm.spec
Step 6 – Install and Run the RPM package
[root@desktop3 ~]# rpm -ivh /home/student/rpmbuild/RPMS/x86_64/myrpm-1.0-1.x86_64.rpm Preparing... ########################################### [100%] 1:myrpm ########################################### [100%] [root@desktop3 ~]# ll /root/bin/myrpm.sh -rwxr-xr-x. 1 root root 131 Jun 29 17:19 /root/bin/myrpm.sh [root@desktop3 ~]# myrpm.sh Hello There ! This is my RPM script...
Document Version 1 Date : 29th June 2012 Author : Manish Chopra