TGViewer
ServerAdmin.ru ServerAdmin.ru @srv_admin · 32.6K subscribers
Post #4973 9.13K
Как понять, что системе на базе Linux требуется перезагрузка? Самый простой способ - использовать программу needrestart (deb дистрибутивы) или needs-restarting (rpm дистрибутивы). Я про неё подробно рассказывал. Её можно использовать для собственного мониторинга. Также другой софт может на неё опираться. Например, Lynis.

Needrestart установлен не всегда и не везде. Например, в базовых образах LXC контейнеров в Proxmox его нет. Если система не ваша, то самостоятельно лучше ничего не ставить.

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

# lsof -nP +L1 | grep '(deleted)'
systemd-l 488 root txt  REG  8,1  281096   0 270929 /usr/lib/systemd/systemd-logind (deleted)
dockerd  526 root txt  REG  8,1 75181152   0 265728 /usr/sbin/dockerd (deleted)
sshd   532 root txt  REG  8,1 1265432   0 262298 /usr/sbin/sshd (deleted)
systemd  582 root txt  REG  8,1  92544   0 270899 /usr/lib/systemd/systemd (deleted)
(sd-pam) 584 root txt  REG  8,1  92544   0 270899 /usr/lib/systemd/systemd (deleted)
bash   647 root txt  REG  8,1 1265648   0 263309 /usr/bin/bash (deleted)


Тут видно удалённые файлы системных сервисов, таких как systemd, sshd, ну и bash заодно. То есть было обновление, приехали новые версии этих файлов, заменили старые. Но так как службы не перезапускались, они до сих пор используют удалённые файлы.

Для systemd существует специальная команда для полного перезапуска службы в том числе после обновления:

# systemctl daemon-reexec


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

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

А вот если изменился systemd, glibc или ядро, то тут без reboot уже не обойтись. Ядро, кстати, можно так посмотреть:

# uname -r
6.1.0-35-amd64


Это текущая версия, а вот список установленных ядер:

# dpkg -l | grep linux-image
.................................
ii linux-image-6.1.0-39-amd64   6.1.148-1           amd64    Linux 6.1 for 64-bit PCs (signed)


Установлен пакет с более свежим ядром. Надо перезагружаться.

❗️Если заметка вам полезна, не забудьте 👍 и забрать в закладки.

#linux
  • 👍 152
  • 👎 1
More from @srv_admin
  1. Oct 5, 2026В комментариях к недавней заметке про рабочее место один читатель в комментариях упомянул…
  2. Oct 2, 2026Мне Селектел прислали прикольный светильник, которым я сейчас стал постоянно пользоваться.…
  3. Oct 2, 202620 октября в 12:00 (мск) пройдёт бесплатный вебинар «Мониторинг событий безопасности в MWS…
  4. Oct 2, 2026На днях задачка небольшая была по сохранению команд пользователя в консоли. В ней ничего о…
  5. Oct 1, 2026Делал на днях некоторые покупки компьютерных комплектующих и периферии. От новых цен натур…
  6. Oct 1, 2026Вся правда о безопасности контейнеров 8 октября в 11:00 приходите на стрим «Лаборатории Ка…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →