유효한 파티션 테이블이 없으면 어떤 결과가 발생합니까?

유효한 파티션 테이블이 없으면 어떤 결과가 발생합니까?

최근에 Ubuntu를 11.10에서 업그레이드했습니다(오네릭) ~ 12.04(정밀 천산갑)안에델 인스피론 B130랩탑. 실행하면 fdisk -l내 하드 드라이브에 유효한 파티션 테이블이 없다고 나옵니다. 나는 이것이 나쁘다고 생각하게 만드는 적절한 파티셔닝에 대해 많이 읽었지만 이상한 동작이나 문제를 발견하지 못했습니다. 유효한 파티션 테이블이 없으면 어떤 결과가 발생합니까?

답변1

파티션 테이블 없이 블록 디바이스에서 직접 파일 시스템을 생성하는 것이 가능하며, 이는 본질적으로 문제가 없습니다. 이는 단지 하나의 파일 시스템만 가질 수 있고 그 위에 다른 것은 아무것도 있을 수 없다는 것을 의미합니다(스왑 파티션 등 없음). 그러나 이러한 블록 장치는 부팅이 불가능할 가능성이 높습니다. 부트로더(grub)는 일반적으로 디스크가 여러 파티션으로 분할될 때 생성된 여유 공간에 몰래 들어가는데, 해당 공간이 없으면 디스크를 둘 곳이 없습니다.

그럼요, 매번푸수시도구가 "잘못"임에 틀림없다고 말합니다.

디스크에 GPT 파티션 테이블이 있고 PC 레거시 파티션 테이블이 없을 수도 있습니다. fdiskPC 레거시 파티션 테이블만 지원하므로 파티션 테이블을 찾을 수 없다고 보고될 수 있습니다. GPT 파티션에는 이전 버전과의 호환성을 위해 유효한 가상 fdisk 파티션 테이블이 포함되어야 하므로 이런 일이 발생해서는 안 되지만 가능하다고 생각합니다. 이를 확인하려면 파티션이 무엇을 사용하고 있다고 생각 parted하는지 커널에 물어 gdisk보거나 /proc/partitions.

또 다른 가능성은 fdisk어떤 이유로 디스크를 읽을 수 없다는 것입니다(권한이 있습니까? 루트입니까?).

답변2

이것은 실제로 좋은 것도 나쁜 것도 아닙니다. "유효한 파티션 테이블이 포함되어 있지 않습니다"라는 오류가 항상 이를 의미하는 것은 아닙니다. 인식할 수 없는 오프셋에 유효한 파티션 테이블이 있고 동일한 오류가 발생할 수 있습니다.

예를 들어:

  • 먼저 파티션을 생성한 다음 볼륨에 파일 시스템을 배치하지 않고 원시 디스크에 LVM 볼륨을 생성하면 이 오류가 발생합니다.
  • "정렬된" 저장소를 만들고 시작 섹터를 8로 나눌 수 있도록 변경하려고 하면 이 오류 또는 더 일반적인 경계 오류가 발생합니다.

몇 대의 컴퓨터를 실행하고 디스크 정렬을 달성하기 위해 4096(8로 나눌 수 있음)에서 섹터를 시작하고 그 지점에서 파티션 1을 만들었습니다.

또는

기본 오프셋이 아닌 디스크 시작 부분에서 시작되도록 파티션을 먼저 생성하지 않고 LVM을 생성합니다.

예:

기본적으로 대부분의 디스크는 다음을 사용하여 디스크를 볼 때 섹터 63에서 시작합니다.fdisk -lu

Disk /dev/sdb: 21.4 GB, 21475885056 bytes
255 heads, 63 sectors/track, 2610 cylinders, total 41945088 sectors
Units = sectors of 1 * 512 = 512 bytes

   Device Boot      Start         End      Blocks   Id  System
/dev/sdb1              63    37752749    18876343+  8e  Linux LVM
/dev/sdb2        37752750    41752934     2000092+  8e  Linux LVM

- 시작 섹터 수정 시 경계 오류가 발생했습니다.

Disk /dev/sda: 98.7 GB, 98784247808 bytes
255 heads, 63 sectors/track, 12009 cylinders, total 192937984 sectors
Units = sectors of 1 * 512 = 512 bytes

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *         128      204799      102336   83  Linux
Partition 1 does not end on cylinder boundary.
/dev/sda2          204800    78329807    39062504   82  Linux swap / Solaris
/dev/sda3        78329808   192937983    57304088   83  Linux

- 파티션을 먼저 생성하지 않고 드라이브에 LVM을 추가하면 파티션 테이블 오류가 발생하여 파티션 테이블이 없습니다.

Disk /dev/dm-5: 10.7 GB, 10737418240 bytes
255 heads, 63 sectors/track, 1305 cylinders, total 20971520 sectors
Units = sectors of 1 * 512 = 512 bytes
Disk identifier: 0x00000000

Disk /dev/dm-5 doesn't contain a valid partition table

--> 파티션이 /usr마운트 되었습니다 /dev/dm-5 on /usr type xfs (rw) --> 완전히 액세스 가능합니다.

ll /usr
total 272
drwxr-xr-x   5 root root    38 Jan  3 11:10 X11R6
drwxr-xr-x   2 root root 57344 May  9 16:25 bin
..........

fdisk -lu질문에 덧붙이자면 , 메인 드라이브가 아닌 다른 장치에서 이 오류가 발생할 가능성이 가장 높으며 /dev/sda1, 시스템을 부팅하기 위해 사용자 정의 수정을 해야 한다고 명시하지 않았기 때문에 그런 것은 아닙니다.

이는 구체적인 세부 정보를 확인하지 않은 채 모두 가정한 것입니다.

편집하다:제가 말한 내용 중 많은 부분이 포함되어 있습니다.세라다의 대답(더 간결하고 읽기 쉬운 방식: }). 내 "정교함"이 혼란을 가중시키지 않기를 바랍니다.

관련 정보