Какова логика хранения пакетов ядра?

Я надеюсь, что кто-то с немного большим знанием может объяснить что-то в отношении выполнения apt-get upgrade в Ubuntu 16.04 и позже.

Поведение, которое я вижу, это то, что apt-get upgrade иногда не будет устанавливать новые пакеты ядра, а иногда будут:

т.е. из вывода:

The following packages have been kept back: linux-generic linux-headers-generic linux-image-generic linux-tools-generic

Я знаю, что выполнение dist-upgrade установит эти пакеты (так что не повторяйте этот ответ :-). То, что я не знаю, это то, что контролирует трюки в этих пакетах. Иногда новые ядра устанавливаются при выполнении apt-get upgrade, а иногда и пакетов.

Являются ли эти трюки самими каноническими, связаны ли они с зависимостями от других пакетов?

4
задан 2 June 2017 в 16:09

2 ответа

Команда apt-get upgrade только обновляет пакеты до их новой версии, не собирается устанавливать новый пакет или не удаляет какие-либо обновления пакета.

Когда вы обновляете свое ядро, вы фактически устанавливая новое ядро. Ubuntu не будет обновлять ядро, он установит новый, сохранив старый.

Но почему? почему мы устанавливаем новую версию ядра вместо того, чтобы обновлять ее до последней версии? ответ - из-за стабильности.

Вы никогда не знаете, что произойдет после обновления ядра, это может не выполнить загрузку вашей системы или заставить ваше оборудование работать правильно. Вы всегда должны хранить старую версию, поэтому в случае каких-либо проблем у вас все еще есть рабочий компьютер.

Никогда не обновляйте свое рабочее ядро.

Говорит руководство по обновлению системы Slackware.

Дополнительная информация

man apt-get:

Никогда не обновляйте рабочее ядро.

ни при каких обстоятельствах в настоящее время не установлены удаленные пакеты или пакеты, которые еще не установлены и не установлены. Новые версии установленных пакетов, которые не могут быть обновлены без изменения статуса установки другого пакета, будут оставлены в их текущей версии.

$ apt-cache search linux-image-4.4.*-generic | tail -3 linux-image-4.4.0-75-generic - Linux kernel image for version 4.4.0 on 64 bit x86 SMP linux-image-4.4.0-77-generic - Linux kernel image for version 4.4.0 on 64 bit x86 SMP linux-image-4.4.0-78-generic - Linux kernel image for version 4.4.0 on 64 bit x86 SMP

Однако, как вы знаете, вы можете использовать apt-get dist-upgrade или apt upgrade для установки этих пакетов «назад назад».

5
ответ дан 18 July 2018 в 12:18

Команда apt-get upgrade только обновляет пакеты до их новой версии, не собирается устанавливать новый пакет или не удаляет какие-либо обновления пакета.

Когда вы обновляете свое ядро, вы фактически устанавливая новое ядро. Ubuntu не будет обновлять ядро, он установит новый, сохранив старый.

Но почему? почему мы устанавливаем новую версию ядра вместо того, чтобы обновлять ее до последней версии? ответ - из-за стабильности.

Вы никогда не знаете, что произойдет после обновления ядра, это может не выполнить загрузку вашей системы или заставить ваше оборудование работать правильно. Вы всегда должны хранить старую версию, поэтому в случае каких-либо проблем у вас все еще есть рабочий компьютер.

Никогда не обновляйте свое рабочее ядро.

Говорит руководство по обновлению системы Slackware.

Дополнительная информация

man apt-get:

Никогда не обновляйте рабочее ядро.

ни при каких обстоятельствах в настоящее время не установлены удаленные пакеты или пакеты, которые еще не установлены и не установлены. Новые версии установленных пакетов, которые не могут быть обновлены без изменения статуса установки другого пакета, будут оставлены в их текущей версии.

$ apt-cache search linux-image-4.4.*-generic | tail -3 linux-image-4.4.0-75-generic - Linux kernel image for version 4.4.0 on 64 bit x86 SMP linux-image-4.4.0-77-generic - Linux kernel image for version 4.4.0 on 64 bit x86 SMP linux-image-4.4.0-78-generic - Linux kernel image for version 4.4.0 on 64 bit x86 SMP

Однако, как вы знаете, вы можете использовать apt-get dist-upgrade или apt upgrade для установки этих пакетов «назад назад».

5
ответ дан 24 July 2018 в 19:56
  • 1
    +1 Да, как я уже сказал, он будет установлен как новый пакет;) – Ravexina 3 June 2017 в 20:52
  • 2
    Да. Я читаю это. Но даже если это не так, вы не сможете обновить пакет ядра, потому что обновленный пакет - это новый пакет. Btw, поздравляет с достижением рубежа 10 000 :) – Anwar 3 June 2017 в 20:55
  • 3
    Спасибо;) Я обновил ответ, чтобы сделать его более понятным :-) – Ravexina 3 June 2017 в 20:56

Другие вопросы по тегам:

Похожие вопросы: