LINUX.ORG.RU
решено ФорумAdmin

Debian: chroot не работает с ядром 4.8

 ,


2

0

Debian stable, ядро 4.7 (4.7.8-1~bpo8+1) из backports, chroot работает

[host]# chroot /chroot_env /bin/bash
[in_chroot] # 

Тот же Debian stable, ядро 4.8 (4.8.11-1~bpo8+1) из backports, chroot НЕ работает

[host]# chroot /chroot_env /bin/bash
Segmentation fault
[host]# chroot /chroot_env /bin/dash  --- (dash работает)
[in_chroot] # bash
Segmentation fault
[in_chroot] # tcsh
Segmentation fault
[in_chroot] # ldd
Segmentation fault

selinux'a нет.

Что изменилось такого в 4.8? Что делать, кроме отката на 4.7?

★★★★★

Ответ на: Нашел что-то по теме: от Vsevolod-linuxoid

Re: Нашел что-то по теме:

Ничего полезного там нет. Спасибо за поиск в любом случае.

futurama ★★★★★ ()

Нашел такое по этому поведению

This was an intentional change in 4.8.4-1~exp1 afaict, from the
changelog entry:

  * [amd64] Enable LEGACY_VSYSCALL_NONE instead of LEGACY_VSYSCALL_EMULATE.
    This breaks (e)glibc 2.13 and earlier, and can be reverted using the kernel
    parameter: vsyscall=emulate
futurama ★★★★★ ()
Ответ на: комментарий от futurama

Да это оно. Добавил vsyscall=emulate к параметрам ядра в grub. Все заработало.

$ grep VSYSCAL /boot/config-4.8.0-0.bpo.2-amd64 
CONFIG_GENERIC_TIME_VSYSCALL=y
CONFIG_X86_VSYSCALL_EMULATION=y
# CONFIG_LEGACY_VSYSCALL_NATIVE is not set
# CONFIG_LEGACY_VSYSCALL_EMULATE is not set
CONFIG_LEGACY_VSYSCALL_NONE=y

$ grep VSYSCAL /boot/config-4.7.0-0.bpo.1-amd64 
CONFIG_GENERIC_TIME_VSYSCALL=y
CONFIG_X86_VSYSCALL_EMULATION=y
# CONFIG_LEGACY_VSYSCALL_NATIVE is not set
CONFIG_LEGACY_VSYSCALL_EMULATE=y
# CONFIG_LEGACY_VSYSCALL_NONE is not set
futurama ★★★★★ ()
Последнее исправление: futurama (всего исправлений: 1)
Ответ на: комментарий от futurama

О, кажется это то, что нужно. Судя по статье в Arch-wiki, надо просто в /etc/default/grub прописать

GRUB_CMDLINE_LINUX_DEFAULT="vsyscall=emulate"
, а затем выполнить
grub-mkconfig -o /boot/grub/grub.cfg

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