প্রশ্ন "নিম্নলিখিত প্যাকেজগুলি আবার রাখা হয়েছে:" কেন এবং কিভাবে আমি এটি সমাধান করব?


আমি শুধু জিআইপিপি এর ডেভেলপমেন্ট সংস্করণের জন্য একটি পিপিএ রিপোজিটরি যুক্ত করেছি, কিন্তু আমি এই ত্রুটিটি পেয়েছি:

$ apt-get update && apt-get upgrade
...
The following packages have been kept back:
  gimp gimp-data libgegl-0.0-0 libgimp2.0

কেন এবং কিভাবে আমি এটি সমাধান করতে পারি যাতে আমি এখন আমার পরিবর্তে সর্বশেষ সংস্করণটি ব্যবহার করতে পারি?


720
2017-07-31 21:59


উত্স


কঠোরভাবে বলছি, আমি বলব যে এটি একটি সতর্কতা, একটি ত্রুটি নয়। - Kazark


উত্তর:


অনুসারে debian-administration.org এ একটি নিবন্ধ,

আপনি যে প্যাকেজগুলি ইনস্টল করেছেন তার মধ্যে নির্ভরতাগুলি পরিবর্তিত হয়েছে যাতে আপগ্রেডটি সম্পন্ন করার জন্য একটি নতুন প্যাকেজ ইনস্টল করা আবশ্যক তবে এটি "রক্ষিত-ব্যাক" হিসাবে তালিকাভুক্ত হবে।

সতর্ক সমাধান 1:

সাবধানে সমাধান চালানো হয় sudo apt-get install <list of packages kept back>। বেশিরভাগ ক্ষেত্রেই এটি রাখা ব্যাক-প্যাকেজগুলিকে সফলভাবে আপগ্রেড করতে হবে।

সতর্ক সমাধান 2:

প্রতি পাবলো এর উত্তর, আপনি চালাতে পারেন sudo apt-get --with-new-pkgs upgrade, এবং এটি রাখা ব্যাক প্যাকেজ ইনস্টল করা হবে।

এই ব্যাক-আপ প্যাকেজগুলিকে "ম্যানুয়ালি ইনস্টল করা" হিসাবে চিহ্নিত করার সুবিধা নেই, যা লাইনের নিচে আরো ব্যবহারকারীর হস্তক্ষেপকে জোরদার করতে পারে (মন্তব্যগুলি দেখুন)।

যদি পাবলো এর সমাধান আপনার জন্য কাজ করে, দয়া করে এটি উত্থাপন করুন। যদি না হয়, কি ভুল গিয়ে মন্তব্য করুন।

আগ্রাসী সমাধান:

একটি আরো আক্রমনাত্মক সমাধান চালানো হয় sudo apt-get dist-upgrade, যা নতুন নির্ভরতা ইনস্টল করতে বাধ্য করবে।

কিন্তু dist-upgrade  বেশ বিপজ্জনক হতে পারেআপগ্রেড মত হতে পারে অপসারণ জটিল নির্ভরতা পরিস্থিতিতে সমাধান প্যাকেজ। আপনার বিপরীতে, এপিটি সর্বদা যথেষ্ট স্মার্ট নয় এটি এই সংযোজন এবং অপসারণগুলি ধ্বংসাত্মক ধ্বংস করতে পারে কিনা তা জানতে যথেষ্ট নয়।

তাই যদি আপনি নিজেকে এমন জায়গায় খুঁজে পান যেখানে "সতর্ক সমাধান" কাজ করে না, dist-upgrade  may কাজ ... কিন্তু আপনি সম্ভবত APT সম্পর্কে আরও কিছু শেখার এবং কেস-বাই-কেস ভিত্তিতে প্যাকেজগুলি ইনস্টল এবং অপসারণ করে নির্ভরশীল সমস্যাগুলির সমাধান "হাত দ্বারা" সমাধান করতে পারেন।

মনে রাখবেন, গাড়িটি ঠিক করার মতো সময় ... যদি আপনার সময় থাকে এবং রেঞ্চের সাথে সহজ থাকে তবে আপনি পড়ার এবং নিজের মেরামত করে কিছুটা মনের শান্তি পাবেন। যদি আপনি ভাগ্যবান বোধ করেন, আপনি আপনার চাচাতো ভাইয়ের সাথে আপনার গাড়ী বন্ধ করতে পারেন dist-upgrade এবং তিনি তার স্টাফ জানেন আশা করি।


704
2017-07-31 22:15



এটি একটি গ্রহণযোগ্য উত্তর প্রয়োজন হিসাবে, এটি সত্যিই ব্যবহার সম্পর্কে সতর্কবার্তা আপডেট করার প্রয়োজন dist-upgrade নীচের অন্যান্য উত্তর অনেক হিসাবে একটি স্থিতিশীল সিস্টেমে নির্দিষ্ট করা হয়েছে। ব্যক্তিগতভাবে আমি মনে করি একটি সহজ / নিরাপদ উত্তর আছে যা প্রচারের প্রয়োজন: apt-get ইনস্টল করুন <pkgs তালিকা> - Cas
ক্যাস, আমি কি শুধু যুক্ত করতে পারি যে এটি স্থিতিশীল সিস্টেমে একটি ডিস্ট-আপগ্রেড চালানোর জন্য বিপজ্জনক হতে পারে? কেন ঠিক যে বিপজ্জনক? (আমি সৎভাবে এটাকে ভালভাবেই জানি না।) - mac9416
সেখানে একটি সার্ভার ফল্ট উত্তর যে একটি বিট আরো বিস্তারিত dist-আপগ্রেড ব্যাখ্যা করে। আমি মনে করি এটির স্পষ্ট ব্যাখ্যা (যেমন বিপজ্জনক নয়) যে এটি সমগ্র সিস্টেমটি আপগ্রেড করতে পারে যা ব্যবহারকারীর প্রত্যাশা / চায় না তার চেয়েও বেশি হতে পারে যেমন ওপি উদাহরণে তারা ভাবছে কেন জিম্পকে আটকে রাখা হচ্ছে। - Cas
দয়া করে মনে রাখবেন sudo apt-get dist-upgrade এছাড়াও করতে পারেন অপসারণ প্যাকেজ। ফলস্বরূপ, এটি চলমান হওয়ার সময় তাদের সম্মতি দেওয়ার আগে করা পরিবর্তনগুলির তালিকাটি সর্বদা পরীক্ষা করা সেরা sudo apt-get dist-upgrade। - Eliah Kagan
@ ইলিয়াহকাগন আমিও তা যোগ করতে পারি apt-get upgrade প্যাকেজ অপসারণ করতে পারেন? অন্যথায় একটি সংস্করণ দ্বন্দ্ব হবে যখন এটা সবসময় যে করবে। ভাবা llvm3.6 বনাম llvm3.6v5 ("v5" এর সাথে এটি কম্পাইল করা হয়েছিল যার অর্থ gcc 5)। এই দুটি সহ বিদ্যমান থাকতে পারে না, উভয়ই কেবল সিস্টেমে রাখা যেতে পারে। তাই হ্যাঁ dist-upgrade পাশাপাশি কিছু প্যাকেজ মুছে ফেলতে পারে, কিন্তু এটি শুধুমাত্র নয় dist-upgrade যে এই কাজ করবে; নির্দিষ্ট পরিস্থিতিতে, upgrade হবে, পাশাপাশি। - syntaxerror


যখনই আপনি কমান্ড থেকে প্রাপ্ত apt-get upgrade বার্তা

The following packages have been kept back:

তারপর বন্টন আপগ্রেড ছাড়া এক বা সমস্ত সংরক্ষিত প্যাকেজ আপগ্রেড করতে (এইটি কি dist-upgrade যদি আমি সঠিকভাবে মনে রাখি) কমান্ডটি ইস্যু করা:

apt-get install <list of packages kept back>

এটি রাখা ব্যাক-আপ সমস্যাগুলিকে সমাধান করবে এবং অতিরিক্ত উত্তরগুলি ইনস্টল করার অনুরোধ করবে, যেমন অন্যান্য উত্তরগুলি ব্যাখ্যা করেছিল।


468
2017-09-08 09:14



প্যাকেজ এই ভাবে ফিরে রাখা হয় এবং আমি নিজে apt-get upgrade <list of packages>আমি যদি পুনরায় করি apt-get upgrade, এটি প্যাকেজের তালিকা হিসাবে তালিকাভুক্ত করবে যা আর প্রয়োজন হবে না এবং আমি ব্যবহার করতে পারি apt autoremove তাদের অপসারণ, যা আমি, এবং তারপর এক শেষ apt-get upgrade এবং তারা আর ফিরে রাখা হিসাবে তালিকাভুক্ত করা হয় ... খুব অদ্ভুত। কোন চিন্তা? - cram2208
কি apt-get install gnarly নির্ভরতা পরিস্থিতিতে সমাধান করার জন্য প্যাকেজগুলিও মুছে ফেলুন অথবা আপনাকে পৃথক চালাতে হবে apt-get remove আপগ্রেড প্রক্রিয়া যে অংশ সম্পাদন কমান্ড? - mac9416
@ ক্র্যাম ২208 আমি বিশ্বাস করি যে এটি প্রত্যাশিত আচরণ। যে প্যাকেজগুলি "স্বয়ংক্রিয়ভাবে ইনস্টল করা হয়েছে এবং [...] আর প্রয়োজন নেই", আপগ্রেড প্যাকেজের পূর্ববর্তী সংস্করণগুলি, যা এখন আর প্রয়োজন নেই। apt autoremove তারপর এই অব্যবহৃত নির্ভরতা মুছে ফেলা। - Alex
আপগ্রেডের জন্য নতুন প্যাকেজ ইনস্টল করার প্রয়োজন হলে, প্যাকেজটিকে "পিছিয়ে রাখা" হবে। প্রথম ব্যবহার বিবেচনা করুন: sudo apt-get --with-new-pkgs upgrade যা হবে প্যাকেজগুলিকে ম্যানুয়ালি ইনস্টল হিসাবে চিহ্নিত করার ফলে পার্শ্ব প্রতিক্রিয়া নেই - l --marc l
@ ম্যাক9416 হ্যাঁ এটা করে। - jarno


apt-get dist-upgrade স্থিতিশীল পরিবেশের জন্য বিপজ্জনক,

  1. ভুল source.list সেটিং এবং আপনি ভাঙ্গা ubuntu সঙ্গে শেষ পর্যন্ত।
  2. আপনি চান না সংস্করণ সম্পূর্ণ আপগ্রেড পেতে পারে।

কেস ব্যবহার করুন: কার্নেল আপগ্রেড ফিরে রাখা হয়েছে, আপনি শুধু কার্নেলটি আপগ্রেড করতে চান, পুরো বিতরণটি আপগ্রেড করতে চান না।

ফিরে প্যাকেজ রাখা হ্যান্ডেল ভাল উপায়:

sudo aptitude

যদি আপনি প্যাকেজটি রেখে থাকেন তবে তালিকাটির উপরে আপগ্রেড প্যাকেজগুলি দেখতে পাবেন।

  • যে তালিকা হিট +
  • দুই বার আঘাত হিট
  • জিজ্ঞাসা করা হলে ডেব কনফিগ স্টাফ উত্তর
  • প্রেস রিটার্ন অবিরত
  • প্রেস প্রশ্ন
  • হ্যাঁ চাপুন

আপনার রাখা প্যাকেজ ইনস্টল করা।


170
2017-12-24 00:43



apt-get dist-upgrade আপনি যদি খারাপ ভাণ্ডার আছে শুধুমাত্র বিপজ্জনক /etc/apt/sources.list*। এটা সচেতন হতে ভাল dist-upgrade আপগ্রেড সব প্যাকেজ, কিন্তু ডিফল্ট রিপোজিটরি সঙ্গে, যে সূক্ষ্ম হতে হবে। না ব্যবহার dist-upgrade বিপজ্জনক হতে পারে, আপনি নিরাপত্তা আপডেট মিস হতে পারে। - Flimm
apt-get dist-upgrade করতে পারেন অপসারণ পাশাপাশি প্যাকেজ যোগ করুন, কিন্তু এটি সত্যিই বিপজ্জনক নয়। কোন প্যাকেজ ইনস্টলেশন কমান্ড গুরুতর ক্ষতি হতে পারে আপনি যদি আপনার সমস্যা আছে sources.list ফাইল! একটি নিয়মিত apt-get upgrade কমান্ড সক্ষম করা যে কোন সফ্টওয়্যার উৎস থেকে কোনো প্যাকেজ ইনস্টল করা হবে; dist-upgrade এই ভাবে অনন্য নয়। উপরন্তু, ব্যবহার করে aptitude সব অপারেশন সঞ্চালন করতে, কমপক্ষে amd64, চালানোর চেয়ে অনেক বেশি বিপজ্জনক apt-get dist-upgrade, একটি রিলিজ যেখানে বাগ 831768 সংশোধন করা হয় না। - Eliah Kagan
আমার জন্য, এটি সহজ ছিল (এক্স চালানোর সাথে স্থানীয় মেশিন) কেবল সিনাপটিক খুলতে এবং প্যাকেজের আপগ্রেডটি জোরদার করতে। কিছু কারণে এটি আপনি Synaptic বর্ণিত যেখানে সব দেখাতে বলে মনে হচ্ছে না। - djvs
এছাড়াও sudo aptitude safe-upgrade - msanford


কেন আপনি চেষ্টা করবেন না এই ইউনিক্স এসই উত্তর:

sudo apt-get --with-new-pkgs upgrade

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

apt হুকুম (বন্ধুত্বপূর্ণ বিকল্প থেকে apt-get) শেয়ার করুন এই apt-get পছন্দ

ব্যবহার apt install <pkg> পরিবর্তে "ম্যানুয়ালি ইনস্টল" হিসাবে pkg চিহ্নিত হবে !! "স্বয়ংক্রিয়ভাবে ইনস্টল করা" ব্যবহার হিসাবে এটি আবার চিহ্নিত করতে apt-mark auto <pkg> (এছাড়াও subcommand দেখুন showmanual)। অধিক তথ্য এই উত্তর


60
2017-12-20 20:16



+1 কারণ এটি প্যাকেজগুলিকে ম্যানুয়ালি ইনস্টল হিসাবে চিহ্নিত করার কারণে পার্শ্ব প্রতিক্রিয়া নয়। - ctrl-alt-delor
যে কেউ আমার মন্তব্য উপরে পড়বে তা মনে রাখবেন: ম্যানুয়ালি ইনস্টল হিসাবে চিহ্নিত করার পার্শ্ব প্রতিক্রিয়া না থাকার একটি ভাল জিনিস। আমি এই উত্তর পছন্দ। - ctrl-alt-delor
তাই যদি আপনি ব্যবহার করেন sudo apt-get --with-new-pkgs upgrade  ছাড়া দৌড় apt-mark auto <pkg>সবকিছু কি ঠিক হবে? দ্বিতীয় কমান্ড শুধুমাত্র যদি আপনি প্রয়োজন করা নিজে ফিরে প্যাকেজ ইনস্টল করতে চান? - mac9416
হ্যাঁ। apt-mark auto <pkg> স্বয়ংক্রিয়ভাবে ইনস্টল হওয়া হিসাবে একটি প্যাকেজ চিহ্নিত করা আবশ্যক শুধুমাত্র (এখানে মানুষ পাতা)। - Pablo Bianchi


আপনি সাধারণত এই বার্তা দেখতে পারেন দুটি কারণে আছে।

প্রোগ্রাম আপগ্রেড যদি (মাধ্যমে sudo apt-get upgrade) প্যাকেজ যোগ করা বা অপসারণ করা হবে, তারপর প্রোগ্রাম ফিরে অনুষ্ঠিত হবে। তুমি ব্যবহার করতে পার sudo apt-get dist-upgrade এই ক্ষেত্রে, যা তারপর অতিরিক্ত প্রোগ্রাম যোগ বা অপসারণ করতে হবে।

এটি বেশ সাধারণ এবং সাধারণত একটি সমস্যা নয়। মাঝে মাঝে (বিশেষত একটি উবুন্টু আলফা সময়) একটি dist-upgrade অন্যান্য প্রোগ্রাম অনেক মুছে ফেলতে প্রস্তাব, যা ক্ষেত্রে আপনি সম্ভবত এটি বাতিল করতে চান।

প্রোগ্রাম উপলব্ধ প্যাকেজ বা সংস্করণ উপর নির্ভর করে, তাহলে প্রোগ্রাম ফিরে অনুষ্ঠিত হবে। প্যাকেজটি মূলত আনইনস্টলযোগ্য হওয়ার কারণে আপনি সত্যিই কিছু করতে পারবেন না তবে এই পরিস্থিতিতে অপেক্ষা করুন। প্যাকেজগুলির নাম পরিবর্তিত হলে প্যাকেজগুলি রিপোজিটরিতে যোগ করা হলে, অথবা প্যাকেজটি ভার্চুয়াল প্যাকেজ সরবরাহ করা বন্ধ করার সময় এটি ঘটতে পারে।


30
2017-07-31 22:16



অনুষ্ঠিত প্যাকেজটির নির্ভরতা প্রয়োজন কিনা তা নির্ধারণ করার একটি উপায় আছে যা ইনস্টল করা যাবে না বা যদি এটি অনুষ্ঠিত হচ্ছে তবে অন্যান্য প্যাকেজগুলি এতে নির্ভর করে। আমার অনেকগুলি প্যাকেজ আছে এবং আমি বিশ্বাস করি এই দুটি ক্ষেত্রে আমার সিস্টেমে প্রযোজ্য হতে পারে। - Jake
ধন্যবাদ, দ্বিতীয় কারণ আমার জন্য সমস্যা ছিল। এমন কি apt-get dist-upgrade এটা ইনস্টল করতে অস্বীকার করে। উপযুক্ততা সহ প্যাকেজ পরিদর্শন করে দেখায় যে এটি এমন প্যাকেজের উপর নির্ভর করে যা পাওয়া যায় না। আমি অনুমান করতে হবে আমি অপেক্ষা করতে হবে। - jlh


সম্ভবত এই প্যাকেজগুলি পিছিয়ে রাখা হয় কারণ তাদের ইনস্টলেশন নির্ভরতা অসঙ্গতি তৈরি করবে। এটি এমন হতে পারে কারণ আপনি সক্রিয় বিকাশ, পিপিএস, অথবা আপনি যে আয়নাটি ব্যবহার করেন সেগুলি পুরোপুরি আপডেট করা হয় না।

শেষ ক্ষেত্রে, শুধু অপেক্ষা করুন, নির্ভরতা সমাধান করা হয় যখন এটি পরবর্তী সময় ইনস্টল করা হবে।

সম্পাদনা:

আরেকটি সম্ভাবনা রয়েছে, যদি তাদের উপর রাখা রাখা হয় বা যদি তারা পিন করা থাকে তবে প্যাকেজগুলি আটকে রাখা যেতে পারে।


18
2017-07-31 22:17



আপনি কি এমন সম্ভাবনাটি বজায় রাখেন যা তিনি কোনও অনুপযুক্ত-আপগ্রেড বা কোনও অ্যাপটি-ডিট ডিগ-আপগ্রেড (alt। - andol
এই সমর্থন প্রশ্ন এবং বাগ সবচেয়ে ঘটমান সমস্যা - txwikinger
একমত। আপনি সম্ভবত অপেক্ষা এবং apt_preferences চেক করা উচিত। এটি প্রায়শই ডেভেলপমেন্ট আর্কাইভগুলির কারণে ঘটে যেখানে উপলব্ধ প্যাকেজগুলির নির্ভরতা খুব দ্রুত পরিবর্তিত হয়। তাদের বসতে জন্য অপেক্ষা করুন এবং আপনি প্রয়োজন হতে পারে না dist-upgrade সব। যদি আপনি এখনও চাই dist-upgrade, ইনস্টল করার জন্য নতুন প্যাকেজগুলি দেখুন এবং এগিয়ে যাওয়ার আগে প্যাকেজগুলি সরানো হবে। - Umang
এই আমার ক্ষেত্রে কারণ আমি ডিস্ট আপগ্রেড ব্যবহার করে "সংরক্ষিত রাখা" বার্তা পেতে - Postadelmaga
যেখানে এই সমস্যাটি উপযুক্ত পছন্দগুলি (পিনিং) সহ একটি মেসআপের কারণে হয়, তখন আমি সংরক্ষিত প্যাকেজের পুনঃস্থাপন আমাকে সাহায্য করে: apt-get install --reinstall <packages>। - tanius


আপনি চেষ্টা করতে পারেন:

sudo aptitude safe-upgrade

এটা চেয়ে নিরাপদ full-upgrade (মূলত ডিস্ট আপগ্রেড নামকরণ করা হয়েছে) কারণ "প্যাকেজগুলি অব্যবহৃত না হওয়া পর্যন্ত সরানো হবে না"।

থেকে man aptitude:

নিরাপদ-আপগ্রেড

আপগ্রেড প্যাকেজ তাদের সাম্প্রতিক সংস্করণে ইনস্টল। ইনস্টল   প্যাকেজগুলি সরানো হবে না যতক্ষণ না তারা অব্যবহৃত /.../ প্যাকেজগুলি ব্যবহার করা হয়   বর্তমানে ইনস্টল করা হয় না সমাধানের জন্য ইনস্টল করা হতে পারে   নির্ভরযোগ্যতা না থাকলে --no-new-installs কমান্ড-লাইন বিকল্পটি না থাকে   সরবরাহকৃত।


18
2017-08-12 08:02