অ্যাপ / অপরিবর্তিত-আপগ্রেড স্টল শাটডাউন


14

কখন unattended-upgradesইনস্টল করা হবে, "অপ্রয়োজনীয় আপগ্রেড শাটডাউন শুরু করার সময়" 10 টির মধ্যে 9 টি শাটডাউন / রিবুটগুলি স্তব্ধ। এই হ্যাং 5-10 মিনিটের জন্য শাটডাউন প্রক্রিয়াটিকে স্টল করে।

যদি আমি এর মাধ্যমে অপ্রত্যাশিত আপগ্রেডগুলি অক্ষম করি /etc/apt/apt.conf.d/20auto-upgrades and/or 50unattended-upgrades, সমস্যা দেখা দেয়।

আমি যদি শাটডাউন / রিবুট ( sudo service unattended-upgrades stop) এর আগে পরিষেবাটি বন্ধ করে দিই তবে এখনও সমস্যা দেখা দেয়।

আমি যদি প্যাকেজটি অপসারণ করি ( sudo apt remove unattended-upgrades) তবে আর সমস্যা দেখা দেয় না।

এটি নতুনভাবে ইনস্টল হওয়া সংস্করণে ঘটে Ubuntu Server 16.04.1(উভয়ই unattended-upgradesইনস্টল জিইউআই ইনস্টল করে বা মেশিনে ইনস্টল না করে আপ্যাটেন্ডেড করা হয়েছে)

উভয়ই Kern.log & syslogশাটডাউন প্রক্রিয়াটি দেখায় না (আমি বিশ্বাস করি কারণ ফাইল সিস্টেমগুলি ইতিমধ্যে আনমাউন্ট হয়েছে)

অন্য কেউ এই সমস্যাটি দেখেছেন বা সমাধান করেছেন? পাগল হয়ে এটির সমস্যা সমাধানের চেষ্টা করছে।


একটি 16.04.1 পরীক্ষার ভিএম পুনরুত্পাদন করতে অক্ষম। এখানে শাটডাউন দেরি হচ্ছে না।
ব্যবহারকারীর 3535733

এটি কি হার্ডওয়ার ভিত্তিক হতে পারে? unattended-upgradesশাটডাউন চলাকালীন কী ঘটে তা আমি পুরোপুরি নিশ্চিত নই ।
গারুলন 245136

আমি ভাবছি কেন আপনি শাটডাউন করার সময় সর্বদা চালাচ্ছেন: ইউ ইউ কোনও ডেমন নয়; এটি কেবল একটি স্ক্রিপ্ট যা প্রতিদিন একবারে সংক্ষেপে চলে এবং তারপরে সমাপ্ত হয়।
ব্যবহারকারী535733

দেখে মনে হচ্ছে যে শাটডাউন প্রক্রিয়াটি ইউএসটি চালানোর চেষ্টা করে এমন পর্যায়ে যেখানে সমস্ত ফাইল সিস্টেম বাতিল হয়ে যায়। এটি /etc/rc6.d/ বা /etc/rc0.d/ লিঙ্কগুলি হিসাবে নিয়ন্ত্রণ করা বলে মনে হচ্ছে না আমি সমস্ত লিঙ্ক সরিয়ে ফেলেছি এবং প্রক্রিয়াটি এখনও শাটডাউন চলাকালীন চলছে।
গারুলন 245136

2
'শাটডাউন চালান' অপশনটির জন্য /etc/apt/apt/conf.d/50unattended-upgrades এ দেখুন (লাইন 25 এর আশেপাশে)। নিশ্চিত করুন এটি 'মিথ্যা' বা মন্তব্য করেছে।
ব্যবহারকারীর 3535733

উত্তর:


14

মূল কারণটির কাছাকাছি যাওয়ার জন্য চারদিকে তাকাচ্ছেন

সমস্যাটি মনে হচ্ছে স্ক্রিপ্টটি শাটডাউন চলমান।

আমি সংশ্লিষ্ট ফাইলটি এর সাথে চিহ্নিত করেছি:

find /etc/systemd -name *unattended*

যা আমাকে সম্পর্কিত সিস্টেমযুক্ত স্ক্রিপ্ট দেয়:

/etc/systemd/system/shutdown.target.wants/unattended-upgrades.service

যা তখন আমাকে স্ক্রিপ্টটি শাটডাউনে কার্যকর করা হয়েছিল:

/usr/share/unattended-upgrades/unattended-upgrade-shutdown

মূল কারণটি অনুসন্ধান করতে আরও তদন্ত করা হচ্ছে

এই স্ক্রিপ্টের মধ্যে /etc/apt/apt.conf.d/50unattended-upgrades -> অপরিবর্তিত-আপগ্রেড :: ইনস্টলঅনশুটডাউন বিভাগের সাথে সম্পর্কিত 120 লাইন বিভাগে একটি বিভাগ রয়েছে

120 / usr / শেয়ার / অপ্রচলিত আপগ্রেড / অপরিবর্তিত-আপগ্রেড-শাটডাউন এর লাইন 120:

if apt_pkg.config.find_b("Unattended-Upgrade::InstallOnShutdown", False):

সমস্যা: এটি "মিথ্যা" শব্দটি প্রত্যাশা করে যখন অ্যাপ্ট কনফিডে আমাদের "মিথ্যা" যুক্ত করা উচিত (সঠিক স্ট্রিং তুলনা)!

সমাধান

আমি স্টলিং শাটডাউনটি 3 টি বিভিন্ন উপায়ে ঠিক করতে / কাজ করতে সক্ষম হয়েছি:

কর্মক্ষেত্র ক

  • /etc/apt/apt.conf.d/50unattended-upgrades এ "false" এর পরিবর্তে "false" লিখুন

একটি সত্যিকারের ফিক্স সরবরাহ না করা অবধি এই সেটিংটি নিরাপদে আপগ্রেড করা হবে কারণ আমরা এখানে যে ফাইলটি পরিবর্তন করেছি তা অপরিবর্তিত-আপগ্রেডের আপডেট দ্বারা ওভাররাইট করা যায় না। সমস্যা: মূল কারণটি স্থির হয়ে গেলে এটি আবার স্টলিং শাটডাউনের ফলস্বরূপ হয় তাই আমি এটিকে ওয়ার্কারআউন্ড বিয়ের সাথে একত্রিত করার পরামর্শ দিই suggest

বা: কার্যকরী বি

  • ডিফল্ট থেকে 15 সেকেন্ডে /etc/systemd/system/shutdown.target.wants/unattended-upgrades.service এ অপেক্ষা সময় কমিয়ে দিন:

vim /etc/systemd/system/shutdown.target.wants/unattended-upgrades.service

[পরিষেবা]
টাইপ করুন = oneshot
ExecStart = / usr / share / সঙ্গিহীন-আপগ্রেড / সঙ্গিহীন-আপগ্রেড হরতাল
TimeoutStartSec = 15

এই সেটিংটি নিরাপদে আপগ্রেড করা হয়নি কারণ আমরা এখানে যে ফাইলটি পরিবর্তন করেছি তা অপ্রত্যাশিত-আপগ্রেডের আপডেটের মাধ্যমে ওভাররাইট হয়ে যেতে পারে। এগুলি ছাড়াও কোনও কিছু ঠিক করা থেকে দূরে তবে এটি নিশ্চিত করবে যে আপনার সিস্টেমটি বন্ধ হয়ে যাওয়ার সময় কয়েক মিনিট অপেক্ষা করবে না। মনে রাখবেন যে অপ্রয়োজনীয়-আপগ্রেডগুলি আপগ্রেড করার পরে আপনাকে এটি আবার সেট করতে হতে পারে!

বা: ফিক্স সি (উপরের দিকে রিপোর্ট করতে হবে)

  • "মিথ্যা" পরিবর্তে "মিথ্যা" প্রত্যাশা করার জন্য / ইউএসআর / শেয়ার / অপ্রচলিত আপগ্রেডগুলি / অবরুদ্ধ-আপগ্রেড-শাটডাউন

প্যাচিং / ইউএসআর / শেয়ার / অপ্রচলিত আপগ্রেড / অপরিবর্তিত-আপগ্রেড-শাটডাউন:

--- / টিএমপি / অপরিবর্তিত-আপগ্রেড-শাটডাউন 2017-02-03 14: 53: 03.238103238 +0100
+++ / টিএমপি / অপরিবর্তিত-আপগ্রেড-শাটডাউন_ফিক্স 2017-02-03 14: 53: 17.685589001 +0100
@@ -117,7 +117,7 @@
     # চালাও এটা
     p = কিছুই নয়
     apt_pkg.init_config ()
- যদি apt_pkg.config.find_b ("অবিরত-আপগ্রেড :: ইনস্টলআউটশুটডাউন", মিথ্যা):
+ if apt_pkg.config.find_b ("অবিরত-আপগ্রেড :: ইনস্টলআউটশুটডাউন", মিথ্যা):
         env = copy.copy (os.en वातावरण)
         env ["UNATTENDED_UPGRADES_FORCE_INSTALL_ON_SHUTDOWN"] = "1"
         logging.debug ("শাটডাউন মোডে অপ্রচলিত আপগ্রেডগুলি শুরু করা")

উপসংহার

কেবলমাত্র শেষ টিবিএইচ একটি আসল ফিক্স। আসল ফিক্স বাস্তবায়িত না হওয়া পর্যন্ত অন্য দুটি অপশনই কেবলমাত্র কর্মক্ষেত্র।

এটি প্রবাহিত করতে হবে এবং এটি উভয় বিতরণের জন্য ডেবিয়ান (দেবিয়ান স্ট্রেচে পরীক্ষিত) এবং উবুন্টু (উবুন্টু ১ 16.০৪.১-তে পরীক্ষিত) উভয়কেই প্রভাবিত করে।

আমি এখানে একটি বাগ রিপোর্ট খুললাম: https://bugs.launchpad.net/ubuntu/+source/unattended-upgrades/+bug/1661611


2
apt_pkg.config.find_b () একটি বুলিয়ান একটি স্ট্রিং নয় returns "Find_b (কী [, ডিফল্ট = মিথ্যা]] ool বুল কীতে সঞ্চিত বুলিয়ান মান বা অনুরোধকৃত বিকল্পটি সেট না করা থাকলে বুল অবজেক্টের ডিফল্ট দ্বারা প্রদত্ত মানটি ফিরিয়ে দেয়" " apt.alioth.debian.org/python-apt-doc/library/… সুতরাং মিথ্যা পরীক্ষা করা সঠিক হওয়ায় এটি অপরিবর্তিত-আপগ্রেড-শাটডাউন কোনও ত্রুটি নয়।
ব্রায়ান মারে

উপরের লঞ্চপ্যাড বাগ রিপোর্ট লিঙ্কটি অনুসরণকারী যে কেউ দেখতে পাবে, এই সমস্যাটি আসলে একটি ব্যর্থ স্ট্রিং তুলনার কারণে হয়নি, তবে এর পরিবর্তে একটি সিস্টেমযুক্ত সিকোয়েন্সিং বাগের কারণে হয়েছিল যা এখনই ঠিক করা হয়েছে
সাম্পব্লুকপার

1

কার্যকারণ হিসাবে আমি এই স্ক্রিপ্টটি এটি ঠিক করতে ব্যবহার করি:

#!/usr/bin/env bash

sed -i '/if apt_pkg.config.find_b/s/False/false/' /usr/share/unattended-upgrades/unattended-upgrade-shutdown

exit

আশা করি খুব শীঘ্রই এটি উত্সাহিত হবে।


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