কমান্ড লাইনের মাধ্যমে আপডেটগুলি কীভাবে ইনস্টল করবেন?


692

আমি যখন এসএসএইচ এর মাধ্যমে আমার ওয়েব সার্ভারে লগইন করি তখন আমি তথ্যগুলি দেখতে পাই:

88 packages can be updated.
80 updates are security updates

আমি apt-get updateতখন চেষ্টা করেছি apt-get upgradeকিন্তু প্রতিবার যখন আমি লগইন করি তখনও আপডেটগুলি সম্পর্কে বার্তাটি দেখি। এগুলি কীভাবে ইনস্টল করব?


1
আপনি কি প্রথমে চেষ্টা করেছেন: সুডো এপটি-গেইন এটি ক্যাশে পরিষ্কার করা উচিত।
ব্যবহারকারী 2635584

উত্তর:


868

এটা ব্যবহার কর:

sudo apt update        # Fetches the list of available updates
sudo apt upgrade       # Installs some updates; does not remove packages
sudo apt full-upgrade  # Installs updates; may also remove some packages, if needed
sudo apt autoremove    # Removes any old packages that are no longer needed

প্রতিটি aptবিকল্প সম্পর্কে ডকুমেন্টেশন অ্যাপের জন্য ম্যানেজগুলিতে পাওয়া যাবে । man aptআপনার টার্মিনালে চালিয়ে এগুলি উপলব্ধ ।

উভয় upgradeএবং full-upgradeএকসাথে উভয়ের ব্যবহারের প্রয়োজন হয় না তবে এটি কিছু ক্ষেত্রে সহায়তা করতে পারে: দেখুন ডেবিয়ান 9 থেকে আপগ্রেড সম্পর্কে ডিবিয়ান ডকুমেন্টেশন


29
আমি কি সবসময় এর sudo rebootপরে আবার চালু করা উচিত?
Hellboy

1
আমি যোগ করা প্রয়োজন -y এটা কাজ করে। উবুন্টু 17.10
T04435

124

sudoএকবারে টাইপ করে সমস্ত কমান্ড প্রয়োগ করুন :

sudo -- sh -c 'apt-get update; apt-get upgrade -y; apt-get dist-upgrade -y; apt-get autoremove -y; apt-get autoclean -y'

অথবা

sudo -s -- <<EOF
apt-get update
apt-get upgrade -y
apt-get dist-upgrade -y
apt-get autoremove -y
apt-get autoclean -y
EOF

বা লুপের জন্য এমনকি আরও ছোট (ধন্যবাদ @ ডেজার্ট)

sudo bash -c 'for i in update {,dist-}upgrade auto{remove,clean}; do apt-get $i -y; done'

3
আপনি একত্রিত করতে পারেন dist-upgradeএবং autoremoveদ্বারা apt-get dist-upgrade --auto-remove
জার্নো

3
উভয় চালানোর জন্য কোন প্রয়োজন নেই upgradeএবং dist-upgrade
জার্নো

3
@ জার্নো dist-upgradeপ্যাকেজগুলি মুছে ফেলতে পারে। upgradeপ্রথমটি ব্যবহার করা এড়াতে পারে যেমন নতুন প্যাকেজ সংস্করণগুলি পুরানোগুলির চেয়ে সহজেই নির্ভরতা পূরণ করে। আমি জানি না উবুন্টুর স্থিতিশীল রিলিজের মধ্যে প্যাকেজগুলি আপগ্রেড করার সময় এটি প্রায়শই কীভাবে সহায়তা করে তবে এটি অন্য কয়েকটি প্রসঙ্গে প্রস্তাবিত । ব্যক্তিগতভাবে আমি dist-upgradeউবুন্টুতে খুব কমই ব্যবহার করি এবং যখন করি তখন কখনই পাস হয় না -y। তবে যদি কেউ দৌড়াতে হয় dist-upgradeএবং পাশ করতে হয় তবে -yআমি upgradeপ্রথমে ক্রিয়াটি করা যুক্তিসঙ্গত বলে মনে করি ।
এলিয়াহ কাগন

1
@ জার্নো যখন আপনি --autoremoveনিজের পছন্দের আপগ্রেড কমান্ডের সাথে একসাথে চেইন করতে পারেন , প্যাকেজগুলির কোনও একটি ব্যর্থ হলে এটি আপনাকে অশুচি অবস্থায় ফেলতে পারে। autoremoveআপডেট প্রক্রিয়াটি শেষ হওয়ার পরে পৃথক লাইনে একা ব্যবহার করা আরও ভাল ছিল , আপনি যদি পুরানো কনফিগারেশন ফাইলগুলি খুব পরিষ্কার করতে চান তবে আপনি এটি দিয়ে চেইনও করতে পারেন --purge
ভিডিওনাথ

@ ভিডিয়োনাথ ওহ, এটি কীভাবে aptবাস্তবায়িত হয় তা নির্ভর করে । আমি মনে করি এটি কার্যকর করা উচিত যাতে এটি ব্যবস্থাটিকে অশুচি অবস্থায় না ফেলে।
জার্নো

91

এটি স্বাভাবিক আচরণ।

লগইনটিতে আপনি যে বার্তাটি দেখছেন তা সার্ভারের স্থিতিতে 'মেসেজ-অফ-দি-দিবা'তে যুক্ত হয়েছে, যা প্রতিটি ক্যালেন্ডারের দিনেই আপডেট হয় (বা সার্ভার বুট / স্টার্টআপে) on ব্যবহার করে সামগ্রীগুলি দেখুন at

cat /etc/motd

দৌড়ানোর পরেও একই আপডেট উপলব্ধ

sudo apt-get update && sudo apt-get upgrade

প্রত্যাশিত হয়। এই কমান্ডের সাহায্যে আপনি যদি তোমরা পুনরায় চালানোর শুধুমাত্র কোনও আপডেটের জন্য অনুরোধ করা হলে এমনকি আরও (সবচেয়ে নতুন) আপডেট মুক্তি দেয়া হয়েছে।


আমি লক্ষ্য করছি যে পরবর্তী ক্যালেন্ডারের দিন পর্যন্ত পুরো সিস্টেমে কোনও ফাইলের পরিবর্তন দেখা যাচ্ছে না, এখনই পরিবর্তনগুলি দেখা শুরু করার জন্য "রিফ্রেশ" করার মতো কোনও উপায় আছে কি?
aljuaid86

কী আপনি দিনের অর্থ বার্তা পাঠানোর বিষয়বস্তুগুলির জন্য আপডেটগুলি বোঝাচ্ছেন , বা দৌড়ানোর পরে যা চান তা পাচ্ছেন না sudo apt-get update && sudo apt-get upgrade?
ডেভিড 6

3
16.04 এ এটি আর সত্য নয়। "অ্যাপটি-গেট ডিস-আপগ্রেড" এবং একটি রিবুটের পরে আমি দেখতে পাই "0 প্যাকেজগুলি আপগ্রেড করা যেতে পারে"।
বোগদান Calmac

1
'.. অথবা সার্ভার রিবুট উপর ..' বিবৃতিতে উপরে যে আবরণ আছে।
ডেভিড 6

3
বিড়াল: / ইত্যাদি / মোটিড: এ জাতীয় কোনও ফাইল বা ডিরেক্টরি নেই
x অ্যাপল

11

আপনার সার্ভারে একবার লগ ইন করার পরে, নীচের কমান্ডটি চালান।

sudo apt-get upgrade

এটা কৌতুক করা উচিৎ। হতে পারে আপনাকে কেবল আপনার সার্ভারটি পুনরায় চালু করতে হবে।


3
আপনার উত্তরের জন্য আপনাকে ধন্যবাদ তবে আমি sudo এপটি-আপ আপগ্রেড করার চেষ্টা করেছি। সার্ভারটি পুনরায় চালু করা প্রশ্নের বাইরে নয় কারণ আমার এতে সাইট রয়েছে।
মার্লিন

3
আপনি যদি এমন কোনও আপডেট ইনস্টল করেন যা সরাসরি কার্নেলকে প্রভাবিত করে বা এটি একটি ড্রাইভার আপডেট বা এটি একটি গুরুত্বপূর্ণ সুরক্ষা আপডেট রয়েছে, আপনাকে সার্ভারটি পুনরায় চালু করতে হবে।
ইভান্দ্রো সিলভা

হতে পারে আপনার এক মিনিটের জন্য 503 ত্রুটি বিবেচনা করা উচিত। আপনি কি জানেন যে এটি কী ধরণের আপডেট?
NorTicUs

1
সার্ভার অফলাইন থাকলে আপনি কীভাবে একটি 503 দিতে পারেন?
এমকন্ট

8

আমার ক্ষেত্রে আমার /etc/apt/source.list এ একটি ভুল বা অ্যাক্সেসযোগ্য URL ছিল এই ইউআরএল সরানোর পরে, আমি সমস্ত প্যাকেজ সফলভাবে আপডেট করতে সক্ষম হয়েছি।

আদেশগুলি:

sudo vi /etc/apt/sources.list
sudo apt-get update && sudo apt-get upgrade

7

আমার (সত্যই দেরি হয়ে গেছে, আমি নেক্রোম্যান্সার ব্যাজগুলি পছন্দ করি :-)) সমাধান:

  1. ওয়াজিগ ইনস্টল করুন (একবার):

    sudo apt-get install wajig 
    
  2. আপনি যখন নিজের সিস্টেমে সম্পূর্ণ আপডেট / আপগ্রেড করতে চান

    wajig dailyupgrade
    

    (এটি প্রয়োজনে পাসওয়ার্ডের জন্য জিজ্ঞাসা করবে এবং আপনার জন্য সমস্ত আপডেট, আপগ্রেড, ডিস্ট-আপগ্রেড এবং স্বয়ত্তর পদক্ষেপগুলি করবে)।



1

এই স্ক্রিপ্টটি অপ্রয়োজনীয় প্যাকেজগুলি অপসারণ এবং ওএস চাইলে কেবল একটি রিবুট সঞ্চালন সহ আপডেটগুলি স্বয়ংক্রিয় করতে কার্যকর

remote_user=usernamehere
remote_host=example.com

ssh -A -n -o StrictHostKeyChecking=no ${remote_user}@${remote_host} && \
sudo apt-get update && \
sudo apt-get -f install -y && \
sudo apt-get -o Dpkg::Options::="--force-confnew" -yy dist-upgrade -y && \
sudo apt-get autoremove -y && \
[ -f /var/run/reboot-required ] && \
echo "sudo reboot now" && \
sudo reboot now 

আপনার স্থানীয় বাক্সে চালানোর জন্য প্রথম লাইনটি ssh করে রেখে দিন

আমি an / .bashrc এ সংরক্ষণ করি এমন একটি নাম alias

alias doit='echo; kill $( ps -eafww|grep update-manager|grep -v grep | grep update-manager | tr -s " " |cut -d" "  -f2 ) > /dev/null 2>&1;  echo "sudo apt-get update && sudo apt-get dist-upgrade &&  [ -f /var/run/reboot-required ] && echo && echo reboot required && echo";echo;sudo apt-get update && sudo apt-get dist-upgrade &&  [ -f /var/run/reboot-required ] && echo && echo reboot required && echo '

টার্মিনালে আমি কেবল ইস্যু করি doit


0

সমাপ্ত apt-get updateহওয়ার পরে যদি আপনি আবার চালনা apt-get upgradeকরেন তবে ssh লগইনে থাকা সেই বার্তাগুলি চলে যাওয়া উচিত।

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