শেল স্ক্রিপ্ট থেকে অপ্রয়োজনীয় আপগ্রেডগুলি সক্ষম করা


17

আমার উদ্দেশ্যে নতুন উবুন্টু ভার্চুয়াল মেশিনগুলি স্বয়ংক্রিয়ভাবে কনফিগার করার জন্য আমার কাছে একটি শেল স্ক্রিপ্ট রয়েছে। আমি এই স্ক্রিপ্টটি ইনস্টল এবং সক্ষম করতে চাই unattended-upgrades, তবে ব্যবহারকারীর মিথস্ক্রিয়া ছাড়াই কীভাবে এটি করা যায় তা আমি বুঝতে পারি না।

আপগ্রেড সক্ষম করার স্বাভাবিক উপায় হ'ল dpkg-reconfigure unattended-upgradesতবে অবশ্যই এটি ইন্টারেক্টিভ। নন-ইন্টারেক্টিভ সামনের প্রান্তটি কোনও প্রশ্ন জিজ্ঞাসা করা এড়িয়ে যায়, এবং পাঠ্যের সম্মুখ প্রান্তটি তার আই / ও টিটিটি দিয়ে স্ট্যান্ডিন / স্টাডাউটের সাথে না করার জন্য দৃ bound়প্রতিজ্ঞ এবং দৃ determined়প্রতিজ্ঞ বলে মনে হয়।


1
আমি এই সরঞ্জামটি আগে ব্যবহার করি নি তবে এটি দেখে মনে হচ্ছে এটি /etc/apt/apt.conf.d/20auto-upgrades ফাইলের দুটি লাইনে একটি লিখেছে। আপনি যদি ফাইলটি ম্যানুয়ালি লিখেন তবে এটি কি কাজ করবে?
mfisch

উত্তর:


20

আপনার পছন্দমতো কনফিগার করার পরে /etc/apt/apt.conf.d/20auto-upgrades এর একটি অনুলিপি করুন এবং এটি আপনার টার্গেট মেশিনে রেখে দিন। আপনি এটিকে আপনার স্ক্রিপ্টে এম্বেড করতে পারেন, বা আপনি কোনও সার্ভার, বা যে কোনও কিছু থেকে এটি সিএসসি বা উইজেট করতে পারেন।

সুতরাং মূলত আপনার স্ক্রিপ্টটি এরকম কিছু করতে পারে:

apt-get install unattended-upgrades
wget -O /etc/apt/apt.conf.d/20auto-upgrades http://myserver.mytld/confs/20auto-upgrades
/etc/init.d/unattended-upgrades restart

Dpkg- পুনরায় কনফিগার স্ক্রিপ্টটি দিয়ে মোটেও বানরের কোনও কারণ নেই।

আপনি যদি কোনও রিমোট সার্ভার থেকে কনফিড ফাইলটি আনতে না চান তবে এটি খুব সংক্ষিপ্ত এবং সহজ - ডিফল্ট সংস্করণ, যা কেবল সুরক্ষা আপডেটগুলি আনে এবং ইনস্টল করে, এর মতো দেখতে:

APT::Periodic::Update-Package-Lists "1";
APT::Periodic::Unattended-Upgrade "1";

সুতরাং আপনি কেবল নিম্নলিখিতগুলির সাহায্যে কনফিগার ফাইলে সেই লাইনগুলি প্রতিধ্বনিত করতে পারেন:

echo -e "APT::Periodic::Update-Package-Lists \"1\";\nAPT::Periodic::Unattended-Upgrade \"1\";\n" > /etc/apt/apt.conf.d/20auto-upgrades

1

আপনি যদি dpkg-reconfigure ব্যবহার করতে চান, আপনি "debconf-set-Seferences বাছাই করুন" দিয়ে মানটি সেট করতে পারেন, এবং তারপরে একটি অবিচ্ছিন্ন পদ্ধতিতে এটি পুনরায় কনফিগার করতে পারেন।

echo "unattended-upgrades       unattended-upgrades/enable_auto_updates boolean true" | debconf-set-selections; dpkg-reconfigure -f noninteractive unattended-upgrades

0

প্রতিধ্বনিত করতে আপনাকে sudo ব্যবহার করতে হবে /etc/apt/apt.conf.d/20auto-upgrades

if [[ ! -f /etc/apt/apt.conf.d/20auto-upgrades.bak ]]; then
    sudo cp /etc/apt/apt.conf.d/20auto-upgrades /etc/apt/apt.conf.d/20auto-upgrades.bak
    sudo rm /etc/apt/apt.conf.d/20auto-upgrades
    echo "APT::Periodic::Update-Package-Lists \"1\";
    APT::Periodic::Download-Upgradeable-Packages \"1\";
    APT::Periodic::AutocleanInterval \"30\";
    APT::Periodic::Unattended-Upgrade \"1\";" | sudo tee --append /etc/apt/apt.conf.d/20auto-upgrades
fi


0

আমি অপ্রয়োজনীয়-আপগ্রেডগুলি কনফিগার করতে কনফিগারেশন প্যারামিটারগুলি সন্নিবেশ করার পরামর্শ দেব।

sudo touch /etc/apt/apt.conf.d/20auto-upgrades

echo "APT::Periodic::Update-Package-Lists "1"" >> /etc/apt/apt.conf.d/20auto-upgrades

echo "APT::Periodic::Unattended-Upgrade "1" " >> /etc/apt/apt.conf.d/20auto-upgrades

একইভাবে আপনি কনফিগার করতে পারেন / কনফিগার করতে পারেন কনফিগার ফাইল আপনার প্রয়োজন অনুসারে পরামিতি /etc/apt/apt.conf.d/50unattended-upgrades

পরিবর্তনগুলি প্রয়োগ করতে পরিষেবা পুনরায় চালু করতে ভুলবেন না।

/etc/init.d/unattended-upgrades restart
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.