今天我启动了一台 Ubuntu 电脑,两周前我最后一次使用时它运行良好,现在我拥有的每个内核(4.15.x 和 4.13.x)在启动开始时都会出现混乱,包括在恢复模式下。
我无法读取大部分内核恐慌跟踪信息,但消息是not syncing: Attempted to kill init!
。
我使用 Memtest86+ 检查了 RAM 和fsck
启动盘:两者都很好,这不仅仅是硬件问题,因为我可以将硬件与 Live USB 一起使用。
我想通过从 Live USB 更新 chroot 来修复它。但没用
root@ubuntu-mate:/# apt update
Segmentation fault (core dumped)
root@ubuntu-mate:/# python3
Illegal instruction (core dumped)
root@ubuntu-mate:/# ptrace
Illegal instruction (core dumped)
root@ubuntu-mate:/# gcc
Illegal instruction (core dumped)
root@ubuntu-mate:/# debsums
Illegal instruction (core dumped)
root@ubuntu-mate:/# dpkg
Illegal instruction (core dumped)
(ping
,node
并且bash
由于某种原因工作正常,但共享库不应该导致这种情况)
这些程序安装amd64
并运行在chroot
同amd64
一个硬件上,非常轻微内核比预期的要旧 (4.15.29 < 4.15.33)。Live USB 和原始 Ubuntu 安装都是 Ubuntu MATE 18.04.1 LTS,它们都有libc6
版本2.27-3ubuntu1
,应该是相同的 ELF 解释器ld-2.27.so
。
如果我将 Live USB 的 Python 3 复制到 chroot,它不起作用:
Illegal instruction (core dumped)
而且如果我把原系统的 Python 3 复制到 Live 系统,同样也不起作用
Illegal instruction (core dumped)
如果这只是原始系统二进制文件相对于 CPU 固件而言已过时,那么其中一个二进制文件应该在另一个环境中运行。
两个python3
s 具有不同的校验和,但是两个ld.so
s 具有相同的校验和。
如果我init
在 chroot 中运行(我不知道这实际上会做什么),则会出现以下消息
Inconsistency detected by ld.so: ../sysdeps/x86_64/dl-machine.h: 540:
elf_machine_rela_relative: Assertion `ELFW(R_TYPE) (reloc->r_info) ==
R_X86_64_RELATIVE' failed!
很难说代码因为我不熟悉 glibc 符号,但我猜测对于我的系统的 ELF 二进制文件来说reloc->r_info
它不是8
(R_X86_64_RELATIVE)。
发生了什么事?我该如何恢复旧系统解释二进制文件的能力?
PPA 列表(这些都不应该导致 ld.so 不一致)
** /etc/apt/sources.list.d/atom.列表: deb [arch=amd64] https://packagecloud.io/AtomEditor/atom/any/ 任何主要 ** /etc/apt/sources.list.d/atom.list.save: deb [arch=amd64] https://packagecloud.io/AtomEditor/atom/any/ 任何主要 ** /etc/apt/sources.list.d/dr-graef-ubuntu-pure-lang_bionic-bionic.list: deb http://ppa.launchpad.net/dr-graef/pure-lang.bionic/ubuntu bionic main ** /etc/apt/sources.list.d/google-chrome.列表: deb [arch=amd64] http://dl.google.com/linux/chrome/deb/ 稳定主 ** /etc/apt/sources.list.d/google-chrome.list.save: deb [arch=amd64] http://dl.google.com/linux/chrome/deb/ 稳定主 ** /etc/apt/sources.list.d/nilarimogard-ubuntu-webupd8-bionic.列表: deb http://ppa.launchpad.net/nilarimogard/webupd8/ubuntu artful main ** /etc/apt/sources.list.d/nilarimogard-ubuntu-webupd8-bionic.list.save: deb http://ppa.launchpad.net/nilarimogard/webupd8/ubuntu artful main ** /etc/apt/sources.list.d/nodesource.列表: deb https://deb.nodesource.com/node_8.x bionic main ** /etc/apt/sources.list.d/nodesource.list.save: deb https://deb.nodesource.com/node_8.x bionic main ** /etc/apt/sources.list.d/skype-stable.列表: deb [arch=amd64] https://repo.skype.com/deb 稳定主 ** /etc/apt/sources.list.d/skype-stable.list.save: deb [arch=amd64] https://repo.skype.com/deb 稳定主 ** /etc/apt/sources.list.d/snaipewastaken-ubuntu-ppa-artful.list: deb http://ppa.launchpad.net/snaipewastaken/ppa/ubuntu zesty main ** /etc/apt/sources.list.d/snaipewastaken-ubuntu-ppa-artful.list.save: deb http://ppa.launchpad.net/snaipewastaken/ppa/ubuntu zesty main ** /etc/apt/sources.list.d/vivaldi.列表: deb http://repo.vivaldi.com/stable/deb/ 稳定主 ** /etc/apt/sources.list.d/vivaldi.list.save: deb http://repo.vivaldi.com/stable/deb/ 稳定主