क्या पैकेजिंग पर सिम्लिंक को संरक्षित करने के लिए आरपीएमबील्ड बनाना संभव है?rpmbuild के माध्यम से पैकेजिंग symlinks?
वर्तमान व्यवहार उन फ़ाइलों की प्रतियां बनाना है, जिन्हें मैं टालना चाहता हूं।
क्या पैकेजिंग पर सिम्लिंक को संरक्षित करने के लिए आरपीएमबील्ड बनाना संभव है?rpmbuild के माध्यम से पैकेजिंग symlinks?
वर्तमान व्यवहार उन फ़ाइलों की प्रतियां बनाना है, जिन्हें मैं टालना चाहता हूं।
निश्चित रूप से यह सिम्लिंक का समर्थन करता है। लेकिन आपको वास्तव में सिम्लिंक पैकेज करना होगा और सामग्री को प्रतिलिपि में कॉपी नहीं करना होगा। उदाहरण/newbin
Name: test
Version: 1.0
Release: 1%{?dist}
Summary: nothing
License: GPLv2
Source0: nothing
%description
%install
rm -rf %{buildroot}
mkdir %{buildroot}
ln -sf /bin %{buildroot}/newbin
%files
/newbin
कहा जाता है आप भी अपने स्रोत निर्देशिका में nothing
फ़ाइल की आवश्यकता होगी सफलतापूर्वक इस से बाहर आरपीएम निर्माण करने के लिए/bin निर्देशिका में एक सिमलिंक पैकेजिंग कल्पना। आरपीएम 4.9.1.2
मुझे ऐसा नहीं लगता है। मैंने अपने संकुल में पोस्ट-इंस्टॉल स्क्रिप्ट सेट सिम्लिंक का उपयोग किया है।
के साथ परीक्षण किया गया है, मैं स्टैन ने ऊपर क्या कहा है, मैं एक बदलाव करूँगा, क्योंकि -फ बनाने के लिंक में है, हटाए जाने की आवश्यकता नहीं है। – Jane
@ जेन - मैं असहमत हूं। '% इंस्टॉल' की शुरुआत में क्रुफ़्ट को हटाने के लिए बिल्ड्रूट को साफ करना आम तौर पर एक अच्छा विचार है। उदाहरण के लिए, मान लीजिए कि पैकेज के पिछले संस्करण ने दूसरी फ़ाइल "'% {buildroot}/newlib' "स्थापित की है, लेकिन वर्तमान संस्करण उस फ़ाइल को इंस्टॉल नहीं करता है। पैकेज का वर्तमान संस्करण उस फ़ाइल से अवगत नहीं होगा और इस प्रकार इसे बिल्ड्रूट से हटाया नहीं जाएगा (आपके सुझाव के बाद)। आम तौर पर, वर्तमान rpmbuild उदाहरण किसी भी पुराने क्रुफ्ट के बारे में पता नहीं है जो कि निर्माण रूट में हो सकता है। इंस्टॉल चरण से पहले पूरे buildroot को ठीक करने के लिए बेहतर है। – jayhendren