构建 centos 5 chroot 时出现分段错误

构建 centos 5 chroot 时出现分段错误

对于一些遗留应用程序,我决定使用 CentOS 5 的 chroot。

我确实在虚拟机上安装了 CentOS 5,然后我使用 live CD 启动虚拟机并使用 tar 将文件从虚拟磁盘“复制”到我的(Linux 笔记本电脑)HDD。

然后我尝试 chroot,但令我惊讶的是,我得到了“段错误”。

对于“主机”机器,我使用 Archlinux 64 位 4.17.13。

CentOS 5 的内核是 2.6.9

以下是一些可能有用的信息:

[nmmm@zenbook c5]$ file centos.5.fs/bin/bash    # this is chroot
centos.5.fs/bin/bash: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 2.6.9, stripped

[nmmm@zenbook c5]$ file /bin/bash               # this is my laptop
/bin/bash: ELF 64-bit LSB pie executable x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 3.2.0, BuildID[sha1]=42602c973215ba5b8ab5159c527e72f38e83ee52, stripped

在同一台笔记本电脑上,我使用 CentOS 7 chroot 没有任何问题。

我是否需要一些内核模块或者其他东西?

答案1

听起来像什么https://vargolino.com/wp/?p=145描述:较新的内核禁用 LEGACY_VSYSCALL。

尝试使用启动参数“vsyscall=emulate”启动您的 Live CD。使用 grml,这对我有用:

  • 在启动屏幕上,选择“Isolinux prompt”
grml vsyscall=emulate

也可以看看https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=907918

相关内容