मेरे पास एक आरपीएम फ़ाइल है। मुझे उस आरपीएम में कुछ बदलाव करना है, इसे दोबारा बनाना और टेस्ट करना है। क्या कोई मेरी मदद कर सकता है?एक आरपीएम फ़ाइल को अनपॅक करना और इसे रीपैक करना
उत्तर
मुझे लगता है कि पैच नामक एक अवधारणा है। मैंने इस link का उपयोग करके पहले srpm को पैच करना शुरू कर दिया। लेकिन बुनियादी विचार यह है कि, srpm प्राप्त करें, srpm इंस्टॉल करें, उस क्षेत्र क्षेत्र निर्देशिका के अंदर अपना पैच बनाएं और spec फ़ाइल में पैच फ़ाइल% patch0 -p1 निर्दिष्ट करें। फिर आरपीएम बिल्ड करें। हैप्पी पैचिंग!
का सबसे अच्छा तरीका एक RPM को संशोधित करने के लिए निम्न चरणों का पालन करने के लिए है के लिए आप स्रोत नहीं है:
- अनपैक rpm2cpio कमांड के साथ एक निर्देशिका में आरपीएम
- अंदर आवश्यक परिवर्तन करें कि उपनिर्देशिका
- एक "डमी" spec फ़ाइल बनाएं और इसे बनाएं।
डमी कल्पना फ़ाइल इस प्रकार दिखाई देंगे कि:
Name: blah
Version: 1.0
Release: 1
Summary: blah
License: blah
Distribution: blah
Group: blah
Packager: me
BuildRoot: /path/to/dir/with/mods
%description
blah
%files
/path/to/dir/with/mods/*
(rpm -qpi rpm file
का उपयोग मूल्यों को प्राप्त करने के लिए) वास्तविक मूल्य के साथ यहाँ में हर "blah" बदलें। BuildRoot को उस निर्देशिका में बदलें जिसे आपने संशोधित आरपीएम अनचाहे किया है। फिर rpmbuild -bb dummy.spec
चलाएं।
चूंकि कोई प्रीपे/सेटअप/बिल्ड/स्थापित चरणों को स्थापित नहीं किया गया है, तो यह केवल बिल्ड्रूट में क्या होगा और आरपीएम बनायेगा।
यदि आरपीएम पैकेज में स्क्रिप्ट फाइलें हैं, तो आपको उन्हें इस डमी स्पेक फ़ाइल में भी रखना होगा। यह देखने के लिए कि क्या पैकेज में कोई स्क्रिप्ट है, चलाएं: rpm -qp --scripts rpm file
। निर्भरता, prereqs, आदि के लिए एक ही बात है
अन्य विवरण हो सकते हैं जो मुझे याद आ रही है, लेकिन यह आपको शुरू करने के लिए पर्याप्त होना चाहिए।
अद्यतन: क्या इसके लायक है के लिए, वहाँ भी http://rpmrebuild.sourceforge.net/
मुख्य समस्या मैं का सामना करना पड़ रहा है मैं एक स्रोत आरपीएम की जरूरत नहीं है है। मेरे पास आरपीएम बिल्ड है। – Monojeet
@Monojeet, फिर स्रोत आरपीएम पता लगाएं? यह केवल तर्कसंगत है कि क्यों srpm है क्योंकि पैचिंग करते समय, हमें * स्रोत * आरपीएम की आवश्यकता होगी, न कि निर्मित आरपीएम। – Jasonw
तो एसआरपीएम के बिना आरपीएम को सही तरीके से संपादित करने का कोई तरीका नहीं है? – Monojeet