Назад | Перейти на главную страницу

Linux + как очистить / загрузиться и оставаться только с файлами текущей версии ядра

Под / boot у нас есть следующие файлы (Red Hat Linux версии 6.6)

 cd /boot
 # ls -ltr

  drwx------ 2 root root    12288 Oct 15  2015 lost+found
 -rwxr-xr-x 1 root root  4152624 Oct 15  2015 vmlinuz-2.6.32-504.30.3.el6.x86_64
 -rw------- 1 root root  6084011 Oct 15  2015 initrd-2.6.32- 504.30.3.el6.x86_64kdump.img
  drwxr-xr-x 3 root root     1024 Oct 15  2015 efi
 -rw-r--r-- 1 root root   106371 Oct 15  2015 config-2.6.32-504.30.3.el6.x86_64
 -rw-r--r-- 1 root root  2546171 Oct 15  2015 System.map-2.6.32-504.30.3.el6.x86_64
 -rw-r--r-- 1 root root   200246 Oct 15  2015 symvers-2.6.32-504.30.3.el6.x86_64.gz
 -rw------- 1 root root 19360700 Oct 15  2015 initramfs-2.6.32-504.30.3.el6.x86_64.img
 -rwxr-xr-x 1 root root  4222736 Nov 23  2015 vmlinuz-2.6.32-573.12.1.el6.x86_64
 -rw-r--r-- 1 root root   107139 Nov 23  2015 config-2.6.32-573.12.1.el6.x86_64
 -rw-r--r-- 1 root root  2585672 Nov 23  2015 System.map-2.6.32-573.12.1.el6.x86_64
 -rw-r--r-- 1 root root   206008 Nov 23  2015 symvers-2.6.32-573.12.1.el6.x86_64.gz
 -rw------- 1 root root 24340354 Jul 16 03:20 initramfs-2.6.32-573.12.1.el6.x86_64.img
  drwxr-xr-x 2 root root     1024 Jul 16 03:20 grub

Так как / boot размер очень маленький, (Размер 90M)

Мы хотим удалить предыдущее ядро ​​из / boot включают ВСЕ другие файлы, относящиеся к этому ядру

Текущая работающая версия ядра

 # uname -r
 2.6.32-573.12.1.el6.x86_64

Итак, теперь я хочу захватить все файлы, не относящиеся к ток ядро, и может быть удален из / boot

egrep -v выполнит работу

  # ls -ltr | egrep -v "2.6.32-573.12.1|lost\+found|grub|efi"

  -rwxr-xr-x 1 root root  4152624 Oct 15  2015 vmlinuz-2.6.32-504.30.3.el6.x86_64
  -rw------- 1 root root  6084011 Oct 15  2015 initrd-2.6.32-504.30.3.el6.x86_64kdump.img
  -rw-r--r-- 1 root root   106371 Oct 15  2015 config-2.6.32-504.30.3.el6.x86_64
  -rw-r--r-- 1 root root  2546171 Oct 15  2015 System.map-2.6.32-504.30.3.el6.x86_64
  -rw-r--r-- 1 root root   200246 Oct 15  2015 symvers-2.6.32-504.30.3.el6.x86_64.gz
  -rw------- 1 root root 19360700 Oct 15  2015 initramfs-2.6.32-504.30.3.el6.x86_64.img

  # rpm -qa | grep "2.6.32-504.30.3"
  kernel-2.6.32-504.30.3.el6.x86_64

так что мой план - выполнить следующие

  1. Удалите предыдущее ядро

    rpm –e  kernel-2.6.32-504.30.3.el6.x86_64
    
  2. Удалите следующие файлы из / boot

    rm config-2.6.32-504.30.3.el6.x86_64 
    rm System.map-2.6.32-504.30.3.el6.x86_64
    rm symvers-2.6.32-504.30.3.el6.x86_64.gz
    rm initramfs-2.6.32-504.30.3.el6.x86_64.img
    

Мой вопрос:

Мой план рискованно? , или я могу быть конечно что моя процедура безопасна?

Предыдущий ответ должен сработать, но я подумал, что упомянул, что "Yum-utils" может сделать это проще.

  1. Проверьте, с какими ядрами установлены: rpm -q kernel
  2. установить yum utils: yum install yum-utils
  3. Очистка пакета, где счетчик - это количество ядер, которое вы хотите сохранить: package-cleanup --oldkernels --count=2

Я считаю, что ваш план слишком сложен.

Файлы, которые вы предлагаете удалить на шаге 2, скорее всего, в любом случае принадлежат соответствующему пакету ядра. На моей тестовой машине RHEL 6:

$ rpm -qf /boot/initramfs-2.6.32-573.18.1.el6.x86_64.img kernel-2.6.32-573.18.1.el6.x86_64

и т.п.

Итак, шаг 1 должен удалить все. Что касается того, что удалить, rpm -qa kernel\* отобразит список всех установленных пакетов ядра. Просто найдите то, что не совпадает uname -r. Позаботьтесь о том, как это может повлиять на вашу конфигурацию GRUB, но если вы остаетесь в рамках RHEL, тогда GRUB должен ссылаться только на те ядра, которые установлены.