Добрый день! При удалении старых ядер выяснилось, что не только удаляются записи об этих ядрах из /boot/boot.conf, но и параметр default сбрасывается на последнюю версию ядра, даже когда его изначальное значение не указывало на удаляемое ядро. Пример. Есть такой конфиг: default=4.9.146-elbrus-def-alt2.7.7 timeout=3 label=3.14.79-elbrus-8c-alt13.72.7 partition=0 image=/image-3.14.79-elbrus-8c-alt13.72.7 initrd=/initrd-3.14.79-elbrus-8c-alt13.72.7.img cmdline=console=ttyS0,115200 console=tty0 hardreset root=UUID=c2c1b89f-be52-421e-ae82-d0a3eb24ff78 label=3.14.79-elbrus-8c-alt13.72.9 partition=0 image=/image-3.14.79-elbrus-8c-alt13.72.9 initrd=/initrd-3.14.79-elbrus-8c-alt13.72.9.img cmdline=console=ttyS0,115200 console=tty0 hardreset root=UUID=c2c1b89f-be52-421e-ae82-d0a3eb24ff78 label=image-4.9.0-1.6-e8c partition=0 image=/image-4.9.0-1.6-e8c initrd=/initrd-4.9.146-elbrus-def-alt2.7.2.img cmdline=console=ttyS0,115200 console=tty0 hardreset root=UUID=c2c1b89f-be52-421e-ae82-d0a3eb24ff78 label=image-4.14.78 partition=0 image=/image-4.14.78-0.xx-rt47-e2k initrd=/initrd-4.9.146-elbrus-def-alt2.7.2.img cmdline=console=ttyS0,115200 console=tty0 hardreset root=UUID=c2c1b89f-be52-421e-ae82-d0a3eb24ff78 label=4.9.146-elbrus-def-alt2.7.7 partition=0 image=/image-4.9.146-elbrus-def-alt2.7.7 initrd=/initrd-4.9.146-elbrus-def-alt2.7.7.img cmdline=console=ttyS0,115200 console=tty0 hardreset root=UUID=c2c1b89f-be52-421e-ae82-d0a3eb24ff78 label=4.9.146-elbrus-def-alt3.4.2 partition=0 image=/image-4.9.146-elbrus-def-alt3.4.2 initrd=/initrd-4.9.146-elbrus-def-alt3.4.2.img cmdline=console=ttyS0,115200 console=tty0 hardreset root=UUID=c2c1b89f-be52-421e-ae82-d0a3eb24ff78 Удаляю старое ядро: # apt-get remove kernel-image-elbrus-8c=3.14.79-alt13.72.7 Получаю конфиг: default=4.9.146-elbrus-def-alt3.4.2 timeout=3 label=3.14.79-elbrus-8c-alt13.72.9 partition=0 image=/image-3.14.79-elbrus-8c-alt13.72.9 initrd=/initrd-3.14.79-elbrus-8c-alt13.72.9.img cmdline=console=ttyS0,115200 console=tty0 hardreset root=UUID=c2c1b89f-be52-421e-ae82-d0a3eb24ff78 label=image-4.9.0-1.6-e8c partition=0 image=/image-4.9.0-1.6-e8c initrd=/initrd-4.9.146-elbrus-def-alt2.7.2.img cmdline=console=ttyS0,115200 console=tty0 hardreset root=UUID=c2c1b89f-be52-421e-ae82-d0a3eb24ff78 label=image-4.14.78 partition=0 image=/image-4.14.78-0.xx-rt47-e2k initrd=/initrd-4.9.146-elbrus-def-alt2.7.2.img cmdline=console=ttyS0,115200 console=tty0 hardreset root=UUID=c2c1b89f-be52-421e-ae82-d0a3eb24ff78 label=4.9.146-elbrus-def-alt2.7.7 partition=0 image=/image-4.9.146-elbrus-def-alt2.7.7 initrd=/initrd-4.9.146-elbrus-def-alt2.7.7.img cmdline=console=ttyS0,115200 console=tty0 hardreset root=UUID=c2c1b89f-be52-421e-ae82-d0a3eb24ff78 label=4.9.146-elbrus-def-alt3.4.2 partition=0 image=/image-4.9.146-elbrus-def-alt3.4.2 initrd=/initrd-4.9.146-elbrus-def-alt3.4.2.img cmdline=console=ttyS0,115200 console=tty0 hardreset root=UUID=c2c1b89f-be52-421e-ae82-d0a3eb24ff78 Секция, соответствующая удаляемой версии ядра была изменена верно, а вот изменение параметра default совершенно не нужно. Если бы я его не заметил, получил бы непригодную к загрузке машину (ядро 3.4.2 сейчас тестируются и с ним пока есть проблемы). Прошу доработать логику таким образом, чтоб default менялся только если он указывает на удаляемое ядро.
PS: было бы здорово свести форк из sisyphus_e2k с основной веткой в sisyphus и туда и закинуть.
Я так понимаю, речь про lilo? Вообще странно, я именно в таком виде lilo и использую: default куда-то, эксперименты с ядрами, "lilo -R" и т.п., но ни разу такой ситуации не видел, чтобы default перезаписался. Даже когда ядро default удаляется (при этом очевидное собщение об ошибке возникает). Но не Эльбрус. Или на Эльбрусе не тот уже bootloader-utils?
(In reply to Sergey Y. Afonin from comment #2) > Я так понимаю, речь про lilo? Вообще странно, я именно в таком виде lilo и > использую: default куда-то, эксперименты с ядрами, "lilo -R" и т.п., но ни > разу такой ситуации не видел, чтобы default перезаписался. Даже когда ядро > default удаляется (при этом очевидное собщение об ошибке возникает). Но не > Эльбрус. Или на Эльбрусе не тот уже bootloader-utils? Нет, речь не про lilo. На Эльбрусах firmware железа (называют просто boot) сама грузит ядро. А наши утилиты только правят /boot/boot.conf для этого бута, который похож на конфиг от лило. На данный момент на Эльбрусе bootloader-utils-0.4.26-alt4.