लिनक्स - केवल एपेट का उपयोग करके सुरक्षा अपडेट प्रदर्शित या अपग्रेड करना


11

केवल apt का उपयोग करके सुरक्षा उन्नयन को सूचीबद्ध या स्थापित करने का कोई तरीका है?

अगर मैं के साथ उन्नयन की सूची:

apt list --upgradable

क्या मैं संकुल और पुस्तकालयों को जाने बिना देख सकता हूँ जो उन्नयन प्रासंगिक सुरक्षा उन्नयन हैं

और इसके अलावा किसी भी अन्य को छोड़ कर केवल उन्हें लागू करने का एक विकल्प है, इसलिए अगली बार चलने पर गैर-सुरक्षा-प्रासंगिक उन्नयन को फिर से संकेत दिया जाएगा apt upgrade?


1
इसलिए आपके पास दो प्रश्न हैं, 1. छाप सुरक्षा अपडेट, 2. केवल चयनित पैकेजों का उपयोग करें, अच्छी तरह से मुझे पता है कि सूत्रों में 6 लिंक हैं। सूची और उनमें से दो सुरक्षा से संबंधित रेपो लिंक हैं, आप देख सकते हैं कि कौन से उन्नयन योग्य पैकेज डाउनलोड किए जाएंगे प्रत्येक लिंक से कमांड का पालन करके: sudo apt उन्नयन - कोई-अपग्रेड --assume-no -print-uris
ब्रायन SP2

1
लेकिन दूसरे प्रश्न के बारे में, जाहिरा तौर पर आप निम्नलिखित कमांड सुडोकू अपग्रेड द्वारा अपग्रेड किए जाने वाले एकल पैकेज को चुन सकते हैं - केवल -ग्रेड <पैकेज का नाम> लेकिन यह मेरे लिए काम नहीं करता है, क्षमा करें
ब्रायन SP2

जवाबों:


7

apt(अभी तक) आपके द्वारा दी गई जानकारी प्रदान नहीं कर सकते। aptitudeहालांकि, कुछ भ्रामक रूप से:

aptitude search '~U ~ODebian' -F "%p %O"|awk '/Debian-Security/ {print $1}'

यह ~Uआधिकारिक डेबियन रिपॉजिटरी ( ~ODebian) से सभी अपग्रेड करने योग्य ( ) पैकेज खोजता है , और उनके पैकेज का नाम ( %p) और "मूल" ( %O) दिखाता है । उत्तरार्द्ध वास्तव में रिपॉजिटरी लेबल प्रदर्शित करता है , जो डेबियन 9 सुरक्षा रिपॉजिटरी के लिए "डेबियन-सुरक्षा: 9 / स्थिर" है। आप सुरक्षा रिपॉजिटरी से अपग्रेड करने योग्य पैकेज नामों की सूची के साथ समाप्त होते हैं।

केवल सुरक्षा उन्नयन स्थापित करने के कई तरीके हैं, उनमें से कोई भी आदर्श नहीं है।

  • aptitudeपाठ का इंटरफ़ेस केवल "सुरक्षा अपडेट" हेडर (जो पहले एक होना चाहिए) और मारकर स्क्रॉल करके केवल सुरक्षा अपग्रेड को लागू करने की अनुमति देता है +

  • आप aptउन्नयन को स्थापित करने के लिए ऊपर निकाले गए संकुल की सूची खिला सकते हैं :

    aptitude search '~U ~ODebian' -F "%p %O" |
    awk '/Debian-Security/ {print $1}' |
    xargs apt-get install --only-upgrade
    

    यह उन्नत पैकेज पर "स्वचालित रूप से स्थापित" मार्कर को साफ़ करने का दुर्भाग्यपूर्ण पक्ष-प्रभाव है।

  • आप उपयोग कर सकते हैं unattended-upgrades, जिसकी डिफ़ॉल्ट कार्रवाई केवल सुरक्षा अपग्रेड लागू करने के लिए है:

    unattended-upgrades -v
    

    यदि आप अपग्रेड को स्वचालित रूप से इंस्टॉल नहीं करना चाहते हैं, तो आपको unattended-upgradesदैनिक क्रोन जॉब को अक्षम करना होगा।


एप्टीट्यूड के TUI को सुरक्षा अद्यतन अलग से प्रस्तुत करने की आवश्यकता नहीं है - जैसे कि एक साल पहले या 16.04 पर, और वर्तमान में 18.04 पर। किसी और को देखा है कि?
ग्रेग बेल

@ यह अभी भी मेरे लिए (डेबियन 10 पर) करता है, और मुझे उबंटू में कोई बदलाव नहीं दिखता है जो कि प्रभावित करेगा। शायद सुरक्षा अद्यतन स्वचालित रूप से लागू कर रहे हैं इससे पहले कि आप उन्हें में देख सकते हैं aptitude, जैसे द्वारा unattended-upgrades...
स्टीफन Kitt

नहींं, मेरा अप्राप्य-अपग्रेड केवल थंडरबर्ड, sshd और फ़ायरफ़ॉक्स तक सीमित है। क्या अजीब बात है कि योग्यता खोज '~ यू' बहुत कुछ पाता है। मैं इसे अभी भी योग्यता 0.7.4 पर काम करते हुए देख सकता हूं; योग्यता 0.8.10 क्या उबंटू 18.04 जहाजों के साथ है। आपके पास क्या संस्करण है?
ग्रेग बेल

@Greg मेरे पास 0.8.11 है, और यह अपने स्वयं के अनुभाग में सुरक्षा अद्यतन दिखाता है । प्रदर्शन कॉन्फ़िगर करने योग्य है, जो यहां समस्या हो सकती है - जब आप जी दबाते हैं, तो पैकेज ग्रुपिंग तंत्र क्या दिखाया जाता है? डिफ़ॉल्ट है task,status,section(subdirs,passthrough),section(topdir)
स्टीफन किट

एक ही समूहीकरण तंत्र यहाँ। और मैं यह सुनिश्चित कर सकता हूँ कि यह कुछ नासमझ है जो मैं सेट करूँगा।
ग्रेग बेल

5

सुरक्षा अद्यतन प्रदर्शित करने के लिए आप इसका उपयोग कर सकते हैं:

apt-get --just-print upgrade | grep -i security | awk '{print $2}' | awk '!seen[$0]++'

केवल 1 पैकेज के लिए सुरक्षा अद्यतन लागू करने के लिए:

apt-get install --only-upgrade pckg_name

सूची से केवल सुरक्षा अपडेट लागू करने के लिए:

list=$(apt-get --just-print upgrade | grep -i security | awk '{print $2}' | awk '!seen[$0]++')
apt-get install --only-upgrade $list
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.