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

Стоит ли обновлять ядро ​​на машине Linux?

Насколько я понял, обновление до нового ядра (с нормальным linux-image... пакет, а не путем накатывания собственного) требует перезапуска сервера.

Однако на одном из наших серверов (Ubuntu 10.04) работает несколько обширных screen сеансы. Перезапуск убивает те, что всегда доставляют неудобства их владельцам (в основном из-за утерянных историй сеансов).

Что я должен делать? Я вижу несколько возможностей:

Я предполагаю, что в конечном итоге это сводится к следующему вопросу: Насколько важно обновить ядро?

Я разместил этот вопрос здесь вместо askubuntu.com, поскольку я думаю, что это не проблема, специфичная для Ubuntu, хотя на этом сервере работает Ubuntu.

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

  • Характер ошибок исправлен патчем. Многие обновления относятся только к определенным модулям, драйверам оборудования или платформам или касаются ситуации, которая не может возникнуть в вашей системе.
  • Тип используемой вами системы: какие службы она предлагает, как она связана, заслуживают ли доверия ваши пользователи (в случае возможной ошибки повышения привилегий пользователя)?
  • Каковы будут последствия ошибки при срабатывании? Будет ли он уничтожать файлы или позволить всем стать root или какая-то неиспользуемая подсистема перестанет работать?

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

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

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

  • Назначьте постоянный интервал технического обслуживания, например, каждую субботу с 00:00 до 00:00.
  • Выполните все свои обновления за это время.
  • Перезагрузите систему, если этого требуют обновления.

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

Как вы будете устанавливать и перезагружать системы, зависит от вас, однако я рекомендую сделать это максимально автоматизированным. Таким образом, вам не придется беспокоиться о том, что вы забыли выполнить обновление, и если пользователь жалуется, вы всегда можете указать ему в ответ и сказать ему: «Нет, я не видел, как вы работаете в системе. Это постоянное окно, которое вы знать могут произойти перезагрузки автоматически. "

Просто будьте осторожны, как вы представляете потребность и как вы реагируете на пользователей. когда что происходит. Меньше всего вам хочется казаться BOFH-esque.

Я думаю, что для исправления уязвимостей стоит постоянно обновлять систему, но я бы не стал просто обновлять ядро, чтобы обновить его. Если вы все же обновите ядро, я бы обязательно перезагрузился. Когда вы запускаете обновление, оно обновляет загрузчик, поэтому при следующей перезагрузке он все равно загрузит ядро ​​(если вы не измените его заранее). Это не лучший день для перезагрузки вашего сервера из-за сбоя питания или неправильного использования sudo только для того, чтобы обнаружить, что критическое приложение не запускается, потому что вам нужно что-то перекомпилировать для нового ядра.

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

Я думаю, вам следует / Представьте, что вы просто продолжаете обновлять ядро. Позже вы увидите, сколько пользователей с сеансами экрана действительно жалуются. Я имею в виду, вы root или нет? Покажите им, кто все контролирует.