Ssh সংযোগ হারানোর পরে "অ্যাপটি-আপগ্রেড আপগ্রেস" স্থিতি কীভাবে চেক করবেন?


16

সাধারণত আমি আমার উবুন্টু ইনস্টলেশনটি এসএসএস সংযোগের মাধ্যমে আপগ্রেড করি। কখনও কখনও এই ssh সংযোগটি হারিয়ে যাবে বা আমি ঘটনাক্রমে টার্মিনাল উইন্ডোটি বন্ধ করে দেব।

কম্পিউটারে এসএসএস পুনরায় লগইন করার পরে আপগ্রেডের স্থিতি পরীক্ষা করা সম্ভব?

উত্তর:


34

নিম্নলিখিত লগগুলি আপ্ট আপগ্রেডগুলির সাথে সম্পর্কিত:

/var/log/apt/history.log
/var/log/apt/term.log
/var/log/dpkg.log

কমান্ডটি dist-upgradeথাকলে এখানে অতিরিক্ত লগগুলি থাকে:

/var/log/dist-upgrade

এফওয়াইআই, সাধারণত আপগ্রেডটি পুনরায় চালানো নিরাপদ এবং সংযোগ বিচ্ছিন্ন হওয়ার কারণে প্রক্রিয়াটি মারা যাওয়ার পরে এটিকে চালিয়ে যাওয়া চালিয়ে যাবে pt যাহোক...

একটি জিএনইউ স্ক্রিন প্রাইমার:

কোনও দূরবর্তী সার্ভারে সেশ করার সময় এবং অগ্রভাগে দীর্ঘ-চলমান প্রক্রিয়া শুরু করার সময়, জিএনইউ স্ক্রিন ব্যবহার করা ভাল অনুশীলন। স্ক্রিন একটি ভার্চুয়াল টার্মিনাল সরবরাহ করে যা আপনার এসএসএস সংযোগটি হারিয়ে গেলেও চলতে থাকে।

স্ক্রিন ইনস্টল করুন:

sudo apt-get install screen

পর্দা চালান:

screen

স্ক্রিন চলার পরে আপনি একটি সাধারণ টার্মিনালের মতো একটি কমান্ড লাইন প্রম্পট পাবেন। এরপরে আপনি অভ্যন্তরীণ স্ক্রীন থেকে আপগ্রেড চালাতে পারেন:

sudo apt-get upgrade

এটি কীভাবে কাজ করে তা বোঝার জন্য, Ctrl + a, d চেপে স্ক্রিনটি "বিযুক্ত" করুন । এটি আপনাকে স্ক্রীনবিহীন টার্মিনালে ফিরে আসবে। আপনি চলমান পর্দার তালিকা দেখতে পারেন

screen -list

আপনার যদি কেবল একটি স্ক্রিন চলমান থাকে তবে আপনি এটি দিয়ে পুনরায় সংযুক্ত করতে পারেন:

screen -raAd

(এটি অন্য যে কোনও জায়গায় সংযুক্ত থাকলে এবং এটি বর্তমানে আপনার যে টার্মিনালটিতে চলছে সেটি এটি পুনরায় সংযুক্ত করে re

সাধারণত আপনি কোনও অতিরিক্ত সেটআপ ছাড়াই পর্দার মধ্যে থেকে 'সাধারণত' স্ক্রোল করতে পারবেন না। স্ক্রিনের মধ্যে স্ক্রোল করতে, কার্সার মোডে প্রবেশ করতে Ctrl-Esc টিপুন । তারপরে আপনি জে এবং কে দিয়ে নীচে এবং উপরে স্ক্রোল করতে পারেন । প্রেস Esc চাপুন আবার কার্সার মোড থেকে প্রস্থান করতে।

অতিরিক্ত স্ক্রিন ফাংশনগুলির জন্য নেটটিতে আরও অনেক সংস্থান রয়েছে। এটি সিস্টেম প্রশাসনের জন্য একটি অমূল্য মানক সরঞ্জাম।

আরো দেখুন:


2
+1 টি voor আসলে প্রশ্নের উত্তর এবং পর্দা উল্লেখ :)
Nanne

3
এছাড়াও, screen -x- স্ক্রিন সেশনটিকে "মাল্টিপ্লেয়ার" তৈরি করে অন্যকে আলাদা না করে চলমান স্ক্রিনের সাথে সংযুক্ত করুন।
এসএফ

এটি সহায়ক, তবে উত্তর ছাড়াও প্রতিরোধের অন্তর্ভুক্ত। তদুপরি, সঠিক লগটি দেখার জন্য উদ্ধৃত করা হয়েছে, তবে একটি প্রাথমিক ব্যবহারকারী tail -fকমান্ড এবং পতাকা বিকল্পের সাথে পরিচিত নাও হতে পারে , যা ব্যবহারকারীকে "রি-টাইমে" রিয়েল-টাইমে অগ্রগতি পর্যবেক্ষণ করতে (বা এটি ক্র্যাশ করে দেখুন) করতে দেয় will প্রবেশ করুন." আমি এটির পুরানো এবং স্বীকৃত জানি, তবে আমি মনে করি এই নির্দেশের সেটটিতে লেজ যুক্ত করা উচিত, কারণ এই বিশদটির অভাবে, @TheAnonymousear দ্বারা নীচের উত্তরটি আরও প্রত্যক্ষ এবং বিন্দুতে is @ ডাবলরেবল
ওম্বাম 9090

প্রায়শই sudo dpkg --configure -aযথাযথ আপগ্রেড অবিরত থাকবে, যখন এখনও ব্যয় ছিল।
বিপদ 89

10

ডাবলরেবলের উত্তর ছাড়াও, আমি আজ একটি বিকল্প লক্ষ্য করেছি।

আমি এসএসএইচ আপগ্রেড শুরু করার পরে গত রাতে বিছানায় গিয়েছিলাম। আমি বোকামি করে এটি শুরু করতে ভুলে গিয়েছিলাম screenএবং রাতারাতি আমার এসএসএইচ সেশনটি হারিয়ে ফেলেছি।

আমি rettyযখন গবেষণাটি শুরু করতে চলেছিলাম তখন আমি লক্ষ্য করি rootযে একটি screenঅধিবেশন শুরু হয়েছিল ।

me@GAMMA:~$ ps aux | grep -E 'release|upgrade|apt'
root      6208  0.0  0.0  29140  1628 ?        Ss   01:57   0:05 SCREEN -e \0\0 -L -c screenrc -S ubuntu-release-upgrade-screen-window /tmp/ubuntu-release-upgrader-1h6_g4/raring --mode=server --frontend=DistUpgradeViewText
root      6209  0.2  5.6 287428 93144 pts/2    Ss+  01:57   3:13 /usr/bin/python /tmp/ubuntu-release-upgrader-1h6_g4/raring --mode=server --frontend=DistUpgradeViewText
root      6239  0.0  0.0  50052  1184 ?        Ss   01:58   0:00 /usr/sbin/sshd -o PidFile=/var/run/release-upgrader-sshd.pid -p 1022
root      7306  0.0  4.6 287432 77284 pts/2    S+   02:43   0:08 /usr/bin/python /tmp/ubuntu-release-upgrader-1h6_g4/raring --mode=server --frontend=DistUpgradeViewText
me       26829  0.0  0.0   9440   956 pts/5    S+   22:18   0:00 grep --color=auto -E release|upgrade|apt

সুতরাং আমি rootএর পর্দা তালিকাভুক্ত করেছি এবং এর সাথে সংযুক্ত:

me@GAMMA:~$ sudo screen -list
There is a screen on:
        6208.ubuntu-release-upgrade-screen-window       (12/11/2013 01:57:58 AM)        (Detached)
1 Socket in /var/run/screen/S-root.
me@GAMMA:~$ sudo screen -x -r

বাম! আমি খেলায় ফিরে এসেছি।


আমি ভেবেছিলাম আপনি পর্দা শুরু করতে ভুলে গেছেন। আপনি যদি "স্ক্রিনে শুরু করতে ভুলে যান" তবে পর্দাটি কীভাবে চলছিল?
oemb1905

1
@ ওয়েমাম ৯৯০৫ কারণ উবুন্টু আপনার জন্য একটি শুরু করে, এই ধারণাটি অনুসারে যে আপনি ভুলে যাবেন :)
হাকল

আকর্ষণীয়, do-release-upgradeউবুন্টুর সাথে কমান্ডটি নির্দিষ্ট? আমার কখনও দেবিয়ান যাচাই করার দরকার নেই যা আমি একচেটিয়াভাবে ব্যবহার করি কারণ আমি সর্বদা এটি ম্যানুয়ালি চালাই, বিচ্ছিন্ন করে আবার ফিরে আসি। এবং, অবশ্যই, পরিবর্তে sudo apt dist-upgradeপরিবর্তনের পরে আমরা ব্যবহার করি /etc/apt/sources.list
oemb1905

আমি এটি পেয়েছি, হ্যাঁ এটি উবুন্টু-নির্দিষ্ট তাই আমার মতো কোনও খাঁটি দেবিয়ান ভাবেন যে আসকউবুন্টু থেকে পোচ ফিক্সগুলি তাদের সিস্টেমে এটি ঘটবে তা অনুমান করা উচিত নয়। এই বিষয়টির মূল থ্রেড: সার্ভারফল্ট.কোশনস
387547

এটি কীভাবে জানতে পারে যে আপনি পর্দা ইনস্টল করবেন?
নচট - মনিকা পুনরায়

4

পটভূমি aptকাজ থেকে রিয়েল-টাইম আউটপুট দেখতে , ব্যবহার করুন:

sudo tail -f /var/log/apt/term.log

এটি সঠিক উত্তর - উপরের উত্তরটিতে কিছু সহায়ক লগের অবস্থানটি ঠিক করা হয়েছে তারপরে প্রতিরোধে স্যুইচ করা হয়েছে। এই উত্তরটি ব্যবহারকারীকে কোথায় দেখতে হবে এবং কীভাবে এটি দেখতে হবে তা ( tail) দেখায় যে তারা "পুনরায় লগইন" বলেছিলেন।
oemb1905

0

ঠিক একই সমস্যাটি ছিল, আমার সংযোগটি হারিয়েছে এবং dpkg প্রক্রিয়া ইনপুটটির জন্য অপেক্ষা করছিল।

পরের বার চেষ্টা করুন: sudo dpkg --configure -a


1
যখন আমি এই চেষ্টা, সমস্ত আমি পেতে হয়"dpkg: error: dpkg frontend is locked by another process"
CivMeierFan

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

এই পদ্ধতিটি ডিপিকেজি প্রক্রিয়াটি এখনও পুনরায় চালু হওয়ার পরে সিস্টেমে চলছে কিনা তা তদন্তকে উপেক্ষা করে। তদ্ব্যতীত, যদি এটি চলমান থাকে তবে এটি সম্ভবত সবচেয়ে ক্ষতিকারক হতে পারে, বা সর্বোত্তমভাবে খারাপ অভ্যাস হতে পারে, যেহেতু /var/dpkg/lockএটি এখনও চলছে তবে dpkg এর এতে একটি লক থাকবে । এবং নির্বিশেষে, এটি "আপগ্রেডের স্থিতি পরীক্ষা করতে" এবং তার পরিবর্তে, কেবলমাত্র আপগ্রেড ক্র্যাশ হলে (এবং কেবলমাত্র লকটি সক্রিয় না হলে) কাজ করবে এই প্রশ্নের উত্তর দেয় না। আমি কারও কাছে এই পদ্ধতির সুপারিশ করব না। শ্রদ্ধেয়, ওম্বাম 9090
ওম্বাম 1905
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.