Linux를 부팅할 수 없음 - 커널 패닉 - 동기화되지 않음 - 도움을 주시면 감사하겠습니다.

Linux를 부팅할 수 없음 - 커널 패닉 - 동기화되지 않음 - 도움을 주시면 감사하겠습니다.

정보: Windows에서 Kali를 듀얼 부팅했는데 Kali 파티션이 암호화되었습니다(터미널에서 "암호화를 잠금 해제하세요..."가 표시됨).

밝기, RGB 및 libc6이라는 패키지를 사용하여 기타 사항을 제어하기 위해 Asus 노트북에 일부 노트북 소프트웨어를 설치하는 데 문제가 있었습니다. 그래서 문제 해결 후에 잘못 설치된 패키지를 수정하려면 apt - -fix-broken이 필요하다는 것을 알았습니다.

그래서 나는 그랬다. 동시에, 고장난 물건을 고치는 것 자체에 문제가 있어서 일단 완료되면 아무것도 실행할 수 없게 되었습니다. 터미널 등을 다시 실행할 수 없습니다.

그래서 재부팅하면 문제가 해결될 것이라고 생각했습니다. 그러면 다음과 같은 화면이 표시됩니다.커널 패닉 모드

이미지가 보이지 않으면 다음과 같습니다.

Begin: Running /scripts/init-bottom ... done.
Not activating Mandatory Access Control as /sbin/tomoyo-init does not exist.
Kernel panic - not syncing: Attempted to kill init! exitcode=0x00000100
CPU: 7 PID: 1 Comm: run-init Tainted: G       E       5.10.0-kali7-amd6 #1 Debian 5.10.28-1kali1
Hardware name: ASUSTeK COMPUTER INC. ROG Strix G531GU_G531GU, BIOS G531GU.309 04/29/2020
Call Trace:
dump_stack+0x6b/0x83
do_exit.cold+0xb3/0xb3
do_group_exit+0x33/0xa0
__x64_sys_exit_group+0x14/0x20
do_syscall_64+0x33/0x80
entry_SYSCALL_64_after_hwframe+0x44/0xa9
RIP: 0033:0x7f4f2f200699
Code: 00 4c 8b ...
RSP: 002b: 00007ffc56e73ffB EFLAGS: 00000246 ORIG_RAX: 0000000000000e7

그래서 이제 어떻게 시작해야 할지 모르겠습니다. HDD가 암호화되어 있기 때문에 인터넷에서 찾은 다른 스레드와 같이 무언가를 변경하기 위해 liveCD 등에서 액세스하는 방법을 모르겠습니다.

최소한 터미널에 액세스할 수 있도록 해주는 부팅 시 실행할 수 있는 도구나 USB 이미지가 있는지 궁금하십니까? 커널이 제대로 실행되고 있다고 생각하지 않기 때문에 이것이 약간 어리석은 일이라는 것을 알고 있지만, 커널은 고도로 사용자 정의되고 Linux 데이터로 가득 차 있기 때문에 처음부터 모든 것을 다시 설치하는 것을 피하고 싶습니다.

추가 정보: 이 소프트웨어에 필요한 패키지는 glibc6의 3.2이고 내 Linux에는 3.1이 설치되어 있으므로 deb 패키지를 다운로드하고 다른 패키지와 마찬가지로 dkpg -i를 사용하여 설치했습니다. 일어날 수 있는 최악의 상황이 무엇인지 생각했는데... 실제로 일어났습니다 :D*

답변1

liveCD나 기타 부팅 가능한 Linux 미디어를 구해 여기에서 시스템을 부팅하세요.

첫 수업:인터넷상의 낯선 사람을 맹목적으로 신뢰하지 마십시오.일부 튜토리얼이나 토론 스레드에서 특정 명령을 실행해야 한다고 제안하는 경우 실제로 실행하기 전에 해당 명령이 수행할 작업을 이해했는지 확인하세요.

복구 컨텍스트에서 암호화된 Linux 볼륨에 액세스하는 첫 번째 단계는 cryptsetup명령일 가능성이 높습니다. 이 경우 사진에 따르면 비밀번호 프롬프트는 다음과 같습니다.

Please unlock disk nvme0n1p6_crypt:

이는 암호화된 볼륨이 시스템에 있는 첫 번째 NVMe 스토리지 장치의 6번째 파티션(그리고 첫 번째이자 아마도 유일한 네임스페이스)에 있음을 알려줍니다. 그러면 장치 이름 /dev/nvme0n1p6과 암호화된 볼륨의 기본 이름이 제공됩니다 nvme0n1p6_crypt.

고도로 맞춤화된 시스템이 가장 일반적인 LUKS 암호화를 사용한다고 가정하면 암호화를 수동으로 잠금 해제하는 명령은 다음과 같습니다.

cryptsetup open /dev/nvme0n1p6 nvme0n1p6_crypt --type luks

하지만 기다려! 이 명령을 맹목적으로 실행하지 마십시오. man cryptsetup위에서 제안한 명령이 정확하고 이해가 되는지 확인하려면 먼저 실행해 보세요 . (1번 수업을 기억하세요.)

/dev/mapper/nvme0n1p6_crypt이렇게 하면 볼륨이 종료되거나 시스템이 재부팅될 때까지 사용자(및 liveCD 시스템)가 암호화된 볼륨의 내용에 일반 텍스트로 액세스할 수 있는 장치가 생성됩니다 .

사진에서 Kali 루트 파일 시스템을 확인하기 위해 부팅 프로세스에서 실행되는 명령은 다음과 같은 것으로 나타납니다 fsck.ext4 -a -C0 /dev/mapper/crypto_kali-root.암호화LVM설정: LVM 논리 볼륨 장치 이름의 표준 형식은 입니다 /dev/mapper/<volume group name>-<logical volume name>. 다른 이름 지정 방식(레거시이지만 여전히 널리 사용됨)이 있습니다 /dev/<volume group name>/<logical volume name>.

파일 시스템을 마운트하기 전에 LVM 볼륨 그룹(하나의 LVM "물리적 볼륨", 즉 복원하려는 암호화된 볼륨으로만 구성됨)이 활성화되어 있고 논리 볼륨 장치를 사용할 수 있는지 확인해야 합니다.

LVM 에는 문자로 시작하는 꽤 많은 명령이 있습니다 pv. 때로는 공간을 절약하기 위해 이름이 붙은 이진 파일로 모두 패키지됩니다 . 이는 initramfs 환경이나 일부 liveCD에서 발생할 수 있습니다. 이런 경우에는 run 대신 실제 LVM 명령 앞에 단어를 추가하면 됩니다 .vglvlvmlvmvgscanlvm vgscan

먼저 를 실행해야 합니다 vgscan. 이는 LVM 콘텐츠에 대해 사용 가능한 디스크와 파티션을 다시 검색하도록 LVM에 지시합니다. 최신 배포판에서는 udev디스크와 같은 새로운 장치가 나타날 때마다(예: 암호화된 디스크가 잠금 해제될 때) 규칙이 이를 자동으로 트리거하는 경우가 많지만, 이와 같은 복구 시나리오에서는 명시적으로 언급해도 문제가 없습니다. 이 명령은 LVM 메타데이터에 문제가 있는 경우 경고 또는 오류를 표시하므로 vgscan이는 기본적인 LVM 상태 확인에도 유용합니다.

fsck.ext4그림의 명령을 통해 Kali LVM 볼륨 그룹의 이름( crypto_kali)과 논리 볼륨의 이름( root)을 알 수 있습니다. 이를 모른다면 vgscan볼륨 그룹의 이름 Found volume group "crypto_kali" using metadata type lvm2이나 이와 유사한 이름을 알려주어야 합니다. 볼륨 그룹에 있는 개별 논리 볼륨의 이름을 보려면 이 lvs명령을 사용하거나 lvdisplay더 자세한 목록을 볼 수 있습니다.

LVM 논리 볼륨에 액세스하려면 먼저 활성화해야 합니다. 이는 LVM 장치가 다시 감지될 때 자동으로 발생할 수도 있고 그렇지 않을 수도 있습니다. 명시적인 수동 활성화 명령은 문제가 되지 않으며 활성화가 잘못되면 오류 메시지를 볼 수 있는 기회를 제공합니다. 한 번에 볼륨 그룹의 모든 논리 볼륨을 활성화할 수 있습니다 vgchange -ay crypto_kali. 실행 중인 경우 lvs논리 볼륨이 활성화되어 있는 동안 이 Attr필드는 5번째 위치에 문자를 표시합니다 .a

이제 Kali 루트 파일 시스템을 마운트할 준비가 되었습니다.

mkdir -p /mnt/kali
mount /dev/mapper/crypto_kali-root /mnt/kali

Kali 환경에 다른 논리 볼륨이 포함되어 있는 경우 동일한 방식으로 마운트할 수 있습니다. 이제 모든 사용자 정의 설정과 데이터를 복원하고 백업할 수 있습니다. 그렇게 하는 것이 좋습니다.

손상되거나 덮어쓴 시스템을 복구하는 것은 가능하지만 약간 지루하며 존재해야 하는 올바른 버전을 glibc6찾아야 합니다 . glibc손상되었거나 잘못된 라이브러리 파일을 수동으로 삭제하거나 이동하고 올바른 파일을 올바른 위치에 넣어야 합니다. 지금까지 보여준 기술 수준을 활용하면 복원 및 백업한 데이터를 다시 설치하고 복원하는 것이 더 쉬울 수 있습니다.

또한 첨부된 스크린샷의 작은 세부사항에서 중요한 사실을 어떻게 추출했는지 확인하셨나요? 해킹 방법을 배우고 싶다면 (Kali를 먼저 사용했다는 사실에서 알 수 있듯이)세세한 부분까지 보는 안목을 키워야 합니다, 발견한 내용을 효과적으로 활용하는 데 필요한 시스템 기본 사항에 대한 이해도 필요합니다.

관련 정보