المساعد الشخصي الرقمي

مشاهدة النسخة كاملة : حل مشكلة remove old kernels ? /boot partition is 85% full, need to free up the space



Rise Company
10-12-2020, 02:19
حل مشكلة remove old kernels ? /boot partition is 85% full, need to free up the space
حل مشكلة امتلاء الكيرنل فى الينكس - حذف الكيرنل القديم فى لينكس - whm/ cpanel
How to remove old kernels ? /boot partition is 85% full, need to free up the space
How to remove old kernels on CentOS 7.9 (to free up boot partition)?
howto delete/remove/clean old kernels on CentOS 7.5
How to Delete Old Unused Kernels in CentOS
boot partition is almost full in CentOS
ترقية kernel فى السيرفر لاخر اصدار

https://www.rise.company/upload/uploads/160925382352351.png

مشكلة امتلاء مساحة البوت للكيرنل boot partition is 85%
Fedora/CentOS/RHEL

نحن نشرح هنا سيرفرات لينكس CentOS Linux تحتاج تحديث للنظام و يضيف مجلد كيرنل Kernel جديد

هذا التحديث يتم وضعه داخل boot partition وبمجرد هناك تحديث جديد يضاف الجديد

والقديم لا يحذف حيث يصبح كانه backup فى حالة حدوث مشكلة اقلاع فى النسخة الجديدة

ينزل تلقائيا الى النسخة الاقدم و هكذا , وبيكون الافتراضى 5 نسخ مخذنه فى boot partition

وولاسف اغلب boot partition بيكون المساحة الخاصة به تقريبا 250 ميجا !

وكل تحديث بيكون فى الغالب متوسط المساحة 50 ميجا اذا تراكمت هذه النسخ

يحدث امتلاء فى مساحة boot ويجب حذف الاصدارات القديمة من kernels

وهناك طريقتين فى حذف الكرنل القديم انا manual او automatic

وكذلك تعديل النظام بدل من الاحتفاظ بـ 5 نسخ نجعلها 2 فقط

-----------------------------------------------------
طريقة Manual لحذف الكيرنل القديم remove old kernels
-----------------------------------------------------

اذهب الى whm ثم terminal ثم ادخل هذا الامر " لمعرفة اصدار الكيرنل الحالى "
Check for current Kernel


uname -sr


النتيجة
https://www.rise.company/upload/uploads/1608302599581.png

ثم ادخل هذا الامر " لمعرفة جميع اصدارات الكيرنل الموجودة "
list all currently installed kernels


rpm -q kernel

النتيجة :
kernel-3.10.0-1062.9.1.el7.x86_64
kernel-3.10.0-1127.13.1.el7.x86_64
kernel-3.10.0-1127.19.1.el7.x86_64
kernel-3.10.0-1160.6.1.el7.x86_64

تابع الاصدارات فى الارقام
الحديث باللون الاخضر 1160 والاقدم باللون الوردي هو 1062
يمكنك حذف اخر نسخة قديمة او اكثر ولكن اترك دائما
اقل شىء نسختين لديك الحالي + الاصدار الى يسبقه

ادخل هذا الامر " لحذف الكيرنل القديم المختار "



rpm -ev kernel-3.10.0-1062.9.1.el7.x86_64

النتيجة مثل هذا تقريبا سواء automatic او manual" تم نقلها من احد المواقع "


Loaded plugins: fastestmirror, langpacks, product-id, versionlock
--> Running transaction check
---> Package kernel.x86_64 0:3.10.0-229.el7 will be erased
---> Package kernel.x86_64 0:3.10.0-229.14.1.el7 will be erased
---> Package kernel-devel.x86_64 0:3.10.0-229.1.2.el7 will be erased
---> Package kernel-devel.x86_64 0:3.10.0-229.14.1.el7 will be erased
--> Finished Dependency Resolution

Dependencies Resolved

================================================== ================================================== ================================================== =========================================
Package Arch Version Repository Size
================================================== ================================================== ================================================== =========================================
Removing:
kernel x86_64 3.10.0-229.el7 @anaconda 131 M
kernel x86_64 3.10.0-229.14.1.el7 @updates 131 M
kernel-devel x86_64 3.10.0-229.1.2.el7 @updates 32 M
kernel-devel x86_64 3.10.0-229.14.1.el7 @updates 32 M

Transaction Summary
================================================== ================================================== ================================================== =========================================
Remove 4 Packages
Installed size: 326 M
Is this ok [y/N]: y

راجع وتاكد انه حذف القديم و ليس الجديد
وبعد التاكد قم بالضغط على y ليتم التنفيذالامر

Downloading packages:
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
Erasing : kernel-devel.x86_64 1/4
Erasing : kernel.x86_64 2/4
Erasing : kernel-devel.x86_64 3/4
Erasing : kernel.x86_64 4/4
Loading mirror speeds from cached hostfile
* base: centos.mirror.snu.edu.in
* epel: repo.ugm.ac.id
* extras: centos.mirror.snu.edu.in
* rpmforge: kartolo.sby.datautama.net.id
* updates: centos.mirror.snu.edu.in
Verifying : kernel-3.10.0-229.el7.x86_64 1/4
Verifying : kernel-devel-3.10.0-229.14.1.el7.x86_64 2/4
Verifying : kernel-3.10.0-229.14.1.el7.x86_64 3/4
Verifying : kernel-devel-3.10.0-229.1.2.el7.x86_64 4/4

Removed:
kernel.x86_64 0:3.10.0-229.el7 kernel.x86_64 0:3.10.0-229.14.1.el7 kernel-devel.x86_64 0:3.10.0-229.1.2.el7 kernel-devel.x86_64 0:3.10.0-229.14.1.el7

Complete!

-----------------------------------------------------
طريقة Automatic لحذف الكيرنل القديم remove old kernels
-----------------------------------------------------
ننصح بهذه الطريقة و هى الافضل ,واستخدم manual لمراجعه بيانات السيرفر ثم نفذ automatic

ادخل هذا الامر " لتثبيت اضافة yum-utils وهى ادوات اكثر قوة و سهولة فى عمل المطلوب "
Install the yum-utils if they aren't installed
yum install yum-utils

ثم ادخل هذا الامر " لحذف جميع الكيرنل القديم وهيترك 2 فقط "
Cleanup old kernels and don't keep more than 2
package-cleanup --oldkernels --count=2

النتيجة

https://www.rise.company/upload/uploads/160830420360091.png

-----------------------------------------------------
تعديل النظام لكى يحتفظ بـ 2 كيرنل فقط بدل من 5 الافتراضى
-----------------------------------------------------

لتجنب تكرار امتلاء مساحة boot يمكنك تعديل الافتراضى داخل النظام

وهو ان عدد 5 كيرنل فقط مسموح به واكثر من ذلك يحذف تلقائيا مع كل تحديث جديد

وفى الحقيقة هذا رقم كبير على مساحة صغير, لذلك يمكننا جعلها 2 او 3 بدل 5

وبالتالى لن يتكرر معك مشكلة امتلاء المساحة بطريقة امنه تماما

حيث ان السيرفر يحتفظ بقيمة 5 انت اجعلها 2 فقط

ادخل هذا الامر "لفتح ملف اعدادات النظام لتعديل قيمة 5 "


nano /etc/yum.conf

ثم ابحث عن


installonly_limit=5

اجعلها


installonly_limit=2

ثم حفظ

-----------------------------------------------------
تحديث النظام الى اخر اصدار كيرنل System Update include Kernel
-----------------------------------------------------

https://www.rise.company/upload/uploads/160830517036271.png

اذهب الى هذا المسار Home »Software »System Update

ثم اضغط على update وانتظر 3 دقائق تقريبا وهيظهر لك نتائج

تثبيت النسخة القديمة و حذف اى نسخة قديمة مع ترك 2 فقط الحالى و الذى يسبقه

كما قمنا بتحديده فى الخطوة السابقة فىinstallonly_limit بدل من 5 جعلناها 2

وبالتالى لن يحدث معك مشكلة امتلاء مساحة boot مرة اخري

-----------------------------------------------------
هل تحديث النظام الى اخر اصدار كيرنل هام ؟
-----------------------------------------------------

هام جدا على شان شىء واحد فقط هو الى هيفيدك وهو Security

بالطبع هناك مميزات اخري لن تفرق معك على الاطلاق ولكن الحماية هى اهم ميزة

لذلك تجد cPanel Security Advisor دائما يطلب منك عمل kernel update

ولكن يتطلب هذا ريستارت للسيرفر ولا بد منه لذلك هناك خاصية تسمي KernelCare

تجعلك تعمل update بدون الحاجة للريستارت من خلال اختيارها لملفات security فقط وتجاهل غيرها

https://www.rise.company/upload/uploads/160830560158611.png

وفى الحقيقة نحن نفضل عمل restart للسيرفر لانع بيعمل refresh للنظام ككل .

-----------------------------------------------------
ملحوظات هامة :
-----------------------------------------------------

خطوة حذف الكيرنل خطرة اذا تم حذف الجديد او تم حذف الاقدم منها والتى تستخدم باك اب
حيث Boot يعتمد عليها واى خلل هنا السيرفر لن يدخل على سيستم لينكس من الاصل
وبالتالى هتفقد التحكم فى السيرفر وهيتطلب التواصل مع الدعم الفنى لارجاع البوت الى نسخة اقدم
ولن يفقد اى شىء منك غير البوت وطالما لديك النسخة الحالية و السابقة اى نسختين
فهم كافى تمام للتبديل بينهم اذا حدث مشكلة لا قدر الله ونادرا ما يحدث

الخطوات فى الاعلى امنه بدون مشاكل ولكن تاكد من نتائج الاومار المدخلة
حيث انها هتجعلك تطمئن ان حطواتك سليمة و لا يوجد مشاكل متوقع حدوثها,
ثم اعمل ريستارت للسيرفر للتاكد ان الاقلاع تم بدون مشاكلة,
تم تطبيق تلك الخطوات وهى تعمل بشكل سليم 100 !
كذلك ينصح بمراجعة جميع المراجع فى الاسفل.


يفضل اخذ باك اب شامل للموقع كنظام system و حسابات accounts
اذا كنت مفعل backup اسبوعى يمكنك اضافة google drive ايضا
لكى ياخذ نسخة على السيرفر و على جوجل درايف ايضا فى حالة حدوث شىء
هينفع وجود google drive فى عدم فقدان اى شىء من المواقع.

شاهد ايضا :
السي بانال CPanel اخذ باك اب كامل خارج السيرفر whm backup to Google Drive (https://www.rise.company/forum/threads/62786-%D8%A7%D9%84%D8%B3%D9%8A-%D8%A8%D8%A7%D9%86%D8%A7%D9%84-CPanel-%D8%A7%D8%AE%D8%B0-%D8%A8%D8%A7%D9%83-%D8%A7%D8%A8-%D9%83%D8%A7%D9%85%D9%84-%D8%AE%D8%A7%D8%B1%D8%AC-%D8%A7%D9%84%D8%B3%D9%8A%D8%B1%D9%81%D8%B1-whm-backup-to-Google-Drive)


المرجع:
https://forums.cpanel.net/threads/boot-partition-full.402022/
https://www.tecmint.com/delete-old-kernels-in-centos-rhel-and-fedora/
https://serverfault.com/questions/562016/how-to-remove-old-kernels-on-centos-6-to-free-up-boot-partition
https://www.if-not-true-then-false.com/2012/delete-remove-old-kernels-on-fedora-centos-red-hat-rhel/
http://cpanelplesk.com/centos-redhat-boot-partition-full-remove-old-kernels/
https://linuxconfig.org/how-to-remove-old-unused-kernels-on-centos-linux
https://geektnt.com/how-to-remove-old-kernels-on-rhelcentos.html
https://unix.stackexchange.com/questions/105026/boot-partition-is-almost-full-in-centos