업데이트 1

업데이트 1

Windows 10(작동) 및 Kali Linux(작동하지 않음)에서 이중 부팅을 시도하고 있습니다. "설치" 후(올바른 용어인지 확실하지 않음) Kali를 처음 시작했을 때 다음 오류가 발생했습니다.

[     7.078689] ata6.00: failed to set xfermode (err_mode=0x40)
Gave up waiting for root file system device

그런 다음 문제의 가장 일반적인 원인에 대한 작은 목록을 인쇄하여 (BusyBox의) initramfs 셸에 넣습니다. 이 시점에서 나는 셸에 갇혀 있습니다. 시스템을 부팅하기 위해 무엇을 해야 하는지, 또 다른(글을 쓰는 시점에서는 세 번째) 새로 설치를 수행해야 하는지 모르겠습니다.

드라이브(FORESEE 128GB SSD)에 시스템을 설치하기 위해 아래 단계에 따라 부팅 가능한 USB를 만들었습니다.칼리 공식 문서(이전에 Balena Etcher를 사용하여 iso를 굽었기 때문에 처음으로 이 오류가 발생했습니다. 그런 다음 USB 스틱과 파티션을 복원하고 처음부터 다시 시작했습니다.) OS를 설치했습니다. 반면에 Kali 라이브는 훌륭하게 작동합니다.

안경
내 컴퓨터는 Medion Akoya p62006입니다(웹사이트:스페인의;영국인), 따라서 대부분의 부품은 OEM입니다(일종의 맞춤형 부팅도 있습니다). "BIOS"는 BIOS(예: 회색-파란색 구식 BIOS)처럼 보이지만 UEFI라고 주장하며 부트로더가 없는 것 같습니다(BIOS에는 부트로더가 없는 "Windows 부팅 관리자"가 표시됩니다). 아무것도 관리하지 않습니다.", 그래서 Kali(분명히 작동하지 않는)가 Windows와 함께 제공되면 PC가 자동으로 Windows로 부팅되고 kali GRUB 부트로더에 들어가려면 F8을 눌러야 하는데, Windows가 이를 전혀 OS로 감지하지 못할 수도 있다고 생각합니다. 기능이 작동하지 않는데 확실하지 않습니다.) 어쨌든 Windows "msinfo32"에서 실행하면 BIOS 모드가 UEFI라고 표시됩니다.

나는 이 문제를 구글링하여 다음과 같은 이유를 찾아냈습니다.

xfermode가 무엇인지 아시는 분 계신가요? 어떻게 해야 하나요?
미리 감사드립니다

업데이트 1

kali 복구 모드로 부팅을 시도했지만(성공하지 못함) 동일한 initramfs 셸에서 다시 메시지가 표시되었지만 이번에는 이전에 간과했던 사항을 발견했습니다.

ALERT! /dev/sdd6 does not exist. Dropping to a shell!

그런 다음 다음 명령을 실행하여 디스크의 파티션을 나열했습니다(셸에서는 매우 적은 명령을 사용해야 했습니다... 일부 명령을 검색해야 했습니다).

blkid -c /dev/null 

나는 파티셔닝에 대한 일반적인 이해를 갖고 있었고 ext4 파티션을 /dev/sdc6으로 식별하고 스왑 파티션을 /dev/sdc7로 식별할 수 있었습니다.

그러나 한 가지 문제가 있습니다. USB 설치 프로그램으로 Kali를 설치했을 때 디스크에 쓰기 전에 파티션이 표시되었고 ext4가 있는 파티션은 /dev/sdd6이고 스왑 파티션은 /dev/sdd7이었습니다.

이름 충돌이 아닐까요? 시스템이 /dev/sdd6에서 부팅 파일을 확인하지만 /dev/sdc6을 확인해야 할까요?

또한 "mount"와 같은 명령을 사용하여 /dev/sdc6을 마운트하고 거기에서 부팅하려고 시도했지만 할 수 없었습니다(mount를 사용한 것은 이번이 처음입니다...). 제대로 작동하게 된다면 부팅 시 프로세스를 자동화하는 방법을 찾고 싶거나 시스템에 올바른 파티션으로 부팅하도록 지시하는 것이 더 좋습니다.

업데이트 2

이번에는 어느 정도 성과를 거둔 것 같아요.

내가 한 첫 번째 일은 initramfs 쉘과 USB의 Kali Live에서 디스크 개요를 얻고 비교하는 것이었습니다.

내가 실행한 명령 목록은 다음과 같습니다.칼리에 거주:

  • 파티션 나열(diskpart를 사용하라는 요청을 받았지만 마음에 들지 않습니다. gparted와 다음 명령을 선호합니다)
blkid -c /dev/null
/dev/sda1: PARTLABEL="Microsoft reserved partition" PARTUUID="772f7759-ff14-4474-b280-e9a73f27c337"
/dev/sda2: LABEL="HDD" UUID="38A4B57FA4B53FE4" TYPE="ntfs" PARTLABEL="Basic data partition" PARTUUID="72fe8b03-5b4d-4912-a306-7f07c95d134a"
/dev/sdb1: UUID="2019-05-08-08-05-42-00" LABEL="Kali Live" TYPE="iso9660" PARTUUID="825c29ed-01"
/dev/sdb2: SEC_TYPE="msdos" UUID="6D28-4B56" TYPE="vfat" PARTUUID="825c29ed-02"
/dev/sdd1: LABEL="Ripristino" UUID="4240332640331FD9" TYPE="ntfs" PARTLABEL="Basic data partition" PARTUUID="e9017011-2970-430d-bbde-0373203511e8"
/dev/sdd2: UUID="7034-ABBE" TYPE="vfat" PARTLABEL="EFI system partition" PARTUUID="edfd5c11-f9a0-4116-9341-c8cca78fd5be"
/dev/sdd3: PARTLABEL="Microsoft reserved partition" PARTUUID="f07bf20f-e015-4f4e-9e39-5d6c15f3eed9"
/dev/sdd4: LABEL="SSD" UUID="D01C380D1C37ECDA" TYPE="ntfs" PARTLABEL="Basic data partition" PARTUUID="868d10ab-7d59-4612-b5b7-09989f1b1a39"
/dev/sdd5: UUID="8CB63D4BB63D3754" TYPE="ntfs" PARTUUID="25fffadb-a834-40eb-8203-f5bf70e7a4e9"
/dev/sdd6: UUID="77b94261-8059-4070-bdd0-18253825ff78" TYPE="ext4" PARTUUID="85826a53-e4b6-496f-8ae9-293e5e5e9fa0"
/dev/sdd7: UUID="aafe6242-cc02-4722-a136-b87b1bbaa6d6" TYPE="swap" PARTUUID="e79b7378-371f-42fd-96ca-7c109d7362ea"
/dev/loop0: TYPE="squashfs"

중요한:sda는 내 하드 드라이브, sdb는 내 USB, sdd는 내 HDD(Windows 10 및 일부 Kali Linux가 있는 곳)입니다.

  • 파일 시스템, 파티션 및 기타 정보 나열
df -aT
Filesystem     Type            1K-blocks    Used Available Use% Mounted on
sysfs          sysfs                   0       0         0    - /sys
proc           proc                    0       0         0    - /proc
udev           devtmpfs          8125976       0   8125976   0% /dev
devpts         devpts                  0       0         0    - /dev/pts
tmpfs          tmpfs             1630796    9968   1620828   1% /run
/dev/sdb1      iso9660           3273568 3273568         0 100% /run/live/medium
/dev/loop0     squashfs          2999296 2999296         0 100% /run/live/rootfs/filesystem.squashfs
tmpfs          tmpfs             8153972  231344   7922628   3% /run/live/overlay
overlay        overlay           8153972  231344   7922628   3% /
tmpfs          tmpfs             1630796    9968   1620828   1% /usr/lib/live/mount
/dev/sdb1      iso9660           3273568 3273568         0 100% /usr/lib/live/mount/medium
/dev/loop0     squashfs          2999296 2999296         0 100% /usr/lib/live/mount/rootfs/filesystem.squashfs
tmpfs          tmpfs             8153972  231344   7922628   3% /usr/lib/live/mount/overlay
securityfs     securityfs              0       0         0    - /sys/kernel/security
tmpfs          tmpfs             8153972   16648   8137324   1% /dev/shm
tmpfs          tmpfs                5120       0      5120   0% /run/lock
tmpfs          tmpfs             8153972       0   8153972   0% /sys/fs/cgroup
cgroup2        cgroup2                 0       0         0    - /sys/fs/cgroup/unified
cgroup         cgroup                  0       0         0    - /sys/fs/cgroup/systemd
pstore         pstore                  0       0         0    - /sys/fs/pstore
efivarfs       efivarfs                0       0         0    - /sys/firmware/efi/efivars
bpf            bpf                     0       0         0    - /sys/fs/bpf
cgroup         cgroup                  0       0         0    - /sys/fs/cgroup/cpu,cpuacct
cgroup         cgroup                  0       0         0    - /sys/fs/cgroup/freezer
cgroup         cgroup                  0       0         0    - /sys/fs/cgroup/net_cls,net_prio
cgroup         cgroup                  0       0         0    - /sys/fs/cgroup/rdma
cgroup         cgroup                  0       0         0    - /sys/fs/cgroup/memory
cgroup         cgroup                  0       0         0    - /sys/fs/cgroup/perf_event
cgroup         cgroup                  0       0         0    - /sys/fs/cgroup/blkio
cgroup         cgroup                  0       0         0    - /sys/fs/cgroup/devices
cgroup         cgroup                  0       0         0    - /sys/fs/cgroup/cpuset
cgroup         cgroup                  0       0         0    - /sys/fs/cgroup/pids
debugfs        debugfs                 0       0         0    - /sys/kernel/debug
hugetlbfs      hugetlbfs               0       0         0    - /dev/hugepages
mqueue         mqueue                  0       0         0    - /dev/mqueue
systemd-1      -                       -       -         -    - /proc/sys/fs/binfmt_misc
tmpfs          tmpfs             8153972       0   8153972   0% /tmp
binfmt_misc    binfmt_misc             0       0         0    - /proc/sys/fs/binfmt_misc
tmpfs          tmpfs             1630792      44   1630748   1% /run/user/0
gvfsd-fuse     fuse.gvfsd-fuse         0       0         0    - /run/user/0/gvfs
fusectl        fusectl                 0       0         0    - /sys/fs/fuse/connections
/dev/sdb2      vfat                  716     688        28  97% /media/root/Kali Live

중요한:명심하세요, 이것은 Kali Live에서 실행되고 있으므로 "/dev"로 시작하는 모든 것 외에는 중요한 것이 없다고 생각하지만 틀릴 수도 있습니다.

  • 설치된 장치 및 기타 정보 나열
mount
sysfs on /sys type sysfs (rw,nosuid,nodev,noexec,relatime)
proc on /proc type proc (rw,nosuid,nodev,noexec,relatime)
udev on /dev type devtmpfs (rw,nosuid,relatime,size=8125976k,nr_inodes=2031494,mode=755)
devpts on /dev/pts type devpts (rw,nosuid,noexec,relatime,gid=5,mode=620,ptmxmode=000)
tmpfs on /run type tmpfs (rw,nosuid,noexec,relatime,size=1630796k,mode=755)
/dev/sdb1 on /run/live/medium type iso9660 (ro,noatime,nojoliet,check=s,map=n,blocksize=2048)
/dev/loop0 on /run/live/rootfs/filesystem.squashfs type squashfs (ro,noatime)
tmpfs on /run/live/overlay type tmpfs (rw,noatime,mode=755)
overlay on / type overlay (rw,noatime,lowerdir=/run/live/rootfs/filesystem.squashfs/,upperdir=/run/live/overlay/rw,workdir=/run/live/overlay/work)
tmpfs on /usr/lib/live/mount type tmpfs (rw,nosuid,noexec,relatime,size=1630796k,mode=755)
/dev/sdb1 on /usr/lib/live/mount/medium type iso9660 (ro,noatime,nojoliet,check=s,map=n,blocksize=2048)
/dev/loop0 on /usr/lib/live/mount/rootfs/filesystem.squashfs type squashfs (ro,noatime)
tmpfs on /usr/lib/live/mount/overlay type tmpfs (rw,noatime,mode=755)
securityfs on /sys/kernel/security type securityfs (rw,nosuid,nodev,noexec,relatime)
tmpfs on /dev/shm type tmpfs (rw,nosuid,nodev)
tmpfs on /run/lock type tmpfs (rw,nosuid,nodev,noexec,relatime,size=5120k)
tmpfs on /sys/fs/cgroup type tmpfs (ro,nosuid,nodev,noexec,mode=755)
cgroup2 on /sys/fs/cgroup/unified type cgroup2 (rw,nosuid,nodev,noexec,relatime,nsdelegate)
cgroup on /sys/fs/cgroup/systemd type cgroup (rw,nosuid,nodev,noexec,relatime,xattr,name=systemd)
pstore on /sys/fs/pstore type pstore (rw,nosuid,nodev,noexec,relatime)
efivarfs on /sys/firmware/efi/efivars type efivarfs (rw,nosuid,nodev,noexec,relatime)
bpf on /sys/fs/bpf type bpf (rw,nosuid,nodev,noexec,relatime,mode=700)
cgroup on /sys/fs/cgroup/cpu,cpuacct type cgroup (rw,nosuid,nodev,noexec,relatime,cpu,cpuacct)
cgroup on /sys/fs/cgroup/freezer type cgroup (rw,nosuid,nodev,noexec,relatime,freezer)
cgroup on /sys/fs/cgroup/net_cls,net_prio type cgroup (rw,nosuid,nodev,noexec,relatime,net_cls,net_prio)
cgroup on /sys/fs/cgroup/rdma type cgroup (rw,nosuid,nodev,noexec,relatime,rdma)
cgroup on /sys/fs/cgroup/memory type cgroup (rw,nosuid,nodev,noexec,relatime,memory)
cgroup on /sys/fs/cgroup/perf_event type cgroup (rw,nosuid,nodev,noexec,relatime,perf_event)
cgroup on /sys/fs/cgroup/blkio type cgroup (rw,nosuid,nodev,noexec,relatime,blkio)
cgroup on /sys/fs/cgroup/devices type cgroup (rw,nosuid,nodev,noexec,relatime,devices)
cgroup on /sys/fs/cgroup/cpuset type cgroup (rw,nosuid,nodev,noexec,relatime,cpuset)
cgroup on /sys/fs/cgroup/pids type cgroup (rw,nosuid,nodev,noexec,relatime,pids)
debugfs on /sys/kernel/debug type debugfs (rw,relatime)
hugetlbfs on /dev/hugepages type hugetlbfs (rw,relatime,pagesize=2M)
mqueue on /dev/mqueue type mqueue (rw,relatime)
systemd-1 on /proc/sys/fs/binfmt_misc type autofs (rw,relatime,fd=44,pgrp=1,timeout=0,minproto=5,maxproto=5,direct,pipe_ino=13614)
tmpfs on /tmp type tmpfs (rw,nosuid,nodev,relatime)
binfmt_misc on /proc/sys/fs/binfmt_misc type binfmt_misc (rw,relatime)
tmpfs on /run/user/0 type tmpfs (rw,nosuid,nodev,relatime,size=1630792k,mode=700)
gvfsd-fuse on /run/user/0/gvfs type fuse.gvfsd-fuse (rw,nosuid,nodev,relatime,user_id=0,group_id=0)
fusectl on /sys/fs/fuse/connections type fusectl (rw,relatime)
/dev/sdb2 on /media/root/Kali Live type vfat (rw,nosuid,nodev,relatime,fmask=0022,dmask=0022,codepage=437,iocharset=ascii,shortname=mixed,showexec,utf8,flush,errors=remount-ro,uhelper=udisks2)
  • /etc/fstab의 내용을 표준 출력으로 인쇄합니다(이 파일에는 부팅할 때마다 마운트하는 데 필요한 모든 장치 파티션 정보가 포함되어 있다는 것을 읽었습니다).
cat /etc/fstab
/etc/fstab: static file system information.
#
# Use 'blkid' to print the universally unique identifier for a
# device; this may be used with UUID= as a more robust way to name devices
# that works even if disks are added and removed. See fstab(5).
#
# <file system> <mount point>   <type>  <options>       <dump>  <pass>
# / was on /dev/sdd6 during installation
UUID=77b94261-8059-4070-bdd0-18253825ff78 /               ext4    errors=remount-ro 0       1
# /boot/efi was on /dev/sdd2 during installation
UUID=7034-ABBE  /boot/efi       vfat    umask=0077      0       1
# swap was on /dev/sdd7 during installation
UUID=aafe6242-cc02-4722-a136-b87b1bbaa6d6 none            swap    sw              0       0
/dev/sr0        /media/cdrom0   udf,iso9660 user,noauto     0       0

논평:이미 말했듯이 initramfs 셸에서도 이 명령을 실행하고 있지만 거기에서는 복사하여 붙여넣을 수 없기 때문에 지금까지는 해당 터미널에 표시되는 내용을 수동으로 복사해 왔습니다. 그러나 이 업데이트를 작성하면서 명령 출력을 내 하드 드라이브로 리디렉션할 수 있다는 것을 깨달았습니다. 문제는 내 키보드가 형편없다는 것입니다. "> " , "<" 키이므로 출력을 파일로 리디렉션할 수 없습니다(코딩도 어렵습니다. 일반적으로 필요할 때 인터넷에서 기호를 복사하여 붙여넣지만, initramfs의 경우는 그렇지 않습니다. 이제 찾아야 합니다. 다른 키보드 또는 최소한 ">" 기호를 얻는 방법). 내일 출력을 추가할 것 같아요. 결국 나는 "tee"라는 명령을 알아내고 ">" 대신에 그것을 사용했고 이제 복사한 것을 파일에 붙여넣을 수 있게 되었습니다.

내가 실행한 명령 목록은 다음과 같습니다.initramfs 쉘에서:

  • 파티션 나열
blkid -c /dev/null
/dev/sda1: PARTLABEL="Microsoft reserved partition" PARTUUID="772f7759-ff14-4474-b280-e9a73f27c337"
/dev/sda2: LABEL="HDD" UUID="38A4B57FA4B53FE4" TYPE="ntfs" PARTLABEL="Basic data partition" PARTUUID="72fe8b03-5b4d-4912-a306-7f07c95d134a"
/dev/sdc1: LABEL="Ripristino" UUID="4240332640331FD9" TYPE="ntfs" PARTLABEL="Basic data partition" PARTUUID="e9017011-2970-430d-bbde-0373203511e8"
/dev/sdc2: UUID="7034-ABBE" TYPE="vfat" PARTLABEL="EFI system partition" PARTUUID="edfd5c11-f9a0-4116-9341-c8cca78fd5be"
/dev/sdc3: PARTLABEL="Microsoft reserved partition" PARTUUID="f07bf20f-e015-4f4e-9e39-5d6c15f3eed9"
/dev/sdc4: LABEL="SSD" UUID="D01C380D1C37ECDA" TYPE="ntfs" PARTLABEL="Basic data partition" PARTUUID="868d10ab-7d59-4612-b5b7-09989f1b1a39"
/dev/sdc5: UUID="8CB63D4BB63D3754" TYPE="ntfs" PARTUUID="25fffadb-a834-40eb-8203-f5bf70e7a4e9"
/dev/sdc6: UUID="77b94261-8059-4070-bdd0-18253825ff78" TYPE="ext4" PARTUUID="85826a53-e4b6-496f-8ae9-293e5e5e9fa0"
/dev/sdc7: UUID="aafe6242-cc02-4722-a136-b87b1bbaa6d6" TYPE="swap" PARTUUID="e79b7378-371f-42fd-96ca-7c109d7362ea"
  • /etc/fstab의 내용을 stdout으로 인쇄합니다. 이 경우 출력이 없고 파일이 비어 있으므로 initramfs가 이를 사용하지 않는 것으로 가정합니다. 특히 나는 이것이 /proc/partitions와 /dev/disk 내부에 의존한다고 생각합니다.

다음으로 "set"을 실행하여 어떤 변수가 설정되었는지 확인하고 /dev/sdd6(Kali Live에 나열된 변수)에서 ROOT 변수를 변경해 보았습니다(다음과 같이 설정: "ROOT='/dev/sdd6'" Live). /dev/sdc6 (Kali가 SDD에 나열하는 것).

"set ROOT='/dev/sdc6'"를 실행했는데 오류가 반환되지 않았지만 아무 작업도 수행되지 않았습니다. 그런 다음 "set ROOT='/dev/sdd5'"(확실히)를 시도했고 변수가 변경되었습니다! 그래서 나는 명령이 작동하지만 어떤 이유에서인지 "/dev/sdc6"이 좋지 않다는 것을 깨달았습니다("blkid -c /dev/null"에 대해서는 그 반대라고 말할 수 있지만).

그런 다음 "mount -t ext4 /dev/sdd6 /mnt"를 사용하여 /dev/sdd6을 마운트할 수 있었습니다(/mnt가 없으므로 "mkdir /mnt"를 사용하여 생성했습니다). Kali Linux 파일 시스템을 좋아하세요! 정말 Kali인지 확인하기 위해 "find -executable -type f -name maltego"(/mnt에서)를 사용했습니다(실제로 다른 Kali 도구도 확인했습니다). 잠시 후 "/"에 /dev/sdd6 마운트를 시도했지만 명령이 성공했음에도 불구하고 아무 것도 변경되지 않았습니다(오류 없음). 이 시점에서 내 의도는 GNOME Kali 데스크탑을 시작한 다음 이를 영구적으로 만드는 방법을 찾는 것입니다. 결국 "gnome-session" 명령이 작동하지 않는다는 것을 알게 되었고 "절대" 경로에 누락된 파일에 대한 오류가 반환되었습니다("Line 16: /usr/something/gnome-something_else가 누락되었습니다"라고 인쇄됨). , 그러나 파일 시스템의 루트가 /가 아닌 /mnt에 있기 때문에 "./usr/something/gnome-something_else"를 찾아야 합니다. 이것이 바로 제가 생각한 것입니다. 정확한 오류는 내일 추가하겠습니다.

다음으로 할 일은 다음 두 가지 중 하나입니다.

  • /에 /dev/sdd6을 마운트하고 GNOME을 실행하는 방법을 찾으십시오.

  • tty를 사용하여 새 세션을 생성하고 해당 세션에 /dev/sdd6을 마운트하고 GNOME을 실행할 수 있기를 바랍니다.

내 이론

Kali Live는 /dev/sdd6이 존재한다고 주장하고, Kali SDD Percient는 존재하지 않는다고 말하지만, 동시에 특정 명령이 제대로 작동하지 않을 때 자체적으로 모순됩니다(위의 set 명령 참조). 개인적으로 저는 Kali Live 터미널(및 gparted)을 신뢰합니다. 이것이 바로 커널 버그를 다루고 있고(아마도) 해결 방법이나 매우 심층적인 수정이 필요하다고 생각하는 이유입니다.

initramfs의 미스터리

저는 이 쉘을 이전에 사용해 본 적이 없으며 몇 가지 질문이 있습니다.

내가 스스로에게 가장 먼저 물은 것은 어떻게 그런 일이 일어날 수 있는가였습니다. 내 말은, 내가 매번노력하다Kali로 부팅할 때 /dev/sdd6이 없으므로 ext4 파티션도 없고 Kali도 없고 Linux도 없다고 표시됩니다. 하지만 그럼에도 불구하고 이 내용은 시스템이 잠시 부팅될 때까지 기다린 후 매번 나타납니다. 이 터미널이 어디에서 실행되고 있는지(어떤 파티션) 또는 어디에 저장되어 있는지 묻고 있습니다. 나는 df -h .("/"에서)를 사용했고 df -h /, 그것은 를 반환했습니다 df: /: can't find mount point.

그런 다음 자체 파일 시스템이 있다는 것을 알았습니다! 또는 매우 유사한 것, "ls /"를 사용하면 일반 Linux에 있는 모든 디렉토리(bin, sbin 등, usr,...)를 얻을 수 있지만 /mnt다른 디렉토리는 누락됩니다. 또한 Kali에는 없는 "init" 폴더가 있습니다. 그런데 "initrd.img" 및 "initrd.ing.old"가 있는데, 이는 매번 로드되는 img인 것 같습니다(Windows에서는 때때로 이전 Windows 운영 체제의 경우 "Windows.old"라는 이름의 dir)을 실행하려고 하기 때문에 관심이 갑니다 busybox switch_root.

또한 드라이브와 관련된 명령 간의 충돌도 중요합니다(위 setblkid응답 비교 /proc/partitions).

사람들이 나와 비슷한 문제를 안고 있으며 initamfs에서 몇 가지 명령을 사용하고 재부팅하면 문제가 해결될 수 있다는 것을 읽었습니다. 여러 번 시도했습니다(예: set, switch_root, start[number], gnome-session 등). ,하지만 때내 거initramfs에서는 폴더나 파일과 같은 영구적인 항목을 만들 수 없습니다(하지만 지금은 문제가 되지 않습니다. 한 번만 부팅하고 싶습니다...). 하지만 변수를 설정할 수 있다면 export현재 세션에만 해당됩니다. 다음에도 변수는 같습니다.

노트 왜 "댓글 추가"를 사용할 수 없나요?

업데이트 3

컬리건에 입사했어요

많은 시간과 노력 끝에 쉘의 루트를 새로운 파일 시스템 루트(SSD의 Kali)로 변경할 수 있어서 initramfs를 남겨두었습니다(그러나 제 생각에는 "아주"는 아닙니다). 나는 (여러 번) 다음을 실행합니다.

mkdir /mnt
mount -t ext4 /dev/sdc6 /mnt      #As you can see I had to use the "wrong" notation with "sdc6" in place of "sdd6"
chroot /mnt                       #Surprisingly for me, it worked! Although I wanted to run busybox switch_root, but it returns error and prints the command syntax every time

gnome-session그런 다음 GUI를 얻기 위해 , startx (x는 숫자) 및 기타 명령을 실행하려고 시도했지만 성공하지 못했습니다. 특히 startx 명령이 없는 것 같습니다( find -executable -type f -name *start*유용한 결과 없이 실행했습니다).

gnome-session명령은 다음 형식으로 많은 오류를 표시합니다(재현할 수는 없지만 사진은 있습니다).

** (gnome-session-failed:[some number]): WARNING **: [num1]:[num2]:[num3]:[num4]: Cannot open display:
[Some Error: Terminated, Unable to init sever, etc...]

다음과 같은 것도 있습니다.

[num1]:[num2]:[num3]:[num4] Gtk: cannot open display! (the first part was green, the second red)
(tracker-miner-fs:[num4]): GLib-GObject-CRITICAL **: [num1]:[num2]:[num3]:[num4]: g_object_unref: assertion 'G_IS_OBJECT (object)' failed

initramfs에서 몇 가지 추가 정보를 검색했습니다.

cat /proc/partitions
major minor  #blocks  name

   8        0  976762584 sda
   8        1      16367 sda1
   8        2  976744448 sda2
   8       32  125034840 sdc
   8       33     307200 sdc1
   8       34     101376 sdc2
   8       35     131072 sdc3
   8       36   99019776 sdc4
   8       37     896000 sdc5
   8       38   21680128 sdc6
   8       39    2896896 sdc7
  11        0    1048575 sr0

Kali Live와 비교해봤습니다(차이점은 쉽게 알 수 있습니다).

cat /proc/partitions
major minor  #blocks  name

   8        0  976762584 sda
   8        1      16367 sda1
   8        2  976744448 sda2
   8       32  125034840 sdd
   8       33     307200 sdd1
   8       34     101376 sdd2
   8       35     131072 sdd3
   8       36   99019776 sdd4
   8       37     896000 sdd5
   8       38   21680128 sdd6
   8       39    2896896 sdd7
  11        0    1048575 sr0

/proc/partitionsSSD의 Kali 에도 복사했습니다. (gnome-session이 부팅 파티션 위치를 놓쳐서 출력이 어떻게든 변경된 것 같습니다.)

그런 다음 이것을 실행합니다.

ls /dev/disk/by-path
pci-0000:00:14.0-usb-0:4:1.0-scsi-0:0:0:0
pci-0000:00:14.0-usb-0:4:1.0-scsi-0:0:0:0-part1
pci-0000:00:14.0-usb-0:4:1.0-scsi-0:0:0:0-part2
pci-0000:00:14.0-usb-0:8:1.0-scsi-0:0:0:0
pci-0000:00:17.0-ata-1
pci-0000:00:17.0-ata-1-part1
pci-0000:00:17.0-ata-1-part2
pci-0000:00:17.0-ata-2
pci-0000:00:17.0-ata-6
pci-0000:00:17.0-ata-6-part1
pci-0000:00:17.0-ata-6-part2
pci-0000:00:17.0-ata-6-part3
pci-0000:00:17.0-ata-6-part4
pci-0000:00:17.0-ata-6-part5
pci-0000:00:17.0-ata-6-part6
pci-0000:00:17.0-ata-6-part7

나는 필사적으로 pci-0000:00:17.0-ata-6-part6을 pci-0000:00:17.0-ata-6으로 전환하려고 시도하고 성공적으로 이름을 바꾸었지만 작동하지 않았습니다.내 거initramfs가 시작된 후에는 데이터가 유지되지 않습니다.

다음에 무엇을할지

  • 읽다Fedora Media Writer를 제외한 모든 프로그램은 UEFI 모드에서 BIOS용 부팅 가능한 USB를 생성할 수 없으므로 시도해 볼 수도 있습니다. (어쨌든 문제는 아닌 것 같습니다.)

  • Kali 데스크탑을 사용하고 싶습니다. 이번에는 Kali 파일 시스템과 명령에 액세스할 수 있으므로 실제로 GNOME을 작동시키려면 몇 가지 단서가 필요합니다.

  • 커널에 문제가 있는 것이 거의 확실합니다. 업데이트하는 방법이나 부팅 시 /dev/sdd6을 감지하는 방법을 알려주실 수 있는 분 계십니까?

업데이트 4

칼리가 활성화되었습니다! (근데 별로 안좋아요..)

Kali SSD의 /boot에 있는 initrd.img-[etc..]를 Kali Live에서 Peripheral로 교체했는데, 제 BIOS에서 평소대로 F8을 눌러 Kali를 시작했는데 이번에는 작동해서 문제가 해결된 것 같아요(하하! ). 그것은 인쇄되었다

[     7.078689] ata6.00: failed to set xfermode (err_mode=0x40)

그런 다음 화면이 검게 변하고 kali가 나타납니다. (보통 Kali가 더 많은 텍스트를 표시한다는 것을 알고 있으므로 약간 혼란스럽지만 어쨌든 작동했습니다...)

Kali가 먼저 시작된 다음 재부팅되도록 부팅 순서를 변경했습니다. 이번에는 매우 자신감이 넘쳤지만 이렇게 말했습니다.

[     7.078689] ata6.00: failed to set xfermode (err_mode=0x40)
Gave up waiting for root file system device

그래서 시작 시 F8 키만 누르면 작동한다는 것을 깨달았습니다(왜 그럴까요?). 이는 해결책이지만 만족스럽지는 않습니다. 또한 F8로 부팅할 때마다 작동하는지 100% 확신할 수 없습니다.

(initrd.img-[etc..]를 추출한 후) 시도했지만 binwalk GenuineIntel.bin출력이 없었습니다. init/initramfs 파일에서 한 줄을 편집했는데 그 줄은 다음과 같습니다.

export ROOT=

나는 그것을 다음과 같이 바꿨다.

export ROOT=/dev/sdc6

잘못된 이름이라고 생각하더라도 initramfs에 파티션을 마운트하는 데 이 이름을 사용해야 하므로 initramfs는 해당 이름만 인식하고 /dev/sdd6은 인식하지 못하는 것 같습니다.

그런 다음 Kali를 세 번째로 다시 설치하고 Fedora Media Writer로 USB를 플래시한 후 (문제를 일으킨 오류가 있는) 초기 상태로 돌아갔습니다.

답변1

누군가 필요한 경우: 저는 이 문제를 몇 년 전에 해결했는데 해결책은 간단했습니다. 저는 Rufus를 사용하여 USB를 부팅 가능하게 만들었고 Rufus를 사용하면 ISO 모드와 DD 모드의 두 가지 모드에서 이 작업을 수행할 수 있습니다. ISO 모드는 "권장" 모드이며 DD 모드를 선택하여 Kali를 제대로 설치했습니다.

관련 정보