Замена ядра в PuppyRus-A, DDR

Описание в статье дано на примере (т.е. цифры версии ядра у Вас могут быть другие):

  • дистрибутива PuppyRus-A версии pra02-1409fat-xfce с ядром 3.14.17;
  • старого ядра 3.12.4 porteus (noPAE).

Зачем это нужно?

Для компьютеров со старыми процессорами

Например «Pentium-M» . Ядра PRA собраны с поддержкой PAE. При загрузке на старом процессоре имеем «панику» процессора (kernel panic)

PuppyRus-A собирается из i686 пакетов Arch Linux и поддерживает процессоры архитектуры i686 и x86_64.


Для справки:

  • процессор Pentium - имеет архитектуру i586;
  • процессоры Pentium II, Pentium III, Pentium M, Pentium 4 - имеют архитектуру i686;
  • процессоры более позднего выпуска, такие как Core 2 и последующие - имеют архитектуру x86_64.

При нестабильной работе

  • Может проявляться как зависания
  • Некорректный переход в ждущий режим (suspend)

При отсутствии нужных модулей ядра

  • Например, проприетарных видеодрайверов

Порядок действий

1. Расположение дистрибутива

Дистрибутив pra02-1409fat-xfce у меня установлен в папку /pra/, размещенную в корне раздела sda5 «винта» ноутбука.

2. Скачиваем ядро и initrd

AUFS

Возможно использование любых aufs ядер. Например, из

  • i686 (32bit); x86_64 (64bit). -pf и -porteus ядра скомпилены с монолитным включением модулей, необходимых для загрузки с основных носителей. Это позволяет использовать упрощенные initrd (без модулей ядра и udev). Рекомендуется браль ядра из директории tested
  • Manjaro (только c initrd-rootaufs2)
  • http://repo.archlinuxcn.org/x86_64/ (wiki) linux-pf-*-x86_64.pkg.tar.xz ; есть свежие nvidia
  • Ubuntu, Debian (только c initrd-rootaufs2)
  • Porteus (без проприетарных видео). Старые версии
  • FatDog (overlayfs - не монолитно). src

OverlayFS

Ядра с overlayfs (из репозитория Arch Linux) тоже можно использовать, но только вместе с хуками initrd overlayfs, lf-overlayfs

Initrd

Возможно использование Initrd:

  • porteus : initrd.xz. Оптимален для FRUGAL c pf или porteus ядром
  • rootaufs2: initrd-rafs2-*.xz. Универсален : FULL, FRUGAL, любые AUFS ядра
  • UIRD - наиболее функционален и сложен. В PRA тестировался мало

Подробности и прочие варианты initrd

3. Замена модулей ядра

  • Заменяем в папке /pra/ файл: vmlinuz-3.14.17-pf4 на vmlinuz-p312
  • Заменяем в /pra/base/ файл: 000-kernel на 000-kernel-p312.pfs
  • Переименовываем 000-kernel-p312.pfs в 000-kernel.pfs. Иначе не будет работать шифрованная сохраненка

4. Правка menu.lst

Далее в файле загрузочного меню menu.lst сделать и сохранить запись для загрузки PuppyRus-A в режиме nosave:

  • или с автоматическим поиском нужного раздела диска
title PuppyRus-A xfce k3.12.4 porteus (sda5/pra) nosave
 find --set-root --ignore-floppies --ignore-cd /pra/vmlinuz-p312
 kernel /pra/vmlinuz-p312 dir=pra quiet
 initrd /pra/initrd.xz
  • или с точным указанием раздела диска
title PuppyRus-A xfce k3.12.4 porteus (sda5/pra) nosave
 root (hd0,4)
 kernel /pra/vmlinuz-p312 dir=pra quiet
 initrd /pra/initrd.xz

5. Перезагрузка

  • Система благополучно загрузилась со старым ядром. Теперь мой ноутбук работает под PuppyRus-A.
  • Все железо (видеокарта, тачпад, wifi) определилось и работает

6. Проверка результата

Графический режим

Войдя в Главное меню > Система > Hot Keys—горячие клавиши, я увидел на экране белую информационную надпись
с выделенным текстом вверху: pra02-1409 3.12.4-porteus.
Это отображается название используемого дистрибутива и название установленного в нем ядра.
Ниже еще указан пароль для пользователей root и live.

Консоль

uname -a

Автор: Александр Д. 23.09.2014 ; sfs 24.06.2019

Печать/экспорт