"ইয়ম আপডেট - সুরক্ষা" এর সমতুল্য ডিএনএফ


13

yum update --securityশুধুমাত্র সুরক্ষা আপডেট ইনস্টল করে। আমি মনে করি এটি yum- সুরক্ষা প্লাগইন থেকে বর্ধিত।

সমতুল্য ডিএনএফ কমান্ড আছে? (ফেডোরা 22-এ ইউএন প্রতিস্থাপন করা হয়েছে)


1
জেএফটিআর: bugzilla.redhat.com/show_bug.cgi?id=1234930 দ্বারা , এই বৈশিষ্ট্যটি কেবল ডিএনএফ 2 এবং আসন্ন ফেডোরা 26
সেরজিও

1
এখন ডিএনএফ আপগ্রেড --enablerepo = আপডেট-পরীক্ষা - অ্যাডভিসররি = ফেডোরা-2019-7cafbe66ba
সেরজিও

উত্তর:


7

Http://forums.fedoraforum.org/showthread.php?t=305905 এর উপর ভিত্তি করে

#!/bin/bash

SECURITY_UPDATES_LIST=$( dnf --refresh -q updateinfo list sec | awk '{print $3}' )
SECURITY_UPDATES_NUM=`echo "$SECURITY_UPDATES_LIST" | sed '/^$/d' | wc -l`

if [ "$SECURITY_UPDATES_NUM" -eq 0 ]; then
  exit
fi

dnf upgrade -y $SECURITY_UPDATES_LIST
  • --refresh ফোর্স রেপো সিঙ্ক
  • -আমি স্বয়ংক্রিয়ভাবে ইনস্টল
  • SECURITY_UPDATES_NUM পরিশোধিত / স্থির গণনা পদ্ধতি, 0/1 / অসীমের জন্য কাজ করে

1
ব্যাশে ওয়ান-লাইনারের সমান ( -yএবং --refreshএটি যোগ করা যেতে পারে):up=$(sudo dnf -q updateinfo list sec | awk '{print $3}'); [[ $up ]] && sudo dnf upgrade $up
মার্সিন

ওয়ান-লাইনার ওরফে হিসাবেalias security-update="pkgs=\$(sudo dnf --refresh -q updateinfo list sec | awk '{print \$3}'); [[ \$pkgs ]] && sudo dnf upgrade -y \$pkgs"
ওয়েস্টন গাঙ্গার

10

আপনি তিনটি সেটিংস সহ ডিএনএফ-স্বয়ংক্রিয় ব্যবহার করতে পারেন :

apply_updates = yes
download_updates = yes
upgrade_type = security

(ডিফল্ট কনফিগারেশন ফাইলটি হ'ল /etc/dnf/automatic.conf)

বা ব্যবহার:

dnf updateinfo list security

সমস্ত উপলভ্য আপডেট পেতে, সেগুলি ম্যানুয়ালি আপডেট করুন।


1

আপনি dnf updateinfo list updates securityক্লাই বা বাশ স্ক্রিপ্টে একটি ফর লুপ রাখতে পারেন। আমি এখনও সুরক্ষা আপডেটগুলি পর্যালোচনা করার জন্য উচ্চ প্রস্তাব দিচ্ছি তবে আপনি সর্বদা -yকমান্ডটি ফেলে দেওয়ার অনুমতি দিতে পারেনdnf update

এটি কিছু প্রয়োজনের উপর নির্ভর করে আমার জন্য কাজ করে:

for i in $(dnf updateinfo list updates security | grep -Ei ^fedora | cut -d' ' -f3) ; do dnf update $i; done

বা অ্যাজকের সাথে কিছুটা খাটো (সচেতন হন এটি --refresh এর সাথে কাজ করে না)

for i in $(dnf updateinfo list updates security | awk 'NR>1 {print $3}') ; do dnf update $i; done

একটি dnf --refresh জন্য

for i in $(dnf updateinfo list updates security| dnf updateinfo list updates security| awk 'NR>1 {print $3}') ; do dnf update $i; done

0

আগে প্রস্তাবিত পদ্ধতিগুলি আমার ক্ষেত্রে সন্তুষ্ট হয়নি। আপনি এটি চেষ্টা করতে পারেন এবং এটি সম্ভবত আরও নিখুঁত। "Dnfupdate- সুরক্ষা" নামে ফাইল তৈরি করুন তারপরে নীচে পাইথন লাইনগুলি পেস্ট করুন বা cmd চালিত করুন:

সেমিডি 1: সুডো টাচ / ইউএসআর / বিন / ডিএনফুপডেট-সিকিউরিটি এবং& sudo chmod + x / usr / bin / dnfupdate- সুরক্ষা

সেমিডি 2: সুডো গেডিট / ইউএসআর / বিন / ডিএনফুপডেট-সুরক্ষা

এরপরে পাইথন কোডটি ফাইল 'dnfupdate- সুরক্ষা' এ পেস্ট করুন, এটি সংরক্ষণ করুন

এক্সিকিউশন সেন্টিমিডি: sudo dnfupdate- সুরক্ষা

#!/usr/bin/python
"""
DESCRIPTION: Check for security updates and insert all the packages into "dnf update" as argument.
"""
import os

updateList = ''; x = ''

for x in os.popen("dnf -q updateinfo list sec | awk '{print $3}'"):
    x = x.strip()
    updateList = updateList+' '+x

if x != '':
    os.system('dnf update '+updateList)
else:
    print 'No security updates available at this time!'

1
"আরও নিখুঁত"?
don_crissti

এর ফলে বেশি নির্ভুল সমাধান একটি IndentationError দেয় (কারণ import osলাইন (এমনকি যদি আপনি প্রতিটি লাইনে থেকে 3 নেতৃস্থানীয় স্পেস সরাতে) শুরুতে না এবং এমনকি যদি আমি তোমার অসঙ্গত খাঁজ সংশোধন, আমি একটি বাক্যগঠনের ত্রুটি
Anthon

পুরানো উত্তরগুলি বর্জন করা আপনার করা উচিত নয়। কিছু লোক আপনার কোড সম্পর্কে একই জিনিসটি ভাবতে পারে, যেমন এটি সফল হয়।
মেলবারস্লান

সমস্ত সমালোচক ইতিবাচকভাবে গৃহীত হয়েছে। আমি কয়েকটি সম্পাদনা করেছি। আমি সমস্ত পরীক্ষা করেছি এবং এটি ফেডোরা / রেডহ্যাট ভিত্তিক সিস্টেমে কাজ করা উচিত ... আমি কাজ না করার আগে পদ্ধতিটি বলতে চাইছিলাম না তবে আমার ক্ষেত্রে সফল হয় ?! :)
লেকটোস ল্যাকিয়াস

সুতরাং আপনি টমোটের উত্তর থেকে অজগর স্ক্রিপ্টগুলিতে পরিবর্তন dnf upgrade -yকরে শেল কমান্ডগুলি রেখেছেন dnf update। অন্য কোন উল্লেখযোগ্য পার্থক্য?
মার্সিন
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.