Как RedHat, так и дистрибутив на основе Debian сохраняют несколько версий ядра при установке новой версии с использованием yum
или apt-get
по умолчанию. Это считается хорошей практикой и делается именно для описанного вами случая: если что-то идет не так с последним ядром, вы всегда можете перезагрузиться и в GRUB выбрать загрузку с использованием одного из предыдущих ядер.
В дистрибутивах RedHat вы управляете количеством ядер, которое следует сохранить /etc/yum.conf
при installonly_limit
настройке. На моей новой установке CentOS 7 по умолчанию установлено значение 5.
Кроме того, если в RedHat вы устанавливаете новое ядро из пакета RPM, которое вы должны использовать rpm -ivh
, то нет rpm -Uvh
: первое сохранит старое ядро на месте, а позднее его заменит.
Debian сохраняет старые ядра, но не удаляет их автоматически. Если вам нужно освободить загрузочный раздел, вы должны удалить старые ядра вручную (не забудьте оставить хотя бы одно из предыдущих ядер). Для получения списка всех пакетов для установки ядра и заголовков ядра используйте dpkg -l | egrep "linux-(im|he)"
.
Отвечая на ваш вопрос - Кроме того, возможно ли иметь 2 версии одного и того же ядра? -- Да, это возможно. Я не могу проверить это на CentOS 6.5 прямо сейчас, но на CentOS 7 я смог получить желаемый результат, просто дублируя связанные с ядром файлы /boot
каталога и перестраивая меню grub:
cd /boot
# Duplicate kernel files;
# "3.10.0-123.el7" is a substring in the name of the current kernel
ls -1 | grep "3.10.0-123.el7" | { while read i; \
do cp $i $(echo $i | sed 's/el7/el7.backup/'); done; }
# Backup the grub configuration, just in case
cp /boot/grub2/grub.cfg /boot/grub2/grub.cfg.backup
# Rebuild grub configuration
grub2-mkconfig -o /boot/grub2/grub.cfg
# At this point you can reboot and see that a new kernel is available
# for you to choose in GRUB menu