নিম্নলিখিতগুলির চেয়ে সহজ সমাধান আমি খুঁজে পাচ্ছি না। তবুও আশা করা যাচ্ছে যে আরও ভাল উত্তর দিয়ে কেউ প্রবেশ করবেন।
নিম্নোক্ত স্ক্রিপ্ট যা ডাউনগ্রেড কার্যকর করতে পারে
#!/bin/bash
# get a list of installed packages
dpkg --get-selections | awk '{ print $1 }' > all-packages
# run apt-cache policy on each of them, then elaborate with the awk script
apt-cache policy $(<all-packages) |
./get-prev-pkg-vers >old-versions
# install previous version of packages
sudo apt-get --simulate install $(< old-versions)
awk
স্ক্রিপ্ট, নামে get-prev-pkg-vers
হিসাবে অনুসরণ করা হয়
#!/usr/bin/awk -f
/^[^ ]/ {
package = $1
gsub(":", "", package)
search_next = 0
}
/^ [^ ]/ {
installed = 0
version = $1
if (search_next == 1) {
print package "=" version
search_next = 0
}
}
/^ \*\*\* [^ ]/ {
installed = 1
}
/^ [^ ]/ {
branch = $3
if (installed == 1 && branch ~ /proposed/) {
search_next = 1
}
installed = 0
}
স্ক্রিপ্টটি চালানোর সময়, প্রস্তাবিত রেপোটি এখনও অক্ষম করা উচিত হয়নি।
উভয় স্ক্রিপ্টে এক্সিকিউটেবল বিট সেট করতে মনে রাখবেন।
এই পদ্ধতির সাথে একটি সমস্যা হ'ল সমস্ত ডাউনগ্রেড প্যাকেজগুলির ফলস্বরূপ ম্যানুয়ালি ইনস্টল করা হবে (এছাড়াও যেগুলি স্বয়ংক্রিয়ভাবে ইনস্টল করা হয়েছিল)।
নিরাপদ থাকতে, ব্যাশ স্ক্রিপ্টের শেষে --simulate
বিকল্পটি যুক্ত করুন apt-get
।