최근 ZFS를 루트 파일 시스템으로 사용하여 Dell Precision M4800에 FreeBSD 12.1을 설치했습니다. 운영 체제는 mSATA SSD에 설치되어 있으며, 2½인치 HDD도 설치되어 있습니다. 부팅 시 mSATA SSD에서 부팅하도록 수동으로 선택하지 않으면 시스템이 부팅을 거부합니다. 그럼에도 불구하고 FreeBSD 부트로더는 "잘못된 파티션 테이블"에 대해 불평하지만 Enter 키를 누르면 여전히 부팅됩니다.
FreeBSD를 정상적으로 시작하려면 어떻게 해야 합니까?
나는 많은 정보를 제공하지 않았다는 것을 알고 있습니다. 저는 FreeBSD를 처음 접했고 이 문제를 해결하는 데 어떤 정보가 필요한지 모르겠습니다. 필요한 것이 무엇인지 알려주시면 즉시 필요한 정보를 제공해 드리겠습니다.
추가 정보
Alex 사용자가 저에게 보고해 달라고 요청했습니다 fdisk -l
. FreeBSD는 fdisk
이를 지원하지 않지만 -l
어쨌든 출력은 다음과 같습니다.
# fdisk -l
fdisk: illegal option -- l
usage: fdisk [-BIaipqstu] [-b bootcode] [-1234] [disk]
fdisk -f configfile [-itv] [disk]
출력은 다음과 같습니다 gpart list
.
# gpart list
Geom name: ada1
modified: false
state: OK
fwheads: 16
fwsectors: 63
last: 1000215182
first: 34
entries: 128
scheme: GPT
Providers:
1. Name: ada1p1
Mediasize: 524288 (512K)
Sectorsize: 512
Stripesize: 0
Stripeoffset: 20480
Mode: r0w0e0
rawuuid: 4ef0a0fe-67b0-11e5-881a-34e6d760b2c5
rawtype: 83bd6b9d-7f41-11dc-be0b-001560b84f0f
attrib: bootme
label: gptboot0
length: 524288
offset: 20480
type: freebsd-boot
index: 1
end: 1063
start: 40
2. Name: ada1p2
Mediasize: 34359738368 (32G)
Sectorsize: 512
Stripesize: 0
Stripeoffset: 1048576
Mode: r1w1e1
rawuuid: 4f077a7a-67b0-11e5-881a-34e6d760b2c5
rawtype: 516e7cb5-6ecf-11d6-8ff8-00022d09712b
label: swap0
length: 34359738368
offset: 1048576
type: freebsd-swap
index: 2
end: 67110911
start: 2048
3. Name: ada1p3
Mediasize: 477749051392 (445G)
Sectorsize: 512
Stripesize: 0
Stripeoffset: 1048576
Mode: r1w1e1
rawuuid: 4f0caac1-67b0-11e5-881a-34e6d760b2c5
rawtype: 516e7cba-6ecf-11d6-8ff8-00022d09712b
label: zfs0
length: 477749051392
offset: 34360786944
type: freebsd-zfs
index: 3
end: 1000214527
start: 67110912
Consumers:
1. Name: ada1
Mediasize: 512110190592 (477G)
Sectorsize: 512
Mode: r2w2e4
고쳐 쓰다
영향을 받은 부분은 BIOS의 구성 문제인 것으로 나타났습니다. 올바른 부팅 디스크를 선택한 후 부팅 장치를 수동으로 선택하지 않아도 컴퓨터에 "잘못된 파티션 테이블" 메시지가 표시됩니다. 그러나 pmbr
FreeBSD 부팅 코드가 왜 이 메시지를 인쇄하는지에 대한 의문은 남아 있습니다.
답변1
분명히 디스크는 UEFI를 사용하여 시스템을 부팅하는 경우 필요한 GPT 레이아웃을 사용하여 파티션이 나누어져 있습니다. 아마도 FreeBSD는 먼저 이전 MS-DOS 파티션 레이아웃을 감지하고 메시지를 인쇄한 다음 계속해서 다른 레이아웃을 시도하고 성공적으로 GPT 레이아웃을 찾아 부팅을 계속할 것입니다.
SSD를 수동으로 선택해야 하는 경우 이는 BIOS 구성 문제일 가능성이 높습니다. 하드 드라이브가 첫 번째 SATA 포트에 연결되어 기본 부팅 디스크가 되는 것 같습니다. BIOS 구성을 복구하거나 SSD가 첫 번째 SATA 포트에 연결되도록 SATA 연결을 교체합니다.
답변2
두 번째 디스크가 표시되지 않습니다. 이는 실제로 올바르게 분할되지 않았기 때문일 수 있습니다. 부트로더가 부팅할 항목을 찾으려고 하지만 디스크 중 하나를 읽을 수 없습니다.
나는 그것을 gpart show
geom이 무엇을 발견했는지 확인하는 데 사용했습니다. GEOM이 레이아웃을 감지하는 데 gpart list
문제가 있는 경우 나중에 를 사용하여 읽을 수 있는 로그에 오류를 기록합니다 dmesg
.
MBR이 첫 번째 디스크에 기록되고 부팅 파티션이 두 번째 디스크에 있을 수도 있습니다. BIOS에서 설치하지 않을 디스크를 비활성화하거나 간단히 플러그를 뽑아 이 문제를 방지할 수 있습니다.
GPT 파티션 구성표는 일반적으로 MBR과 호환되므로 아무런 해를 끼치지 않습니다. 내가 이해한 바에 따르면, 당신이 말하는 오류 메시지는 나중에 부트로더에서 나옵니다. 따라서 BIOS 문제는 여기서 배제될 수 있습니다.