LINUX.ORG.RU
ФорумAdmin

sshd виснет на старте после обновления до Debian 11

 ,


0

1

Всем добрый день, обновил дедик до Debian 11 и столкнулся со странной проблемой: sshd не может стартовать при запуске системы. Конфиги не менял. Запустил под strace, виснет вот на этом месте:

5230  getpid()                          = 5230                                  
5230  getrandom(0x7f66b668, 32, 0)      = ? ERESTARTSYS (To be restarted if SA_RESTART is set)

Проходит минут 5 и старт начинает проходить нормально, но это неприемлемо, необходимо, чтобы ssh автоматически запускался при старте. Такое ощущение, что сервер не успевает накопить достаточно энтропии, чтобы getrandom() нормально прошёл.

Кто-нибудь сталкивался? Как чинить, кроме как колхозить скрипт для запуска через 5 минут?

PS Сервер на armv7l.


Возможно, поможет установка haveged, но насколько качественная от него будет энтропия, сказать очень трудно (это предмет спора людей с более высокой, чем у меня, квалификацией). Аппаратный ГСЧ, конечно, решил бы проблему на корню.

anonymous
()

О, похоже, вот первоначальная проблема:

# systemctl status haveged
Aug 17 15:55:40 mail.govnosoft.tech systemd[1]: Stopped Entropy Daemon based on>
Aug 17 15:55:40 mail.govnosoft.tech systemd[1]: haveged.service: Start request >
Aug 17 15:55:40 mail.govnosoft.tech systemd[1]: haveged.service: Failed with re>
Aug 17 15:55:40 mail.govnosoft.tech systemd[1]: Failed to start Entropy Daemon >
Benis
() автор топика

haveged уже был установлен, через systemd не стартует

haveged.service: Main process exited, code=killed, status=31/SYS

если запускать руками, то стартует нормально.

На 10 дебиане через systemd стартовал нормально.

Benis
() автор топика
Ответ на: комментарий от Red_Rain

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

systemctl status haveged
● haveged.service - Entropy Daemon based on the HAVEGE algorithm
     Loaded: loaded (/lib/systemd/system/haveged.service; enabled; vendor preset: enabled)
     Active: failed (Result: signal) since Wed 2021-08-18 14:41:48 MSK; 2s ago
       Docs: man:haveged(8)
             http://www.issihosts.com/haveged/
    Process: 16708 ExecStart=/usr/sbin/haveged --Foreground --verbose=1 $DAEMON_ARGS (code=killed, signal=SYS)
   Main PID: 16708 (code=killed, signal=SYS)

Aug 18 14:41:48 mail.govnosoft.tech systemd[1]: haveged.service: Scheduled restart job, restart counter is at 5.
Aug 18 14:41:48 mail.govnosoft.tech systemd[1]: Stopped Entropy Daemon based on the HAVEGE algorithm.
Aug 18 14:41:48 mail.govnosoft.tech systemd[1]: haveged.service: Start request repeated too quickly.
Aug 18 14:41:48 mail.govnosoft.tech systemd[1]: haveged.service: Failed with result 'signal'.
Aug 18 14:41:48 mail.govnosoft.tech systemd[1]: Failed to start Entropy Daemon based on the HAVEGE algorithm.

Benis
() автор топика
Ответ на: комментарий от Benis

Успокойся, Виктор!

Это Лёня Потный выучил русский и сыпет вредными советами)

Twissel ★★★★★
()

Вот ещё веселуха:

# systemctl status systemd-random-seed
● systemd-random-seed.service - Load/Save Random Seed
     Loaded: loaded (/lib/systemd/system/systemd-random-seed.service; static)
     Active: failed (Result: timeout) since Tue 2021-08-17 16:05:24 MSK; 22h ago
       Docs: man:systemd-random-seed.service(8)
             man:random(4)
   Main PID: 2540 (code=killed, signal=TERM)

Aug 17 15:55:24 mail.govnosoft.tech systemd-random-seed[2540]: Kernel entropy pool is not initialized yet, waiting until it is.
Aug 17 16:05:24 mail.govnosoft.tech systemd[1]: systemd-random-seed.service: start operation timed out. Terminating.
Aug 17 16:05:24 mail.govnosoft.tech systemd[1]: systemd-random-seed.service: Main process exited, code=killed, status=15/TERM
Aug 17 16:05:24 mail.govnosoft.tech systemd[1]: systemd-random-seed.service: Failed with result 'timeout'.
Aug 17 16:05:24 mail.govnosoft.tech systemd[1]: Failed to start Load/Save Random Seed.
Warning: journal has been rotated since unit was started, output may be incomplete.
Benis
() автор топика

Дурацкий вопрос: хочу прописать в параметры ядра

random.trust_cpu=on

но не могу понять, какой загрузчик используется. grub не стоит, u-boot не стоит, /boot пустой. Не могу даже понять, куда установлено ядро:

dpkg -l|grep linux
ii  binutils-arm-linux-gnueabihf         2.35.2-2                              armhf        GNU binary utilities, for arm-linux-gnueabihf target
ii  libselinux1:armhf                    3.1-3                                 armhf        SELinux runtime shared libraries
ii  linux-libc-dev:armhf                 5.10.46-4                             armhf        Linux support headers for userspace development
ii  util-linux                           2.36.1-8                              armhf        miscellaneous system utilities
Benis
() автор топика
Ответ на: комментарий от Benis

куда установлено ядро arm

dd-хой в раздел на диске же
может модулей ядра как-раз нет после обновления, арм дистры страдают от обновления ядра

nanosecond
()
Последнее исправление: nanosecond (всего исправлений: 2)
Ответ на: комментарий от nanosecond

То есть само ядро записано прямо в раздел и грузится без загрузчика? Как тогда загрузочные параметры добавить?

Benis
() автор топика
Ответ на: комментарий от nanosecond

Ну вот я смотрю:

# cat /proc/cmdline 
earlyprintk=ttyS0 console=ttyS0,9600n8 nousb noplymouth ip=:::::eth0: boot=local

Где-то же это прописано. Можно это как-то подправить и переDDшить загрузчик?

Benis
() автор топика
Ответ на: комментарий от BOOBLIK

Ты мыслишь не в том направлении.

Fedora Server, Fedora Workstation созданы на общей пакетной базе, но с разными настройками и предустановленными пакетами. Так например в Server версии идёт установленный Cockpit, файловая система по умолчанию режется на lvm+xfs, в Workstation используется по умолчанию btrfs и отсутствует предустановленный Cockpit.

anonymous
()
Ответ на: комментарий от Benis

У вас Scaleway, видимо, старый шаблон виртуалки. В старых шаблонах собственные ядра вне виртуалки, конкретное выбирается в веб-интерфейсе.

ValdikSS ★★★★★
()
Последнее исправление: ValdikSS (всего исправлений: 1)
Ответ на: комментарий от ValdikSS

Ага, нашёл, попробовал разные ядра, результат такой же. А параметры ядра через веб-интерфейс задать нельзя…

Benis
() автор топика
Ответ на: комментарий от Twissel

А вы что же не подскажете товарищу?

Владимир

anonymous
()
Ответ на: комментарий от anonymous

Это невозможно сделать: на инстансе scaleway нельзя ставить свой загрузчик и ядра, можно только в панели управления выбирать из доступных, там доступно три версии ядра. Но уже понятно, что дело не в ядре, а в systemd.

Benis
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.