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


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.