আমার / বুট পার্টিশনটি 100% হিট হয়েছে এবং এখন আমি আপগ্রেড করতে পারি না। ঘর তৈরি করতে পুরানো কার্নেলগুলি সরানো যায় না


154

আমার প্রথম সমস্যাটি ছিল যখন আমি চেষ্টা করেছিলাম apt-get updateবা করেছি apt-get upgrade। আপগ্রেড করার সময় আমি নিম্নলিখিত ত্রুটিটি পেয়েছি:

You might want to run 'apt-get -f install' to correct these.
The following packages have unmet dependencies:
linux-image-server : Depends: linux-image-3.2.0-27-generic but it is not installed
E: Unmet dependencies. Try using -f.

আমি অ্যাপটি-ইনস্টল -f চালানোর চেষ্টা করেছি এবং এটিই আউটপুট ছিল (প্রম্পটে হ্যাঁ বলার পরে)

(Reading database ... 186183 files and directories currently installed.)
Unpacking linux-image-3.2.0-27-generic (from .../linux-image-3.2.0-27-generic_3.2.0-27.43_amd64.deb) ...
Done.
dpkg: error processing /var/cache/apt/archives/linux-image-3.2.0-27-generic_3.2.0-27.43_amd64.deb (--unpack):
 failed in write on buffer copy for backend dpkg-deb during `./boot/System.map-3.2.0-27-generic': No space left on device
 No apport report written because the error message indicates a disk full error
                                                                          dpkg-deb:    error: subprocess paste was killed by signal (Broken pipe)
Examining /etc/kernel/postrm.d .
run-parts: executing /etc/kernel/postrm.d/initramfs-tools 3.2.0-27-generic   /boot/vmlinuz-3.2.0-27-generic
run-parts: executing /etc/kernel/postrm.d/zz-update-grub 3.2.0-27-generic /boot/vmlinuz-3.2.0-27-generic
Errors were encountered while processing:
/var/cache/apt/archives/linux-image-3.2.0-27-generic_3.2.0-27.43_amd64.deb
E: Sub-process /usr/bin/dpkg returned an error code (1)

আমি দৌড়ানোর চেষ্টা করেছি apt-get autoremoveএবং এটি আমাকে একই ত্রুটি দেয় apt-get upgrade

আমি যখন দৌড়ে যাই df, আমি এটির জন্য এটি পেয়েছি /boot:

/dev/sda1                    233191     230297         0 100% /boot

সুতরাং, আমি অন্য কোথাও পড়েছি যে আমার পুরানো কার্নেলগুলি পরিষ্কার করার চেষ্টা করা উচিত। আমার কাছে কী কার্নেল রয়েছে তা পরীক্ষা করেছিলাম:

$ dpkg -l linux-image-\* | grep ^ii
ii  linux-image-2.6.38-13-server  2.6.38-13.52  Linux kernel image for version 2.6.38 on x86_64
ii  linux-image-3.0.0-13-server   3.0.0-13.22   Linux kernel image for version 3.0.0  on x86_64
ii  linux-image-3.0.0-14-server   3.0.0-14.23   Linux kernel image for version 3.0.0  on x86_64
ii  linux-image-3.0.0-15-server   3.0.0-15.26   Linux kernel image for version 3.0.0  on x86_64
ii  linux-image-3.0.0-16-server   3.0.0-16.29   Linux kernel image for version 3.0.0  on x86_64
ii  linux-image-3.0.0-17-server   3.0.0-17.30   Linux kernel image for version 3.0.0  on x86_64
ii  linux-image-3.2.0-24-generic  3.2.0-24.39   Linux kernel image for version 3.2.0  on 64 bit x86 SMP
ii  linux-image-3.2.0-25-generic  3.2.0-25.40   Linux kernel image for version 3.2.0  on 64 bit x86 SMP
ii  linux-image-3.2.0-26-generic  3.2.0-26.41   Linux kernel image for version 3.2.0  on 64 bit x86 SMP

আমি যখন এটি দিয়ে প্রাচীনতমটি সরিয়ে দেওয়ার চেষ্টা করি:

$ sudo apt-get purge linux-image-2.6.38-13-server
Reading package lists... Done
Building dependency tree
Reading state information... Done
You might want to run 'apt-get -f install' to correct these:
The following packages have unmet dependencies:
linux-image-server : Depends: linux-image-3.2.0-27-generic but it is not going to be     installed
E: Unmet dependencies. Try 'apt-get -f install' with no packages (or specify a solution).

কীভাবে আমি আমার ইনস্টলেশনটি বিশৃঙ্খলা না করে বুট মুক্ত করতে বা প্রসারিত করতে পারি?


আমি মনে করি @ ম্রেটারের উত্তরটি সর্বোত্তম হতে পারে: এটি প্যাকেজ ম্যানেজারটি ব্যবহার করে এবং কমপক্ষে আমার জন্য অন্যান্য প্যাকেজ পরিচালকের কমান্ড ব্যর্থ হলে এটি কাজ করে: Askubuntu.com/a/205776/247661
হল


1
হ্যাঁ! Remove-Unused-Dependenciesডিফল্ট হয় না কেন ?
স্টিভেন আর লুমিস

উত্তর:


129

রুট ফাইল সিস্টেমে স্থান ফাঁকা করা

রুট ফাইল সিস্টেমে জায়গা খালি করার জন্য আপনি কার্যকর করার চেষ্টা করতে পারেন apt-get clean

যদি এটি কাজ না করে আপনি /var/cache/apt/archivesকিছু স্থান ফিরে পেতে ক্যাশে থেকে কয়েকটি ফাইল ম্যানুয়ালি মুছে ফেলতে পারেন, যেমন:

sudo rm linux-headers-*

.debআপনার যদি প্রয়োজন হয় তবে এখানে ফাইলগুলি সরিয়ে ফেলতে ক্ষতি হবে না - এটি হ'ল apt-get clean। তাদের aptআবার প্রয়োজন পড়লে এগুলি স্বয়ংক্রিয়ভাবে পুনরায় ডাউনলোড হবে।

/ বুট ফাইল সিস্টেমে স্থান ফাঁকা করা হচ্ছে

অরিজিনাল পোস্টারের একটি পৃথক /bootপার্টিশন রয়েছে এবং এটিই পূর্ণ এবং aptসিস্টেমটি কাজ করা থেকে বিরত রাখে । সেখানে জায়গা ফাঁকা করা তার জন্য প্রয়োজনীয় হবে।

যদি প্রায় পর্যাপ্ত জায়গা থাকে তবে যান /bootবা একটি কনফিগার ফাইল বা দুটি অপসারণ করুন:

sudo rm config-3.2.0-19-generic-pae

উদাহরণস্বরূপ, তবে যে কোনও কার্নেল সংস্করণটির নাম ব্যবহার করে আপনি যেভাবেই মুছে ফেলতে চান। এটি একটি সামান্য জায়গা খালি করবে (প্রায় 144 কে পিছু)।

আপনি আরো ব্যবধানের প্রয়োজন হয় স্বতন্ত্রভাবে অপসারণ পুরাতন vmlinuz, initrd, abiএবং System.mapফাইল না হওয়া পর্যন্ত আপনি (আমার মধ্যে i386 কার্নেল সংস্করণ একটির জন্য 22M সম্বন্ধে) পর্যাপ্ত স্থান আছে।

আপনি যা-ই করুন না কেন, সেগুলি সমস্ত সরিয়ে ফেলবেন না । আপনার ব্যবহৃত প্রতিটি কার্নেলের জন্য আপনার কমপক্ষে প্রতিটি ধরণের ফাইলের সর্বশেষ দুটি মিলের সংস্করণ রাখা উচিত।

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


কনফিগারেশন ফাইলটি /bootহ'ল কার্নেল কনফিগারেশন যা একই নামের কার্নেল তৈরি করতে কার্নেল দল ব্যবহার করেছিল । আপনি এটির রেফারেন্স না চাইলে বা আপনাকে নিজের কার্নেল তৈরিতে সহায়তা না করা সরিয়ে ফেলা নিষিদ্ধ হওয়া উচিত।

নতুনটির /bootআরও বেশি জায়গা তৈরির জন্য আপনি পার্টিশন থেকে পুরানো কার্নেল প্যাকেজটি ম্যানুয়ালি মুছে ফেলছেন ।


আমি প্রায় সমস্ত কনফিগার অপসারণ করার চেষ্টা করেছি। এটি এখনও যথেষ্ট জায়গা আছে বলে মনে হয় না। সেখানে থাকা অন্য কোন ফাইলগুলি মুছে ফেলা নিরাপদ হবে? আমার রুট ফাইল সিস্টেমটি কোথাও পূর্ণের কাছাকাছি নেই, তাই আমি এটি নিয়ে চিন্তিত নই।
Strifey16

আমি নিজের উত্তরটি হাতে নিয়ে অপসারণ করার জন্য আরও ফাইলগুলি দিয়ে আপডেট করেছি। আমার কাছে মনে হয় যে 3.0.0.13 এবং 3.0.0.14 সেটগুলি সরিয়ে ফেলতে (অ্যাবি ফাইল সহ সেটে পাঁচটি ফাইল) যথেষ্ট হবে।
জন এস গ্রুবার

2
এটি এটি স্থির করে। আমি বুঝতে পেরেছিলাম এটি সম্ভবত হাতে হাত থেকে ফাইলগুলি সরিয়ে নেওয়ার জন্য নেমে আসবে, তবে আমি যথাযথভাবে ইনস্টল করা যে কোনও কিছু দিয়ে তা করতে দ্বিধা বোধ করি, তাই আমি ভেবেছিলাম যে আমি এখানে আগে জিজ্ঞাসা করব।
Strifey16

9
sudo rm/ বুট থেকে সরানোর জন্য ব্যবহার করবেন না । পরিবর্তে, sudo dpkg --purgeকিছু পুরানো লিনাক্স-চিত্র প্যাকেজ অপসারণ করতে ব্যবহার করুন । তারপরে sudo apt-get -f installভাঙা নির্ভরতা ঠিক করতে ব্যবহার করুন ।
জার্নো

4
যদিও কিছু সময় সিস্টেম এত পরিপূর্ণ হতে পারে যে এমনকি dpkg পরিচালনা করতে পারে না। তবে rmতখন ব্যবহার করা যায়।
জার্নো

66

আমার ক্ষেত্রে, aptআদেশগুলি এবং dpkgআদেশটি শেষ করতে পারে নি, এবং অপসারণ করতে পারে না। অটোপেটটি ইনস্টল করতে ব্যর্থ হয়েছিল 2.6.32-56-server

আমার প্রথম পদক্ষেপটি ব্যবহৃত স্থানটি চিহ্নিত করা ছিল,

cd /boot
du -sk *|sort -n

আমার কাছে প্রায় 30 টি কার্নেল এবং সমর্থনকারী ফাইল ছিল।

আমি uname -aচলমান কার্নেলটি পেতে একটি করেছি, আমি সনাক্ত করেছিলাম যে আমি লিনাক্স বিকল্পে ছিলাম 2.6.32-43-serverএবং tarযে সংস্করণগুলি চলমান ছিল না তার মধ্যে 6 টি করেছি এবং পুরানো ছিল।

tar -cvf ~username/boot.tar *2.6.32-44-server *2.6.32-45-server *2.6.32-46-server *2.6.32-47-server *2.6.32-48-server *2.6.32-49-server

আমি তখন rm -rfযা ব্যাক আপ করেছি তার একটি করেছি:

rm -rf *2.6.32-44-server *2.6.32-45-server *2.6.32-46-server *2.6.32-47-server *2.6.32-48-server *2.6.32-49-server

আমি এই আদেশগুলি উদাহরণ হিসাবে দেখছি, আপনার অবস্থার জন্য আপনি কী নিয়ে কাজ করবেন তা আপনাকে সিদ্ধান্ত নিতে হবে।

এখন যে আমার কিছু জায়গা ছিল /boot, আমি চালাতে সক্ষম হয়েছি

apt-get -f install 

এর ব্যর্থ ইনস্টলটি পরিষ্কার করতে 2.6.32-56-server

আমি তখন ক

apt-get remove linux-headers-2.6.32-38 linux-headers-2.6.32-38-server linux-image-2.6.32-38-server
apt-get remove linux-headers-2.6.32-39 linux-headers-2.6.32-39-server linux-image-2.6.32-39-server

এটি আমাকে যা ব্যাক আপ করেছিল তা ফিরিয়ে দেওয়ার জন্য আমাকে জায়গা দিয়েছে।

tar -xf ~username/boot.tar
rm  ~username/boot.tar    

পরিষ্কার করার জন্য, আমি তখন চালাতে পারি:

apt-get autoremove

আমি রিবুট করেছি এবং এখন 4% ব্যবহার করতে নামছি /boot


সমস্ত পরামর্শের মধ্যে এটি আমার পক্ষে সবচেয়ে সহায়ক ছিল। আপনাকে অনেক ধন্যবাদ!
জোশুয়া এফ। রাউন্ট্রি

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

20

আপনি পুরানো কার্নেলগুলি সরানোর dpkgপরিবর্তে ব্যবহার করতে পারেন apt-get:

sudo dpkg -r linux-image-3.2.0-29-generic

সম্ভবত এটি ব্যবহারের জন্য বহুবিধ ধারণা রয়েছে, তবে @ মরিটারের পরামর্শটি আমার পক্ষে কাজ করেছিল যখন এইটি না করে (উবুন্টুর আইআরসি সমর্থন চ্যানেলে এটি প্রস্তাবিত হয়েছিল।)
অ্যারন হল

3
@AaronHall এই উত্তরটি কেবল মূল কিছুটা অংশ অন্তর্ভুক্ত mreiter এর উত্তর (শেষ লাইনটি) এবং অনেক খাটো যেহেতু এটা হেডার পরিচ্ছন্নতার (যা পৃথক ক্ষেত্রে সাহায্য না কাভার করে না /bootপার্টিশন)।
মেলিবিয়াস

9

আমি লক্ষ্য করেছি বুট ডিরেক্টরিতে পুরানো সংস্করণগুলির কয়েকটি ফাইল রয়েছে:

$ ls /boot
vmcoreinfo-2.6.31-17-server

এবং প্যাকেজ ম্যানেজার পুরানো সংস্করণগুলি তালিকাভুক্ত করবে:

dpkg -l | grep linux-image

তাই আমি এই কমান্ডটি ব্যবহার করেছি ( autoremoveআমি যে সাম্প্রতিক চিত্রগুলিও সরাতে চাই না তা সরিয়ে ফেলব)

sudo apt-get purge linux-image-2.6.31-17-server

আমার এখনও কিছু শিরোনাম বাকি ছিল:

dpkg -l | grep linux-headers

সুতরাং আমি এটি করেছি:

sudo apt-get purge linux-headers-2.6.32-34

অবশেষে একটি প্যাকেজ বাকী ছিল যা আমি আপ্ট-গেইজ শুদ্ধি দিয়ে মুছে ফেলতে পারিনি:

$ dpkg -l | grep linux-image
rc  linux-image-2.6.28-11-server

উত্স: dpkg দ্বারা আরসি হিসাবে চিহ্নিত একটি প্যাকেজ সরান

sudo dpkg --purge linux-image-2.6.28-11-server

3

/var/tmpসঙ্গে ব্যবহার পরীক্ষা করুন du -sh /var/tmp/। স্থান তৈরি করতে that ফোল্ডারের সমস্ত ফাইল মুছতে পারে।

তারপরে আপনি পুরানো কার্নেলগুলি অপসারণ করতে নিম্নলিখিতটি চালাতে পারেন:

sudo apt-get clean
sudo apt install byobu
sudo purge-old-kernels
sudo apt autoremove
sudo update-grub

/var/tmpপুরানো কার্নেলগুলির সাথে কী করার আছে? এবং /var/tmp...
ফসলিনাক্স

3

এটি আমি ব্যবহার করেছি:

sudo apt-get autoremove linux-image-xxxx

সমস্ত পুরানো কার্নেলের জন্য এটি করুন এবং কেবল সাম্প্রতিক দুটি রাখুন।

আপনি যদি পুরানো কার্নেলগুলি স্বয়ংক্রিয়ভাবে মুছতে এবং GRUB আপডেট করতে চান তবে এটি দেখুন: উবুন্টু ডকুমেন্টেশন


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

2

আমি দেখতে পেলাম যে আমার জন্য কাজ করা একমাত্র জিনিসটি প্রবণতা ব্যবহার করা হয়েছিল।

sudo aptitude

তারপরে এটি খুললে এটি নীচে আনমেট নির্ভরতা সম্পর্কে কিছু বলবে। gপ্রস্তাবিত অপসারণটি এগিয়ে নিয়ে যেতে আপনি চিঠিটি হিট করতে পারেন । এটি আপনাকে এমন একটি পৃষ্ঠায় নিয়ে যাবে যেখানে এটি কী ঘটবে তা তালিকাভুক্ত করে।

-ভাঙা কার্নেলের পাশে একটি বিয়োগ করা উচিত । gআবার টিপুন এবং এটি ভাঙ্গা কার্নেলগুলি সরিয়ে ফেলবে। qছাড়তে টিপুন । তারপরে আপনার sudo apt-get autoremoveপুরানো কার্নেলগুলি থেকে মুক্তি পেতে এবং স্থান খালি করতে ব্যবহার করতে সক্ষম হওয়া উচিত ।


1
এটি কেবলমাত্র বৈধ উত্তর। অন্যান্য উত্তরগুলি সমস্ত কাজ করে না, প্যাকেজ ম্যানেজার কোনও প্যাকেজ কোনও কিছু অপসারণের আগে ইনস্টল করতে চেয়েছিল।
মেশিনাদিক্ট

2

আপনি প্যাকেজগুলির উপর কাজ করতে পারবেন না, তবে আপনি অন্যান্য ফাইলগুলিতে কাজ করতে পারেন । প্রথমে আপনার হোম ফোল্ডারে যান এবং দেখুন যে কোনও কিছু মুছতে পারেন কিনা । যদি তা না হয় তবে ভাল পরিমাণ ফাইল অন্য পার্টিশনে (বা একটি ফ্ল্যাশ ড্রাইভ) স্থানান্তরিত করার চেষ্টা করুন এবং তারপরে sudo apt-get install -fপ্যাকেজ নির্ভরতা সমস্যাগুলি পরিষ্কার করার চেষ্টা করুন (সম্ভবত আপনি একটি .deb ফাইল ইনস্টল করেছেন dpkg) এবং কোনও পুরানো কার্নেলগুলি পরিষ্কার করে নিন pur একবার আপনার সুরক্ষিতভাবে কমপক্ষে 10 এমবি হয়ে গেলে, অপ্রয়োজনীয় সফ্টওয়্যার বা ফাইলগুলি সাফ করার চেষ্টা করুন।


5
হোম ফোল্ডারটি / বুটে নেই
থরবজর্ন রাভন অ্যান্ডারসন

1

সিনাপটিক প্যাকেজ ম্যানেজার ব্যবহার করুন। আপনি যে প্যাকেজটি সরিয়ে ফেলতে চান তা চয়ন করুন এবং এটি আপনাকে নির্ভর করে এমন প্যাকেজগুলি সরাতে আপনাকে অনুরোধ জানাবে। আমার অভিজ্ঞতায়, কার্নেল প্যাকেজগুলি সর্বদা দুটি (বা আরও বেশি, আপনি কীভাবে গণনা করেন তার উপর নির্ভর করে) পরস্পর নির্ভরশীল groups আপনি "স্থানীয় / অপ্রচলিত" ফিল্টারটি ব্যবহার করে সাধারণত পুরানোগুলি খুঁজে পেতে পারেন।


2
যেমন একটি (কেবলমাত্র পাঠ্য) সার্ভারে কোনও সিনাপটিক নেই। তাই সার্ভারগুলির পক্ষে আসলেই কার্যকর একটি সমাধান নয়।
নারডোক

1

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

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

নির্ভরতা তৈরির কারণে পুরো আটকে থাকা কর্নেলগুলি জোর করে মুছে ফেলতে হবে কিনা তা স্ক্রিপ্ট দ্বারা চিহ্নিত করা হয়েছে, ওটি যদি এটি "ডান" উপায়ে করতে পারে তবে।

#!/bin/bash

ipv4="-o Acquire::ForceIPv4=true"

if [ "$1" = "4" ] ; then
    withip=$ipv4
    echo "Going IPv4 ($withip)"
fi

echo "Autoremove+Purge."
apt-get $withip -y -f autoremove --purge >/dev/null 2>&1

if [ "$?" != "0" ] ; then
    echo "Auto Removal Failed!"
fi

echo "Old dependency fix."
apt-get $withip -f -y install >/dev/null 2>&1

if [ "$?" != "0" ] ; then
    echo "That failed. So we'll try to make up to it during this process."
fi

echo "Now, going old kernel cleanup!"
kern=$(dpkg --list 'linux-image*'|awk '{ if ($1=="ii") print $2}'|grep -v `uname -r`)
hadErrors=0

for k in $kern
do
    echo apt-get -y purge $k
    apt-get $withip -y purge $k >/dev/null 2>&1

    if [ "$?" != "0" ] ; then
        echo "Failed apt-purge... Using plan B (--force-all -P)..."
        dpkg --force-all -P $k >/dev/null 2>&1
        echo "Rerunning stuff (apt-get -f -y install) for dependencies..."
        apt-get $withip -f -y install >/dev/null 2>&1
        if [ "$?" != "0" ] ; then
            echo "Still failing..."
            hadErrors=1
        fi
    fi
done

if [ "$hadErrors" = "1" ] ; then
    echo "I had errors. I should rerun this process, to see if there are more kernels that were left out after cleanup..."
    /usr/local/tornevall/cleankernel
fi

apt-get $withip autoremove
apt-get $withip update
apt-get $withip upgrade
apt-get $withip dist-upgrade

grb=$(which update-grub)
if [ "" != "$grb" ] ; then
    update-grub
else
    echo "Can't upgrade grub since update-grub is missing..."
fi

আপনি কি লিনাক্স-পার্জ চেষ্টা করেছিলেন ? যদিও বর্তমানে সেই ফোর্স আইপিভি 4 জিনিস নেই।
জার্নো

আপনার স্ক্রিপ্টটি আমার সিস্টেমে লিনাক্স-চিত্র-জেনেরিককে পরিষ্কার করবে, যা খারাপ।
জার্নো

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

0

কেবল sudo apt-get -f autoremoveচালানোই আমার সমস্যার সমাধান করেছে।


2
আপনার কি 100% ডিস্ক স্পেস / বুট ব্যবহার ছিল?
ফসলিনাক্স

আমার পর্যবেক্ষণের ইতিহাসের দিকে তাকালে মনে হয় নি। পিএস: আমি ভ্যাগ্র্যান্ট জেনিয়ালে আছি এবং আমার বুট ফাইল সিস্টেমটি /dev/sda1মাউন্ট করা হয়েছে/
ফরজাগ্রিন

0

এটি চালান:

sudo apt-get autoremove
sudo apt-get --purge remove && sudo apt-get autoclean
sudo apt-get -f install
sudo dpkg-reconfigure -a

উত্স: আপগ্রেড করার পরে আমি এই ত্রুটিটি পেয়েছি। সাহায্য করুন


sudo dpkg-reconfigure - এটি কি করে? উবুন্টু 16 এ এর ​​অজানা বিকল্পটি বলেছেন
শিবাম কোতোয়ালিয়া

এই প্রশ্নের জন্য, aptকার্নেল প্যাকেজগুলি অপসারণ করতে ব্যর্থ হবে কারণ অপসারণ প্রক্রিয়া নিজেই ফাইলগুলি উত্পন্ন করে /bootযা ইতিমধ্যে পূর্ণ। সে কারণেই apt-get autoremoveব্যর্থ হয়। আপনি যে প্রশ্নটি খুঁজছেন তা হ'ল Askubuntu.com/q/142926/158442 , যা ইতিমধ্যে autoremoveতালিকাভুক্ত রয়েছে।
মারু

@ মুরু আমি এটি পোস্ট করেছি কারণ এটি আমার জন্য কৌশলটি করেছে: ডি
আরদী নুসাওয়ান

আমি নিশ্চিত যে এটি করেছে, আমি যা বলছি তা হ'ল আপনার সমস্যাটি এই নয়, অন্য প্রশ্ন this
মুড়ু

@ মুরু ওহ ঠিক আছে এটি পেয়েছেন: ডি
আরদী নুসাওয়ান

0

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

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

আমার ক্ষেত্রে, নিম্নলিখিত কৌশলগুলি কাজ করেছিল:

#as sudo, repeat 1-3 for any old kernels; can be scripted
dpkg --force-all -P linux-image-4.4.0-112-generic 
dpkg --purge linux-image-extra-4.4.0-112-generic
dpkg --purge linux-signed-image-4.4.0-112-generic
apt-get -f install #dependency resolution didn't have work to do for kernel packages
apt-get autoremove --purge -f 
apt-get autoclean
apt-get upgrade

0

ইনস্টল করুন লিনাক্স-রেচক পদার্থ মত টুল এই

তারপরে টার্মিনালে চালান:

sudo linux-purge --clear-boot --fix

তারপরে উদাহরণস্বরূপ কার্নেলগুলি সরিয়ে ফেলুন

sudo linux-purge --keep 1 --choose

অতিরিক্ত:

আপনি যদি অপ্রয়োজনীয়-আপগ্রেডগুলি ব্যবহার না করে অপরিবর্তিত কার্নেল অপসারণের জন্য লিনাক্স-পার্জ ব্যবহার করতে চান তবে আপনার /etc/apt/apt.conf.d/50unattended-upgrades সম্পাদনা করে অব্যবহৃত স্টাফ অপসারণ নিষ্ক্রিয় করতে হবে এবং একটি সিস্টেমযুক্ত পরিষেবা সেট আপ করতে হবে নির্বাহ

/usr/local/bin/linux-purge --auto-only --keep 1 --yes

তুমি যখন চাও.

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