কোনও সংগ্রহস্থলের জন্য কীভাবে নিরব স্বয়ংক্রিয় আপডেটগুলি সক্ষম করবেন?


43

আমি গুগল ক্রোমের জন্য কীভাবে নিরব স্বয়ংক্রিয় আপডেটগুলি সক্ষম করব তা এখানে পড়েছি । যাইহোক, আমার কাছে অন্যান্য সংগ্রহস্থল রয়েছে যেমন স্পটিফাই, ডকি এবং অন্যান্য যার জন্য আমি নীরব আপডেটগুলি সক্ষম করতে চাই।

আমি আমার উবুন্টু 10.04 সিস্টেমে এটি করার চেষ্টা করছি। তবে এই প্রশ্নটি সমস্ত উবুন্টু সংস্করণে প্রযোজ্য। আমার অদৃশ্য-আপগ্রেড প্যাকেজ ইনস্টল আছে।

কিভাবে আমি এটি করতে পারব?


আপনি কি নীরব সুরক্ষা আপডেট চান ? বা সমস্ত আপডেট হস্তক্ষেপ ছাড়াই ইনস্টল করা হয়েছে? কেন?
ডেভিড 6

1
খুব ভাল ব্যবহারকারীর সংগ্রহস্থল সহ সমস্ত আপডেট।
নিক 90

উত্তর:


66

প্রথমে ইনস্টল করুন gksu:

sudo apt-get install gksu

আপনার সিস্টেমের জন্য অপ্রয়োজনীয় আপডেটগুলি সক্রিয় করার সহজতমটি হল আপনার প্রিয় পাঠ্য সম্পাদকের সাহায্যে ফাইলটি 50unattended-upgradesভিতরে সম্পাদনা করা /etc/apt/apt.conf.d/, উদাহরণস্বরূপ:

gksu gedit /etc/apt/apt.conf.d/50unattended-upgrades

এতে আপনাকে অনুমোদিত অনুমোদিত উত্স ব্লকের মন্তব্য করা বিভাগগুলি মন্তব্য করতে হবে

পরিবর্তন

Unattended-Upgrade::Allowed-Origins {
        "${distro_id} ${distro_codename}-security";
//      "${distro_id} ${distro_codename}-updates";
//      "${distro_id} ${distro_codename}-proposed";
//      "${distro_id} ${distro_codename}-backports";
};

প্রতি

Unattended-Upgrade::Allowed-Origins {
        "${distro_id} ${distro_codename}-security";
        "${distro_id} ${distro_codename}-updates";
//      "${distro_id} ${distro_codename}-proposed";
//      "${distro_id} ${distro_codename}-backports";
};

উবুন্টু রেপোসে নেই এমন সফ্টওয়্যারগুলির জন্য যা আপনি আপডেট করতে চান তা আপনাকে ফাইলে একটি উত্স এবং সংরক্ষণাগার যুক্ত করতে হবে। আপনার পিপিএগুলির জন্য সেগুলি কী তা ফোল্ডারটি খোলার জন্য /var/lib/apt/lists/, এটি প্রতিটি প্যাকেজ সংস্থার জন্য রাষ্ট্রীয় তথ্যের জন্য সঞ্চয় স্থান। আপনি যা সন্ধান করছেন সেটি হ'ল নামে প্রকাশের সাথে শেষ হওয়া ফাইলগুলি ।

আপনার পাঠ্য সম্পাদক সহ একটি খুলুন, যেমন গুগল ক্রোমের জন্য:

gedit /var/lib/apt/lists/dl.google.com_linux_chrome_deb_dists_stable_Re कृपया

Origin: Google, Inc.
Label: Google
Suite: stable
Codename: stable
Version: 1.0
Date: Thu, 17 Nov 2011 19:09:01 +0000
Architectures: i386 amd64
Components: main
Description: Google chrome-linux repository.

উত্সটি সুস্পষ্ট ( Origin: Google, Inc.) এবং সংরক্ষণাগারটি স্যুট স্যুট ( Suite: stable) এর নীচে যা কিছু থাকবে ।

যদি হয় Originবা Suiteঅনুপস্থিত থাকে তবে তারা খালি স্ট্রিং হবে। তবে মনে রাখবেন যে উভয়ই যদি নিখোঁজ থাকে তবে সম্ভবত একই সমস্যাটি সহ অন্যান্য উত্সগুলি ব্যতীত অপ্রত্যাশিত আপগ্রেড দ্বারা সেই উত্সটি ব্যবহার করা সম্ভব হবে না।

আপনি এই 2 টি লাইন নোট করার পরে আপনার 50unattended-upgradesফাইলটি সম্পাদনা করতে হবে এবং "<origin>:<archive>";উদাহরণগুলির জন্য এই বিন্যাসটি ব্যবহার করে লাইনগুলি যুক্ত করতে হবে "Google\, Inc.:stable";

গুগল ক্রোমের উত্স কৌতূহলোদ্দীপক কারণ এটিতে একটি স্পেস এন্ড পয়েন্ট এবং একটি কমা রয়েছে তবে বেশিরভাগ রিলিজ ফাইলগুলি পড়া সহজ হবে।

অন্য উদাহরণ হিসাবে, নোড জেএস উত্সNode Source একটি সংরক্ষণাগার নয় তবে একটি উত্স নির্দিষ্ট করে ( ); যাতে আপনি এটি সাথে মেলে করতে পারেন "Node Source:";

অনুমোদিত শিকড় -শৈলীর ওয়াইল্ডকার্ডগুলি (বিশেষত, পাইথনের fnmatch () সহ ) মঞ্জুরিপ্রাপ্ত অরিজিন্স মিলছে । আপনি যদি বিরোধী উত্সগুলি অন্তর্ভুক্ত না করার জন্য যথেষ্ট সতর্ক হন তবে এর মতো জিনিসগুলি লেখা সম্ভব "Node *:*";


আপনার 50unattended-upgradesফাইলটি সম্পাদনা করার আগে একটি ব্যাকআপ তৈরি করতে ভুলবেন না , এটি দিয়েই করুন sudo cp /etc/apt/apt.conf.d/50unattended-upgrades /etc/apt/apt.conf.d/50unattended-upgrades.bak

ফাইলটিতে করা পরিবর্তনগুলি পরীক্ষা করতে আপনি sudo unattended-upgradesপ্যারামিটার --dry-runএবং ব্যবহার করতে পারেন --debug

--dry-run এটি অপ্রতিদ্বন্দ্বিত আপগ্রেড চক্রটি চালাবে কেবলমাত্র এটি আপগ্রেডগুলি ইনস্টল করবে না, কেবলমাত্র যাচাই করুন এবং যাচাই করুন যে সবকিছু ঠিক আছে।

--debug ভার্বোজ মোড সক্ষম করবে।

আপনি সর্বদা unattended-upgradesএ জন্য লগ পরীক্ষা করতে পারেন /var/log/unattended-upgrades/unattended-upgrades.log


আপনি ফাইলটি সম্পাদনা করে অপরিবর্তিত আপগ্রেডগুলির কনফিগারেশনটি পরিবর্তন করতে পারেন, কনফিগারেশনের /etc/apt/apt.conf.d/10periodicবিকল্পগুলি /etc/cron.daily/aptস্ক্রিপ্ট শিরোনামে রয়েছে। অপরিবর্তিত আপগ্রেডগুলির ফ্রিকোয়েন্সি কনফিগার করতে তাদের পড়ুন।


2
ধন্যবাদ ... খুব বিস্তারিত! আমি জিজ্ঞাসা করতে পারি আপনি গুগলের পরে কেন \ রাখছেন?
নিক 90

উত্সের বিশেষ চরিত্রগুলির কারণে, এটি কমাটির জন্য একটি পালানোর চরিত্র। আপনি যে সর্বাধিক উত্স খুঁজে পান সেগুলির এটি থাকবে না।
ব্রুনো পেরেইরা

1
@ জোস নো, এটি সেভাবেই কাজ করে --dry-runযাচাই করে দেখাবে যে আপডেট হওয়া তালিকায় কোনও আপডেট রয়েছে কিনা এবং সেগুলি আপনাকে আউটপুট দেয় কিনা তা যাচাই করবে , আপনার কনফিগারেশন /etc/cron.daily/aptযা আছে তা ম্যানুয়ালি চালিয়ে তালিকাগুলি আপডেট করে যা আমার মনে হয় সেই তালিকাগুলি আপডেট করে না।
ব্রুনো পেরেইরা

1
সংশ্লিষ্ট রিলিজ ফাইল কোনও স্যুটের তালিকা না রাখলে সংরক্ষণাগার নাম হিসাবে আমার কী রাখা উচিত?
hsivonen

2
দয়া করে এখানে স্বয়ংক্রিয় পদ্ধতিটিও পরীক্ষা করুন: Askubuntu.com/a/792621/417607
অভিষেক ভাটিয়া

14

@ ব্রুনো পেরিরার উত্তরের জন্য স্বয়ংক্রিয় পদ্ধতি: (উত্তরটি দরকারী মনে হলে দয়া করে গিথুব রেপো অভিনীত বিবেচনা করুন))

কোড লিঙ্ক: https://github.com/abhigenie92/unattended_upgrades_repos

  • যোগ করতে সংগ্রহস্থলগুলি পরীক্ষা করুন:

    $ python automatic_upgrade.py 
    Add repos:
    "Ubuntu:xenial";
    "LP-PPA-kubuntu-ppa-backports:xenial";
    "LP-PPA-tuxonice:xenial";
    "LP-PPA-webupd8team-sublime-text-3:xenial";
    
    Skipping files due to not present origin or suite. Or origin being a url.:
    packagecloud.io_slacktechnologies_slack_debian_dists_jessie_InRelease
    tiliado.eu_nuvolaplayer_repository_deb_dists_xenial_InRelease
    
  • /etc/apt/apt.conf.d/50unattended-upgradesএগুলি অন্তর্ভুক্ত করতে এখন সম্পাদনা করুন:

    // Automatically upgrade packages from these (origin:archive) pairs
    Unattended-Upgrade::Allowed-Origins {
        "${distro_id}:${distro_codename}-security";
        "${distro_id}:${distro_codename}-updates";
        "${distro_id}:${distro_codename}-proposed";
        "${distro_id}:${distro_codename}-backports";
      "Ubuntu:xenial";
      "LP-PPA-kubuntu-ppa-backports:xenial";
      "LP-PPA-tuxonice:xenial";
      "LP-PPA-webupd8team-sublime-text-3:xenial";
    };
    ....
    ....
    
  • সেগুলি অন্তর্ভুক্ত রয়েছে কিনা তা পরীক্ষা করে দেখুন:

    $ sudo unattended-upgrade --dry-run --debug
    Initial blacklisted packages: 
    Initial whitelisted packages: 
    Starting unattended upgrades script
    Allowed origins are: ['o=Ubuntu,a=xenial-security', 'o=Ubuntu,a=xenial-updates', 'o=Ubuntu,a=xenial-proposed', 'o=Ubuntu,a=xenial-backports', 'o=Ubuntu,a=xenial', 'o=LP-PPA-kubuntu-ppa-backports,a=xenial', 'o=LP-PPA-tuxonice,a=xenial', 'o=LP-PPA-webupd8team-sublime-text-3,a=xenial']
    pkgs that look like they should be upgraded: 
    Fetched 0 B in 0s (0 B/s)                                                                                  
    fetch.run() result: 0
    blacklist: []
    whitelist: []
    No packages found that can be upgraded unattended and no pending auto-removals
    

@ অ্যান্ডি হোলস স্বাগতম, যদি সম্ভব হয় তবে গিথুব সংগ্রহশালা অভিনীত বিবেচনা করুন। Link- github.com/abhigenie92/unattended_upgrades_repos
অভিষেক ভাটিয়া

: আপনি কিভাবে dpkg একইরূপে প্যাকেজ কনফিগারেশন ফাইল পরিবর্তন করার প্রচেষ্টা সংশোধন করতে পারেন unix.stackexchange.com/questions/138751/...
deoren

এই অজগর স্ক্রিপ্টটি দুর্দান্ত, তবে আমার রাস্পবেরি পাই চলমান প্রসারনের জন্য রেডএমইএমডি 50 বর্ধিত-আপগ্রেডের জন্য যা প্রস্তাব করেছিল তা আমি সংশোধন করতে হয়েছিল। অনুমোদিত উত্স যেমন, যেমন "Raspberry:stable";কাজ করে না তা নির্দিষ্ট করে । পরিবর্তে আমি ব্যবহার করেছি, উদাহরণস্বরূপ,"o=Raspberry, a=stable";
সিফোগেলবার্গ

5

সম্পাদনা /etc/apt/apt.conf.d/50unattended-upgrades, নিম্নলিখিত যুক্ত করুন:

Unattended-Upgrade::Origins-Pattern {
        "origin=*";
};

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


হ্যাঁ, পরিষ্কার এবং সংক্ষিপ্ত উত্তরের জন্য ধন্যবাদ। তবে এমন প্যাকেজগুলি রয়েছে যা origin:''উদাহরণস্বরূপ ডেটাডোগ-এজেন্ট থেকে site:'apt.datadoghq.com'"origin=";সেক্ষেত্রে খালি উত্স সহ প্যাকেজগুলি এড়িয়ে না যাওয়ার সাথে যুক্ত করার প্রয়োজন হবে । তবে তার "site=*";পরিবর্তে কেবল ব্যবহার করা ভাল "origin=*";
পল টোবিয়াস

আমি একটি ফাইলের মধ্যে আমার নিজস্ব ভান্ডার যুক্ত করেছি /etc/apt/sources.list.d/my_repo.list, তবে এটি প্যাকেজটি আপগ্রেড করে না। ম্যানুয়ালি এটি দিয়ে কাজ করে sudo apt update। কোন সূত্র কিভাবে?
স্যান্ডার

এটি কি ম্যানুয়াল আপডেট হিসাবে একই উত্সগুলি ব্যবহার করে, অর্থাৎ এটি অক্ষম উত্সগুলিকে উপেক্ষা করে?
সিলিকোম্যান্সার

3

করতে একটি পুন: প্রকাশ অত্যাচার ক্রন নিম্নলিখিত এ স্বয়ংক্রিয় আপডেট শুরু করার জন্য নির্দেশাবলী আছে লিংক । ক্রোন বন্ধ করার পদ্ধতিটি এটি

sudo service anacron stop
sudo service cron stop
sudo rm -rf /var/run/unattend* /var/run/cron* /var/run/anacron*
sudo rm -rf /var/lib/apt/periodic/*

এবং স্বয়ংক্রিয় আপডেটটি এখনই ঘটানোর জন্য ক্রোন পুনরায় চালু করতে হবে (বা কমপক্ষে কয়েক মিমিটের মধ্যে)

sudo service cron start
sudo anacron -fn

কিভাবে এটা কাজ করে

বেশ কয়েকটি জিনিস এটি চালনার জন্য ট্রিগার করবে।

  • এটি /etc/cron.dailyক্রোন দ্বারা চালিত থেকে বিশেষভাবে সরিয়ে দেওয়া হয় /etc/cron.daily/apt। ক্রোন /etc/cron.dailyসকাল 6.25 এ চলেছে (দেখুন /etc/crontab)

  • উপাচা থেকে চলে অ্যানক্রন? এবং এটি /etc/cron.dailyআপটাইম 5 মিনিটের পরে বন্ধ হবে (দেখুন /etc/anacrontab)

    নোটটি APT::Periodic::RandomSleepসেট করা যেতে পারে /etc/apt/apt.conf.d/10periodic, তবে 1800s (30 মিনিট) এ ডিফল্ট হয় তাই /etc/cron.daily/aptরান হওয়ার পরে 30 মিনিট পর্যন্ত কোনও আপডেট হতে পারে না ।

লগিন

যদি এটি কাজ করে তবে এই ফোল্ডারে জিনিসগুলি লগ ইন করা উচিত /var/log/unattended-upgrades


এটি আমার জন্য বিশেষভাবে কার্যকর ছিল কারণ আমার ভার্চুয়াল হোস্টিং সরবরাহকারী মনে করেছিলেন /etc/cron.daily/aptযে ডিফল্ট উবুন্টু 12.04 ইনস্টলেশন থেকে সরিয়ে ফেলা ভাল ধারণা হবে - সুতরাং স্বয়ংক্রিয় এপিটি আপডেটগুলি গ্রহণ করা হচ্ছে না :-( সার্ভারফল্ট উত্তর সার্ভারফল্ট / এ / 5868329/ 95570 যে ফাইল পেয়ে দেওয়া বিবরণ পুনরায় সৃষ্টি করেছেন।
অ্যালেক্স Dupuy
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.