Centos 6.5에서 BIOS를 업데이트하기 위해 FreeDos를 사용하여 부팅 가능한 USB 스틱을 만들려고 합니다. 다음 지침을 따르십시오.httobe.com
다음 명령을 사용하여 빈 30MB img 파일을 만들었습니다 dd
.
[root@dumbledore freedos_boot]# dd if=/dev/zero of=FreeDos-image.img bs=1M
count=30
30+0 records in
30+0 records out
31457280 bytes (31 MB) copied, 0.0756911 s, 416 MB/s
위 기사의 작성자는 이 명령이 30MB를 복사해야 한다고 말했는데, 저는 31MB를 얻었습니다. 이것이 문제입니까?
그런 다음 이를 사용하여 parted
생성된 FreeDos-image.img 파일에 파티션을 만들었습니다.
root@dumbledore freedos_boot]# parted FreeDos-image.img
GNU Parted 2.1
Using /home/dthacker/freedos_boot/FreeDos-image.img
Welcome to GNU Parted! Type 'help' to view a list of commands.
(parted) unit %
(parted) mklabel msdos
(parted) mkpart primary fat16 0 100%
Warning: The resulting partition is not properly aligned for best performance.
Ignore/Cancel? C
(parted) mkpart primary fat32 0 100%
Warning: The resulting partition is not properly aligned for best performance.
Ignore/Cancel? I
(parted) set 1 boot on
(parted) p
Model: (file)
Disk /home/dthacker/freedos_boot/FreeDos-image.img: 100%
Sector size (logical/physical): 512B/512B
Partition Table: msdos
Number Start End Size Type File system Flags
1 0.00% 100% 100% primary boot, lba
파일 시스템 유형은 FAT16이어야 하는데 아직 설정되지 않았습니다.
올바르게 설정하려면 어떻게 해야 합니까?
답변1
저는 chtaube.eu에서 이 지침의 작성자입니다. :)
dd는 크기와 관련하여 약간 일관성이 없습니다. bs=1M
블록 크기를 1로 정의하십시오.테라바이트1024*1024바이트를 나타냅니다. 30MB는 30*1024*1024 = 31457280바이트입니다. dd
최종 출력은 10진수 메가바이트(1MB = 1000*1000바이트)입니다. 그래서 31MB가 표시됩니다. 따라서 걱정할 것이 없습니다. 저는 "32MB"라고 광고하는 USB 플래시 드라이브에 들어갈 수 있도록 보수적으로 32MB보다 약간 작은 크기를 선택했습니다.
방금 Arch Linux와 Debian에서 이 문제를 확인했고 parted
문제를 재현할 수 있었습니다.
나에게 이것은 parted
(print) 명령의 출력이 p
"빈" 파일 시스템을 표시하는 반면 파티션은 실제로 FAT16으로 올바르게 생성되므로 외관상의 문제처럼 보입니다.
fdisk -l FreeDos-image.img
아래의 TypeScript에서 했던 것처럼 이를 확인할 수 있습니다.
ct@darkstar ~/tmp % dd if=/dev/zero of=Freedos.img bs=1M count=30
30+0 records in
30+0 records out
31457280 bytes (31 MB) copied, 0.150141 s, 210 MB/s
ct@darkstar ~/tmp % parted Freedos.img
WARNING: You are not superuser. Watch out for permissions.
GNU Parted 3.1
Using /home/ct/tmp/Freedos.img
Welcome to GNU Parted! Type 'help' to view a list of commands.
(parted) unit %
(parted) mklabel msdos
(parted) mkpart primary fat16 0 100%
Warning: The resulting partition is not properly aligned for best performance.
Ignore/Cancel? i
(parted) set 1 boot on
(parted) p
Model: (file)
Disk /home/ct/tmp/Freedos.img: 100%
Sector size (logical/physical): 512B/512B
Partition Table: msdos
Disk Flags:
Number Start End Size Type File system Flags
1 0.00% 100% 100% primary boot, lba
(parted) q
ct@darkstar ~/tmp % fdisk -l Freedos.img
Disk Freedos.img: 30 MiB, 31457280 bytes, 61440 sectors
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: dos
Disk identifier: 0x0007cae1
Device Boot Start End Blocks Id System
Freedos.img1 * 1 61439 30719+ e W95 FAT16 (LBA)
ct@darkstar ~/tmp %
따라서 귀하에게는 문제가 없을 것입니다. 어쨌든, 이것을 지적해 주셔서 감사합니다. 해당 동작을 더 자세히 조사 parted
하고 이에 따라 내 페이지의 매뉴얼을 업데이트하겠습니다.