yum update --security
ติดตั้งเฉพาะการปรับปรุงความปลอดภัย ฉันคิดว่ามันเป็นส่วนเสริมจากปลั๊กอินความปลอดภัยยำ
มีคำสั่ง dnf ที่เทียบเท่าหรือไม่ (dnf แทนที่ yum ใน Fedora 22)
yum update --security
ติดตั้งเฉพาะการปรับปรุงความปลอดภัย ฉันคิดว่ามันเป็นส่วนเสริมจากปลั๊กอินความปลอดภัยยำ
มีคำสั่ง dnf ที่เทียบเท่าหรือไม่ (dnf แทนที่ yum ใน Fedora 22)
คำตอบ:
อ้างอิงจาก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
-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"
คุณสามารถใช้dnf-automaticด้วยการตั้งค่าสามแบบ:
apply_updates = yes
download_updates = yes
upgrade_type = security
(ไฟล์กำหนดค่าเริ่มต้นคือ/etc/dnf/automatic.conf
)
หรือใช้:
dnf updateinfo list security
เพื่อรับการอัปเดตที่มีอยู่ทั้งหมดจากนั้นอัปเดตด้วยตนเอง
คุณสามารถใส่dnf updateinfo list updates security
ในห่วงสำหรับสคริปต์ cli หรือทุบตี ฉันยังคงแนะนำอย่างยิ่งให้ตรวจสอบการอัปเดตความปลอดภัย แต่คุณสามารถอนุญาตให้ใช้-y
คำสั่งในการdnf update
นี่คือสิ่งที่เหมาะกับฉันขึ้นอยู่กับความต้องการ:
for i in $(dnf updateinfo list updates security | grep -Ei ^fedora | cut -d' ' -f3) ; do dnf update $i; done
หรือสั้นกว่าเล็กน้อยด้วย awk (โปรดทราบว่าวิธีนี้ใช้ไม่ได้กับ --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
วิธีการที่เสนอมาก่อนไม่เป็นที่พอใจในกรณีของฉัน คุณสามารถลองอันนี้และมันอาจจะสมบูรณ์แบบกว่านี้ สร้างไฟล์ที่มีชื่อ "dnfupdate-security" แล้ววางสายไพ ธ อนด้านล่างหรือรัน cmd:
cmd1: sudo touch / usr / bin / dnfupdate-security && sudo chmod + x / usr / bin / dnfupdate- ความปลอดภัย
cmd2: sudo gedit / usr / bin / dnfupdate-security
ถัดไปวางรหัสหลามลงในไฟล์ 'dnfupdate-security', บันทึกไว้
การดำเนินการ cmd: sudo dnfupdate-security
#!/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!'
import os
อยู่ในไม่ได้อยู่ที่จุดเริ่มต้นของเส้น (แม้ว่าคุณจะลบช่องว่างนำ 3 จากแต่ละบรรทัด) และแม้ว่าผมจะแก้ไขเยื้องไม่สอดคล้องกันของฉันได้รับ SyntaxError ได้..
dnf upgrade -y
dnf update
มีความแตกต่างอื่น ๆ อีกมากมาย?