แม้ว่าคำตอบของ womble ข้างต้นนั้นดี แต่มันก็ไม่ได้ผลสำหรับฉันและฉันต้องทำการวิจัยเพิ่มเติมเพื่อให้ได้ผล 100% โดยไม่ต้องใส่ข้อมูล ฉันคิดว่าฉันจะแบ่งปันผลลัพธ์ในลักษณะที่กระชับเพื่อทำให้สิ่งต่าง ๆ ง่ายขึ้นสำหรับผู้เข้าชมในอนาคต
ต่อไปนี้เป็นสคริปต์ที่จะทำงานตามคำแนะนำการอัพเกรดหมายเหตุเดเบียน 8 (ส่วนใหญ่) พร้อมกับแฟล็กและตัวแปรสภาพแวดล้อมที่จะทำให้ไม่ต้องใส่ข้อมูล ( echo
s ใช้สำหรับการดีบั๊กและสามารถลบออกได้ - แต่ฉันขอแนะนำให้เก็บไว้ดังนั้นหากสคริปต์ติดคุณจะรู้ว่าอยู่ที่ไหน)
#!/bin/bash
apt-get remove apt-listchanges --assume-yes --force-yes &&
#using export is important since some of the commands in the script will fire in a subshell
export DEBIAN_FRONTEND=noninteractive &&
export APT_LISTCHANGES_FRONTEND=none &&
#lib6c was an issue for me as it ignored the DEBIAN_FRONTEND environment variable and fired a prompt anyway. This should fix it
echo 'libc6 libraries/restart-without-asking boolean true' | debconf-set-selections &&
echo "executing wheezy to jessie" &&
find /etc/apt -name "*.list" | xargs sed -i '/^deb/s/wheezy/jessie/g' &&
echo "executing autoremove" &&
apt-get -fuy --force-yes autoremove &&
echo "executing clean" &&
apt-get --force-yes clean &&
echo "executing update" &&
apt-get update &&
echo "executing upgrade" &&
apt-get --force-yes -o Dpkg::Options::="--force-confold" --force-yes -o Dpkg::Options::="--force-confdef" -fuy upgrade &&
echo "executing dist-upgrade" &&
apt-get --force-yes -o Dpkg::Options::="--force-confold" --force-yes -o Dpkg::Options::="--force-confdef" -fuy dist-upgrade