시작 항목을 삭제하는 방법은 무엇입니까?

시작 항목을 삭제하는 방법은 무엇입니까?

# bootctl install커널 및 이와 유사한 명령을 설치/업데이트하려고 할 때 시스템에 몇 가지 문제가 있습니다 no space left on the device.

부트로더에서 추가 항목을 제거하려고 했습니다. EFI 셸( bcfg)을 사용하고 USB에서 부팅했지만 아무 소용이 없었습니다. 시스템을 재부팅한 후 계속을 누르거나 (BIOS) 메뉴로 들어갈 수 있는 옵션이 있다는 efibootmgr메시지가 표시되었습니다. . 보안 부팅을 비활성화하고, 항목을 삭제하고, 컴퓨터를 종료하고, 배터리를 제거하고 몇 분 정도 기다렸다가 부팅했는데 동일한 메시지가 표시되었습니다. 항목이 유지되는 버그인지 확인하기 위해 펌웨어를 업데이트하기도 했습니다.Boot Manager has recovered from an errorEscF1

출력은 다음과 같습니다 # efibootmgr -v.

BootCurrent: 0019
Timeout: 0 seconds
BootOrder: 0017,0018,0019,001A,001B,001C,001D,001E,001F,0020,0021,0022
Boot0010  Setup FvFile(721c8b66-426c-4e86-8e99-3457c46ab0b9)
      dp: 04 06 14 00 66 8b 1c 72 6c 42 86 4e 8e 99 34 57 c4 6a b0 b9 / 7f ff 04 00
Boot0011  Boot Menu FvFile(126a762d-5758-4fca-8531-201a7f57f850)
      dp: 04 06 14 00 2d 76 6a 12 58 57 ca 4f 85 31 20 1a 7f 57 f8 50 / 7f ff 04 00
Boot0012  Diagnostic Splash Screen  FvFile(a7d8d9a6-6ab0-4aeb-ad9d-163e59a7a380)
      dp: 04 06 14 00 a6 d9 d8 a7 b0 6a eb 4a ad 9d 16 3e 59 a7 a3 80 / 7f ff 04 00
Boot0013  Lenovo Diagnostics    FvFile(3f7e615b-0d45-4f80-88dc-26b234958560)
      dp: 04 06 14 00 5b 61 7e 3f 45 0d 80 4f 88 dc 26 b2 34 95 85 60 / 7f ff 04 00
Boot0014  Startup Interrupt Menu    FvFile(f46ee6f4-4785-43a3-923d-7f786c3c8479)
      dp: 04 06 14 00 f4 e6 6e f4 85 47 a3 43 92 3d 7f 78 6c 3c 84 79 / 7f ff 04 00
Boot0015  Rescue and Recovery   FvFile(665d3f60-ad3e-4cad-8e26-db46eee9f1b5)
      dp: 04 06 14 00 60 3f 5d 66 3e ad ad 4c 8e 26 db 46 ee e9 f1 b5 / 7f ff 04 00
Boot0016  MEBx Hot Key  FvFile(ac6fd56a-3d41-4efd-a1b9-870293811a28)
      dp: 04 06 14 00 6a d5 6f ac 41 3d fd 4e a1 b9 87 02 93 81 1a 28 / 7f ff 04 00
Boot0017* USB CD    VenMsg(bc7838d2-0f82-4d60-8316-c068ee79d25b,86701296aa5a7848b66cd49dd3ba6a55)
      dp: 03 0a 24 00 d2 38 78 bc 82 0f 60 4d 83 16 c0 68 ee 79 d2 5b 86 70 12 96 aa 5a 78 48 b6 6c d4 9d d3 ba 6a 55 / 7f ff 04 00
Boot0018* USB FDD   VenMsg(bc7838d2-0f82-4d60-8316-c068ee79d25b,6ff015a28830b543a8b8641009461e49)
      dp: 03 0a 24 00 d2 38 78 bc 82 0f 60 4d 83 16 c0 68 ee 79 d2 5b 6f f0 15 a2 88 30 b5 43 a8 b8 64 10 09 46 1e 49 / 7f ff 04 00
Boot0019* NVMe0 VenMsg(bc7838d2-0f82-4d60-8316-c068ee79d25b,001c199932d94c4eae9aa0b6e98eb8a400)
      dp: 03 0a 25 00 d2 38 78 bc 82 0f 60 4d 83 16 c0 68 ee 79 d2 5b 00 1c 19 99 32 d9 4c 4e ae 9a a0 b6 e9 8e b8 a4 00 / 7f ff 04 00
Boot001A* NVMe1 VenMsg(bc7838d2-0f82-4d60-8316-c068ee79d25b,001c199932d94c4eae9aa0b6e98eb8a401)
      dp: 03 0a 25 00 d2 38 78 bc 82 0f 60 4d 83 16 c0 68 ee 79 d2 5b 00 1c 19 99 32 d9 4c 4e ae 9a a0 b6 e9 8e b8 a4 01 / 7f ff 04 00
Boot001B* ATA HDD2  VenMsg(bc7838d2-0f82-4d60-8316-c068ee79d25b,91af625956449f41a7b91f4f892ab0f600)
      dp: 03 0a 25 00 d2 38 78 bc 82 0f 60 4d 83 16 c0 68 ee 79 d2 5b 91 af 62 59 56 44 9f 41 a7 b9 1f 4f 89 2a b0 f6 00 / 7f ff 04 00
Boot001C* ATA HDD3  VenMsg(bc7838d2-0f82-4d60-8316-c068ee79d25b,91af625956449f41a7b91f4f892ab0f604)
      dp: 03 0a 25 00 d2 38 78 bc 82 0f 60 4d 83 16 c0 68 ee 79 d2 5b 91 af 62 59 56 44 9f 41 a7 b9 1f 4f 89 2a b0 f6 04 / 7f ff 04 00
Boot001D* ATA HDD0  VenMsg(bc7838d2-0f82-4d60-8316-c068ee79d25b,91af625956449f41a7b91f4f892ab0f603)
      dp: 03 0a 25 00 d2 38 78 bc 82 0f 60 4d 83 16 c0 68 ee 79 d2 5b 91 af 62 59 56 44 9f 41 a7 b9 1f 4f 89 2a b0 f6 03 / 7f ff 04 00
Boot001E* ATA HDD1  VenMsg(bc7838d2-0f82-4d60-8316-c068ee79d25b,91af625956449f41a7b91f4f892ab0f602)
      dp: 03 0a 25 00 d2 38 78 bc 82 0f 60 4d 83 16 c0 68 ee 79 d2 5b 91 af 62 59 56 44 9f 41 a7 b9 1f 4f 89 2a b0 f6 02 / 7f ff 04 00
Boot001F* USB HDD   VenMsg(bc7838d2-0f82-4d60-8316-c068ee79d25b,33e821aaaf33bc4789bd419f88c50803)
      dp: 03 0a 24 00 d2 38 78 bc 82 0f 60 4d 83 16 c0 68 ee 79 d2 5b 33 e8 21 aa af 33 bc 47 89 bd 41 9f 88 c5 08 03 / 7f ff 04 00
Boot0020* PCI LAN   VenMsg(bc7838d2-0f82-4d60-8316-c068ee79d25b,78a84aaf2b2afc4ea79cf5cc8f3d3803)
      dp: 03 0a 24 00 d2 38 78 bc 82 0f 60 4d 83 16 c0 68 ee 79 d2 5b 78 a8 4a af 2b 2a fc 4e a7 9c f5 cc 8f 3d 38 03 / 7f ff 04 00
Boot0021  Other CD  VenMsg(bc7838d2-0f82-4d60-8316-c068ee79d25b,aea2090adfde214e8b3a5e471856a35406)
      dp: 03 0a 25 00 d2 38 78 bc 82 0f 60 4d 83 16 c0 68 ee 79 d2 5b ae a2 09 0a df de 21 4e 8b 3a 5e 47 18 56 a3 54 06 / 7f ff 04 00
Boot0022  Other HDD VenMsg(bc7838d2-0f82-4d60-8316-c068ee79d25b,91af625956449f41a7b91f4f892ab0f606)
      dp: 03 0a 25 00 d2 38 78 bc 82 0f 60 4d 83 16 c0 68 ee 79 d2 5b 91 af 62 59 56 44 9f 41 a7 b9 1f 4f 89 2a b0 f6 06 / 7f ff 04 00
Boot0023* IDER BOOT CDROM   PciRoot(0x0)/Pci(0x14,0x0)/USB(15,1)
      dp: 02 01 0c 00 d0 41 03 0a 00 00 00 00 / 01 01 06 00 00 14 / 03 05 06 00 0f 01 / 7f ff 04 00
Boot0024* IDER BOOT Floppy  PciRoot(0x0)/Pci(0x14,0x0)/USB(15,0)
      dp: 02 01 0c 00 d0 41 03 0a 00 00 00 00 / 01 01 06 00 00 14 / 03 05 06 00 0f 00 / 7f ff 04 00
Boot0025* ATA HDD   VenMsg(bc7838d2-0f82-4d60-8316-c068ee79d25b,91af625956449f41a7b91f4f892ab0f6)
      dp: 03 0a 24 00 d2 38 78 bc 82 0f 60 4d 83 16 c0 68 ee 79 d2 5b 91 af 62 59 56 44 9f 41 a7 b9 1f 4f 89 2a b0 f6 / 7f ff 04 00
Boot0026* ATAPI CD  VenMsg(bc7838d2-0f82-4d60-8316-c068ee79d25b,aea2090adfde214e8b3a5e471856a354)
      dp: 03 0a 24 00 d2 38 78 bc 82 0f 60 4d 83 16 c0 68 ee 79 d2 5b ae a2 09 0a df de 21 4e 8b 3a 5e 47 18 56 a3 54 / 7f ff 04 00

나는 Lenovo ThinkPad P51을 가지고 있는데, 플로피 드라이브도, CD-ROM도 없고, 단지 (NVME) SSD만 있고... PC에 연결된 다른 것은 아무것도 없습니다. 나는 여기서 미쳐 가고있다.

어떤 도움이라도 대단히 감사하겠습니다!

편집하다:# efibootmgr -v내 데스크톱 컴퓨터의 결과는 다음과 같습니다.

BootCurrent: 0000
Timeout: 1 seconds
BootOrder: 0000,0001
Boot0000* Linux Boot Manager    HD(1,GPT,5f8adc83-05ea-47d2-af93-1c80e7956e2f,0x800,0xff800)/File(\EFI\SYSTEMD\SYSTEMD-BOOTX64.EFI)
      dp: 04 01 2a 00 01 00 00 00 00 08 00 00 00 00 00 00 00 f8 0f 00 00 00 00 00 83 dc 8a 5f ea 05 d2 47 af 93 1c 80 e7 95 6e 2f 02 02 / 04 04 46 00 5c 00 45 00 46 00 49 00 5c 00 53 00 59 00 53 00 54 00 45 00 4d 00 44 00 5c 00 53 00 59 00 53 00 54 00 45 00 4d 00 44 00 2d 00 42 00 4f 00 4f 00 54 00 58 00 36 00 34 00 2e 00 45 00 46 00 49 00 00 00 / 7f ff 04 00
Boot0001* UEFI OS       HD(1,GPT,5f8adc83-05ea-47d2-af93-1c80e7956e2f,0x800,0xff800)/File(\EFI\BOOT\BOOTX64.EFI)0000424f
      dp: 04 01 2a 00 01 00 00 00 00 08 00 00 00 00 00 00 00 f8 0f 00 00 00 00 00 83 dc 8a 5f ea 05 d2 47 af 93 1c 80 e7 95 6e 2f 02 02 / 04 04 30 00 5c 00 45 00 46 00 49 00 5c 00 42 00 4f 00 4f 00 54 00 5c 00 42 00 4f 00 4f 00 54 00 58 00 36 00 34 00 2e 00 45 00 46 00 49 00 00 00 / 7f ff 04 00
    data: 00 00 42 4f

편집 2:이것은의 출력입니다# fdisk -l /dev/nvme0n1

Disk /dev/nvme0n1: 465,76 GiB, 500107862016 bytes, 976773168 sectors
Disk model: Samsung SSD 980 PRO 500GB               
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: gpt
Disk identifier: [REDACTED]

Device           Start       End   Sectors   Size Type
/dev/nvme0n1p1    2048   1048575   1046528   511M EFI System
/dev/nvme0n1p2 1050624 976773119 975722496 465,3G Linux filesystem

# df -h /dev/nvme0n1p1:

Filesystem      Size  Used Avail Use% Mounted on
/dev/nvme0n1p1  510M  510M     0 100% /boot

출력 tree /boot:

/boot
├── amd-ucode.img
├── EFI
│   ├── BOOT
│   │   └── BOOTX64.EFI
│   ├── Linux
│   │   ├── linux-5.15.79-1-lts-6cbacb3c969c4299bfa70572a86032d6-rolling.efi
│   │   ├── linux-6.0.9-arch1-1-6cbacb3c969c4299bfa70572a86032d6-rolling.efi
│   │   └── linux-6.0.9-zen1-1-zen-6cbacb3c969c4299bfa70572a86032d6-rolling.efi
│   └── systemd
│       └── systemd-bootx64.efi
├── initramfs-linux-fallback.img
├── initramfs-linux.img
├── initramfs-linux-lts-fallback.img
├── initramfs-linux-lts.img
├── initramfs-linux-zen-fallback.img
├── initramfs-linux-zen.img
├── loader
│   ├── entries
│   │   ├── 2022-11-13_19-12-22_linux.conf
│   │   └── 2022-11-13_19-12-22_linux-lts.conf
│   ├── entries.srel
│   ├── loader.conf
│   └── random-seed
├── vmlinuz-linux
├── vmlinuz-linux-lts
└── vmlinuz-linux-zen

6 directories, 20 files

답변1

파티션 설정은 무엇입니까? ESP 드라이브의 크기는 얼마나 됩니까? 부팅 시스템으로 무엇을 사용하시겠습니까? 여기서 가장 쉬운 방법은 /EFI/BOOT 디렉터리 아래의 /esp 드라이브에 bootx64.efi 파일을 만드는 것입니다. 그러나 esp 파티션에 공간이 없으면 문제가 됩니다.

그러면 다시 질문이 생깁니다. 파티션은 어떻게 생겼나요? ESP 드라이브의 크기는 얼마나 됩니까? 그 중 얼마나 사용됐나요?

부록:

ESP 크기가 500M인 것으로 확인됩니다. 이는 모든 시작 파일을 수용하기에 충분할 것입니다. 그래도 500M이 얼마나 사용되고 있는지 확인하는 것이 더 좋습니다(df -h가 알려줍니다).

차근차근 나아가는 것이 최선의 방법이라고 생각합니다. 실제로 ESP에 공간이 있다고 가정하면(아마도 없을 것 같습니다) USB로 부팅한 다음 nvme 루트로 루트를 변경해야 합니다. 루트 파티션(예: /mnt)을 마운트하고 ESP를 /mnt(예: /mnt/efi)의 하위 디렉터리로 마운트합니다. 그런 다음 /mnt로 루트를 변경하세요. 이제 새 efi 파일을 생성하여 esp(예제에서는 /mnt/efi)에 배치할 수 있습니다.

또는 UEFI 셸로 부팅했다고 말합니다. 셸에 들어가면 프롬프트에 따라 하드 드라이브에 있는 esp의 fs#로 변경합니다(UEFI는 해당 드라이브를 매핑합니다 등). 따라서 셸에서 fs0: 또는 fs1:을 입력하거나 지도에서 알려주는 것이 무엇이든 귀하의 esp입니다. 일단 거기에 도달하면 ls를 실행하여 ESP에 무엇이 있는지 확인하십시오. 아마도 부팅 가능한 efi 파일(아마도 bootx64.efi 또는 grubx64.efi)을 찾을 수 있을 것입니다. 파일이 있는 디렉터리에 있으면 이름을 입력하여 실행하세요. 그러면 하드 드라이브가 부팅될 수 있습니까?

따라서 여러 가지 가능성이 있습니다. 새 부팅 efi 파일을 만들거나 ESP에서 기존 efi 파일을 찾을 수 있습니다. 또 다른 가능성이 있습니다. UEFI 셸에서 vmlinuz 파일이 있으면 이를 사용하여 부팅하고 UEFI에 루트 디렉터리를 찾을 수 있는 위치를 알려줄 수 있습니다. 즉, esp(fs#:)로 이동합니다. vmlinuz 및 initramfs가 있는 경우 다음 명령줄을 작성할 수 있습니다. \vmlinuz root=/dev/nvme??? \initramfs... 이 방법으로 시작해야 합니다.

부록 2: 놀랍게도 꽉 찼습니다. 글쎄요...제가 원했던 것보다 조금 느렸네요. 우리는 이 파티션의 모든 공간을 차지하는 것이 무엇인지 알아야 합니다. 디렉토리를 나열하기만 하면 됩니다(사람이 읽을 수 있는 크기를 M 단위로 얻으려면 ls -s 또는 ls -hs). 확실히 제거할 수 있는 것이 있지만 목록을 보기 전까지는 무엇인지 알 수 없습니다.

부록 3: 좋아요... 물론 tree를 실행하면 각 파일의 크기를 볼 수 없습니다. ls -s 또는 ls -sh를 실행하면 각 파일의 크기가 표시됩니다.

그럼에도 불구하고 각 initramfs 파일은 아마도 40M 범위에 있으므로 이러한 파일은 시스템에서 많은 공간을 차지합니다. 각 vmlinuz 파일은 약 10M입니다. 따라서 6개의 initramfs 이미지(총 240M 이상)와 3개의 vmlinuz 파일(30-40M 이상)을 사용하여 처음으로 거의 300M이 작업하게 됩니다. 다양한 efi 파일의 크기가 얼마나되는지 알 방법이 없습니다.

나는 systemd-boot를 사용하지 않습니다. 그래서 모든 linux...rolling.efi 파일이 생성되는 것 같습니다. 그래서 그 사람들이 얼마나 큰지 모르겠어요.

그러나 시작에는 하나의 vmlinuz-linux 파일과 하나의 initramfs-linux.img 파일만 필요합니다.

외부 파일을 삭제하지 말고(외부 파일임을 확인할 때까지) 루트 드라이브(nvme0n1p2)로 이동하는 것이 좋습니다. 가장 쉬운 방법은 initramsf-lts 및 initramfs-zen 파일을 이동하는 것입니다. 이렇게 하면 6.09로 업그레이드할 때 돌아가서 모든 것이 제대로 작동할 수 있도록 충분한 공간이 확보됩니다.

답변2

아마도 부팅 관리자 일 것입니다.
다음 명령을 시도해 보세요.

sudo grub-mkconfig
sudo update-grub

그래도 도움이 되지 않으면 다시 설치하는 것이 좋습니다. 재설치하기 전에 데이터 정의를 사용하여 nvme 드라이브를 삭제하세요. 라이브 USB에서 DD를 실행할 수 있습니다.

저장장치에 있는 모든 데이터는 복구 불가능하게 삭제되오니, 미리 데이터를 백업해두시기 바랍니다!

sudo dd if=/dev/zero of=/dev/nvme0n1 status=progress

어쩌면 다른 사람이 더 나은 해결책을 가지고 있을 수도 있습니다.

관련 정보