Cara membuat rpm untuk skrip anda sendiri di centos/redhat
- 3979
- 795
- Daryl Wilderman
RPM (Pengurus Pakej Redhat) adalah sistem pengurusan pakej untuk sistem berasaskan RHEL. Anda mungkin melihat bahawa semua pakej dalam sistem berasaskan redhat mempunyai lanjutan .rpm. Tutorial ini akan membantu anda untuk membuat rpm untuk skrip anda sendiri
Saya telah membuat skrip untuk mengambil sandaran pangkalan data, hari ini saya telah membuat fail rpm skrip itu, ini adalah RPM pertama yang saya buat. Berikut adalah langkah -langkah yang saya ikuti untuk melakukannya.
Langkah 1 - Pasang pakej yang diperlukan
Pertama sekali, anda perlu memasang pakej yang diperlukan pada sistem anda untuk membuat fail rpm.
$ yum pasang rpm-membina rpmdevtools
Langkah 2 - Buat struktur direktori
Pergi ke direktori rumah pengguna, dan buat struktur direktori yang diperlukan menggunakan arahan di bawah.
$ rpmdev-setuptree
Perintah di atas akan membuat struktur direktori seperti di bawah.
$ ls -l rpmbuild drwxr-xr-x 2 akar root 6 Okt 25 03:09 Bina drwxr-xr-x 2 akar akar 6 Okt 25 03:09 rpms drwxr-xr-x 2 akar akar 6 Okt 25 03:09 Sumber DRWXR-XR-X 2 ROOT ROOT 6 Okt 25 03:09 Spesifikasi DRWXR-XR-X 2 ROOT ROOT 6 OCT 25 03:09 SRPMS
Dalam kes rpmdev-setuptree Perintah gagal mewujudkan struktur, anda boleh menciptanya secara manual
$ mkdir -p ~/rpmbuild/binaan, rpms, sumber, spesifikasi, srpms, tmp
Langkah 3 - Buat fail rpmmacro
Sekarang buat ~/.fail rpmmacros, dengan kandungan berikut. Tukar nilai nama merah yang diserlahkan
~/.rpmmacros
%packager your_name %_topdir %(echo $ home)/rpmbuild %_smp_mflags %(\ [-z "$ rpm_build_ncpus"] \\\ && rpm_build_ncpus = " \/usr/bin/getconf _nprocessors_onln '"; \\\ if [" $ rpm_build_ncpus "-gt 16]; \\\ echo "-j $ rpm_build_ncpus"; \\\ else \\\ echo "-j3"; \\\ fi) %__ arch_install_post \ [" %buildarch" = "noarch"] || Qa_check_rpaths = 1; \ case "$ qa_check_rpaths:-" in [1yy]*)/usr/lib/rpm/check-rpaths ;; ESAC \/usr/lib/rpm/check-buildroot
Langkah 4 - Salin fail di bawah direktori sumber
Salin semua folder fail dan skrip anda di dalam ~/rpmbuild/sumber direktori, yang perlu kita tambahkan dalam fail rpm. Untuk tutorial ini, saya telah menggunakan semua fail yang dibuat dalam skrip Bash Advance Tutorial kami untuk MySQL.
$ cd ~/rpmbuild/sumber $ ls -l mydumpadmin-1 -rw-r-r-- akar akar 125 Okt 25 03:54 kelayakan.txt -rw-r-r-- akar akar 4693 25 Okt 03:54 Mysql-dump.SH -RW-R-R-- ROOT 1 ROOT 1008 OCT 25 03:54 README.MD -RW-R-R-- ROOT ROOT 3445 25 Okt 03:54 Tetapan.Conf
Buat tarball kod anda.
$ tar czf mydumpadmin-1.0.tar.Gz mydumpadmin-1
Langkah 5 - Buat Fail Spec
Buat fail spec ~/rpmbuild/spesifikasi/mydumpadmin.spesifikasi menggunakan kandungan di bawah.
~/rpmbuild/spesifikasi/mydumpadmin.spesifikasi
Nama: Mydumpadmin Versi: 1 Siaran: 0 Ringkasan: Skrip Bash Advance untuk MySQL Database Backup Group: Tecadmin Buildarch: Noarch Lesen: GPL URL: https: // github.com/tecrahul/mydumpadmin.git sumber0: mydumpadmin-1.0.tar.gz %Keterangan Tulis beberapa penerangan mengenai pakej anda di sini %persediaan %persediaan -q %binaan %Pasang pemasangan -m 0755 -d $ rpm_build_root/etc/mydumpadmin install -m 0600 kredensial.txt $ rpm_build_root/etc/mydumpadmin/kelayakan.txt install -m 0755 mysql -dump.sh $ rpm_build_root/etc/mydumpadmin/mysql-dump.SH Install -m 0644 Readme.md $ rpm_build_root/etc/mydumpadmin/readme.pemasangan md -m 0644 tetapan.conf $ rpm_build_root/etc/mydumpadmin/tetapan.Conf %Files/etc/MyDumpadmin/etc/mydumpadmin/kelayakan.txt/etc/mydumpadmin/mysql-dump.sh/etc/mydumpadmin/readme.md/etc/mydumpadmin/tetapan.conf %changelog * tue 24 Okt 2017 Rahul Kumar 1.0.0 - Siaran RPM Awal
Tukar Nama Pakej, Laluan Skrip, Nama Arkib, Keterangan dan lain -lain, mengikut Keperluan Anda.
Langkah 6 - Bina RPM
Setelah melengkapkan langkah di atas, mari bina RPM anda dengan melaksanakan arahan berikut.
$ cd ~/rpmbuild $ rpmbuild -ba spesifikasi/mydumpadmin.spesifikasi
Setelah berjaya dibina, fail rpm akan dibuat seperti ~/rpmbuild/rpms/noarch/mydumpadmin-1-0.Noarch.rpm
Pasang rpm anda menggunakan arahan di bawah. Selepas pemasangan cek, fail dipasang dengan betul seperti lokasi yang ditakrifkan.
$ rpm -ivh mydumpadmin-1-0.Noarch.rpm
Terima kasih kerana menggunakan artikel ini. Saya harap langkah -langkah di atas akan membantu anda membuat rpm anda sendiri.
- « Cara menetapkan semula kata laluan root mysql di linux
- Persediaan Pengesahan Freeradius dengan OpenLDAP »