OpenBSD, NetBSD और FreeBSD पर अपडेट कैसे लागू करें?


25

मैं काफी समय से OpenBSD का उपयोग कर रहा हूं। हालांकि, मैं केवल एक रिलीज से दूसरे तक जाता हूं, हमेशा सिर्फ एक अपडेट कर रहा हूं। मैंने सिस्टम को कॉन्फ़िगर किया है इसलिए यह मेरे राउटर और फ़ायरवॉल के रूप में काम करता है, और यह काफी अच्छा काम करता है। लेकिन मैं कभी पैकेज अपडेट नहीं करता। मैं बस अगली रिलीज के लिए आगे बढ़ रहा हूं।

लिनक्स दुनिया से आ रहा है, मैं सप्ताह में कुछ बार अपडेट लागू करने के लिए उपयोग किया जाता हूं; लेकिन मैं * BSD पर कैसे करूँ? - या यह * बीएसडी दर्शन का हिस्सा नहीं है?



OpenBSD के साथ अद्यतन कर रहा है के साथ pkg_addहै pkg_add -uvi, है ना?
पोल्मन


हालांकि यह लिंक प्रश्न का उत्तर दे सकता है, लेकिन उत्तर के आवश्यक भागों को शामिल करना और संदर्भ के लिए लिंक प्रदान करना बेहतर है। लिंक-केवल उत्तर अमान्य हो सकते हैं यदि लिंक किए गए पृष्ठ बदल जाते हैं। - समीक्षा से
आर्चर

जवाबों:


22

ओपनबीएसडी बाइनरी-सेंट्रिक है। आप pkg_add निष्पादित करके बायनेरिज़ (यदि कोई अपडेट / परिवर्तन उपलब्ध हैं) को अपडेट कर सकते हैं :

pkg_add -Uu

OpenBSD टीम बंदरगाहों से निर्माण पर पैकेज का उपयोग करने की सिफारिश करती है - OpenBSD संकुल और बंदरगाह प्रणाली

FreeBSD को पैकेज या पोर्ट के जरिए अपडेट किया जा सकता है ।


1
pkg_add -uOpenBSD पर पर्याप्त है। -Uयदि आप एक पैकेज (या पैकेज का सेट) स्थापित करते समय उपयोग करें यदि आप संकुल को अद्यतन करना चाहते हैं तो यह (ये) निर्भर करता है।
कुसलानंद

9

सामान्य तौर पर, OpenBSD का उपयोग करते समय आप केवल अपने सिस्टम को अपडेट करते समय अपने पैकेज को अपडेट करते हैं। इसलिए, अंतिम चरण के रूप में, नवीनतम रिलीज़ को अपग्रेड करने के बाद, आपको निष्पादित करना चाहिए:

 # pkg_add -ui

कौन सा (यू) जरूरत पड़ने पर आपसे कोई प्रश्न (i) निवारक पूछकर आपके स्थापित पैकेजों का नवीनीकरण करेगा।

सामान्य तौर पर, किसी रिलीज़ के लिए पैकेज अगली रिलीज़ तक अपडेट नहीं किए जाते हैं (ओपनबीएसडी में 'वर्तमान' के अलावा संस्करणों पर संकुल को अद्यतन प्रदान करने के लिए डेवलपर संसाधनों का अभाव होता है)। यदि आप अपने पैकेजों को अधिक नियमित रूप से अपग्रेड करना चाहते हैं, तो आपको या तो बंदरगाहों का उपयोग करने की आवश्यकता है, या एक नए स्नैपशॉट में अपग्रेड करने की आवश्यकता है, और फिर फिर से चलाएं pkg_add -ui

आगे पढ़ने के लिए, देखें: http://www.openbsd.org/faq/faq15.html


3
OpenBSD lacks the developer resources for providing updates to packages on versions other than 'current'क्या यह भी सुरक्षा अद्यतन पर लागू होता है? इसलिए यदि मेरे द्वारा उपयोग किए जाने वाले बाइनरी पैकेज में एक महत्वपूर्ण सुरक्षा छेद पाया जाता है, तो मुझे इसे स्टेबल पोर्ट्स से पुनः इंस्टॉल करना होगा?
imgx64

@ imgx64 पोर्ट पर सुरक्षा फ़िक्सेस किए जाते हैं -current। OpenBSD के लिए संकुल का पुनर्निर्माण नहीं होगा -stable
कुसलानंद

4

OpenBSD: M: Tier amd64 और i386 आर्किटेक्चर के लिए स्थिर पैकेज प्रदान करता है । यह आपको अपने सिस्टम को -stableपोर्ट ब्रांच से सबसे हालिया सुरक्षा सुधारों के साथ अद्यतित रखने की अनुमति देता है ।

OpenBSD जर्नल पर एक लेख विवरण बताता है:

व्यवहार में, इसका मतलब यह है कि जैसे ही OPENBSD_5_3 ट्री के लिए एक सुरक्षा फ़िक्स / अपडेट प्रतिबद्ध होता है, CVS ट्री से एक पैकेज बनाया जाएगा। इस पैकेज को तब परीक्षण किया जा रहा है और Stable.MTier.org पर हमारे फैन-आउट सर्वर पर धकेल दिया गया है, सभी के उपयोग के लिए!


3

विभिन्न बीएसडी प्रणालियों में "आधार प्रणाली" और "3 पार्टी सॉफ्टवेयर (पोर्ट / पैकेज)" में बहुत स्पष्ट अलगाव है। आप दोनों को अलग-अलग अपग्रेड करें।

यह मानता है कि आपके पास OpenBSD 6.5 या बाद का इंस्टॉलेशन है (पुराने उत्तर के लिए नीचे देखें):

आधार प्रणाली इसके साथ उन्नत है sysupgrade(8):

doas sysupgrade

यदि आप स्थिर या रिलीज़ शाखा का पालन कर रहे हैं या नवीनतम "स्नैपशॉट" का उपयोग कर रहे हैं, तो यह OpenBSD के अगले "स्थिर" संस्करण में आधार प्रणाली को डाउनलोड और अपग्रेड करेगा यदि आप स्नैपशॉट का उपयोग कर रहे हैं। ध्यान दें कि sysupgradeयदि आपको सभी आधार प्रणाली सेट के बिना एक अनुकूलित स्थापना है, तो आपको इसका उपयोग नहीं करना चाहिए ।

आधार प्रणाली को अपग्रेड करने के बाद, आप चलाना चाहते हैं syspatch(8)(केवल अपने सिस्टम को "रिलीज" से "स्थिर" तक पहुंचाने के लिए, स्नैपशॉट सिस्टम का उपयोग कर सकते हैं syspatch)।

पोर्ट के साथ अद्यतन किया जाता है pkg_add(1):

doas pkg_add -u

स्नैपशॉट सिस्टम पर, आप इसे जोड़ना चाहते हैं -D snap(मैनुअल देखें)।

आप नवीनीकरण से पहले ओपनबीएसडी एफएक्यू के प्रासंगिक अनुभाग की जांच करना चाहते हैं , उदाहरण के लिए " बाद में-धारा और स्नैपशॉट का उपयोग करके " या नवीनतम स्थिर रिलीज के उन्नयन से संबंधित अनुभाग।

एक पोर्ट / पैकेज भी कहा जाता है sysclean(इन sysutils/sysclean) जो आपको बेस सिस्टम लाइब्रेरी और अन्य फाइलों को इंगित करने में मदद करेगा जो अब डिफ़ॉल्ट स्थापना का हिस्सा नहीं हैं। यह आपको यह भी बताएगा कि पुराने पुस्तकालयों में कौन से पोर्ट उपयोग कर रहे हैं।


पुराना उत्तर, 6.5 से पहले ओपनबीएसडी रिलीज के लिए प्रासंगिक :

OpenBSD के मामले में, यह मानते हुए कि आप एक स्थिर रिलीज से अगले स्थिर रिलीज (जंपिंग रिलीज का समर्थन नहीं करते हैं जब तक कि आप एक नया इंस्टाल नहीं करते), आप अपने द्वारा किए जा रहे अपग्रेड के लिए विशिष्ट एफएक्यू को पढ़कर शुरू करते हैं। 5.9 से 6.0 के उन्नयन के मामले में, आपने " अपग्रेड गाइड: 5.9 से 6.0 " पढ़ा ।

सामान्य तौर पर, यह जारी करने के लिए इंस्टालेशन मीडिया को बूट करना शामिल है, जिसे आप अपग्रेड करना चाहते हैं और मेनू से "(यू) पोगर्ड" का चयन करना चाहते हैं। आधार सिस्टम अपग्रेड होने के बाद, आप इसे बूट करते हैं और रूट के रूप में, किसी भी संस्थापित पैकेज को अपग्रेड करते हैं pkg_add -u

यह बहुत बार अद्यतन करने के लिए स्थिर OpenBSD रिलीज़ से संबंधित पैकेजों के लिए असामान्य है। आमतौर पर यह केवल तब होता है जब महत्वपूर्ण कीड़े तय हो जाते हैं। इसलिए pkg_add -uसप्ताह में कई बार दौड़ना शायद बहुत अधिक नहीं होगा (लेकिन इसे करते रहें क्योंकि यह महत्वपूर्ण सुधारों में खींच सकता है)।

यदि आप "वर्तमान" का पालन करते हैं, तो चीजें बहुत अलग हैं। तब आप अपने पैकेजों का निर्माण उन बंदरगाहों के पेड़ से कर रहे होंगे जिनकी सीवीएस के तहत जाँच की गई थी /usr/ports, और आप शायद बेस सिस्टम को मैन्युअल रूप से भी बना रहे होंगे (देखें " सोर्स से सिस्टम का निर्माण ")। सही विकल्प और मैन्युअल रूप से स्थापित पैकेजों की सूची दिए जाने पर स्थापित पोर्ट को dpb(में /usr/ports/infrastructure/bin) से अपडेट किया जा सकता है ।

मैं उपयोग कर रहा हूँ

#!/bin/sh -x

pkg_info -P -q -m | sort -o "$HOME/packages"
/usr/ports/infrastructure/bin/dpb -scuR -P "$HOME/packages"

के बाद

$ doas pkg_add -u -D unsigned
$ doas pkg_delete -a

यह नए उपयोगकर्ताओं के लिए प्रोत्साहित नहीं किया जाता है।


2

मुझे अपडेट प्राप्त करने की आवश्यकता थी क्योंकि मैंने बैश स्थापित किया था और शेलशॉक भेद्यता से पीड़ित नहीं होना चाहता था, इसलिए मैं होलू के सुझाव के साथ चला गया /unix//a/103661/93476 और इससे मुझे पैच अप हुआ।


2

NetBSD पर, आप आमतौर पर pkgsrcनवीनतम संस्करण में अपग्रेड करते हैं (जो इससे अधिक कुछ नहीं है tar -xvzf pkgsrc-version.tar.gz) और व्यक्तिगत रूप से स्थापित सॉफ़्टवेयर को अपडेट करता है।

NetBSD / pkgsrc वेबसाइट पर अधिक जानकारी:


1

हमेशा पूछे जाने वाले प्रश्न / मैनुअल पढ़ें: http://www.openbsd.org/faq/upgrad58.html

जब भी आप रिलीज से रिलीज के लिए जाते हैं तो आपको अंतिम चरण के रूप में पैकेज अपडेट करने की आवश्यकता होती है।


1

क्षमा करें, NetBSD pkgsrcएक लापरवाह समाधान का समर्थन नहीं करता है। इसके बजाय आपको एक पैकेज प्रबंधक का उपयोग करना चाहिए जैसे nihया pkgin। इसके तहत pkgsrcआपको अपग्रेड के लिए मजबूर होना पड़ता है जो अक्सर लिंक की गई फ़ाइल निर्भरताओं को अनदेखा करता है। इसके अलावा पुराने पर नए संस्करण की नकल करने से pkgsrcआपका pkgsrcपेड़ असंगत स्थिति में आ सकता है।


0

मेरे लिए NetBSD पैकेज अपडेट करना / usr / pkgsrc में एक कमांड है:

# cvs update -dP && csup /some-path-to-wip-supfile/netbsd-pkgsrc-wip && pkg_rolling-replace -u
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.