Команда IT специалистов выполнит подготовку инфраструктуры для вашего бизнеса.
Внедрение самых передовых решений и технологий.
Поддержка и сопровождение ваших сервисов.
Выполнение работ под "ключ", от покупки сервера, до настройки автоматизации процессов. 8(977)608-78-62 adm@nixm.ru
Внедрение самых передовых решений и технологий.
Поддержка и сопровождение ваших сервисов.
Выполнение работ под "ключ", от покупки сервера, до настройки автоматизации процессов. 8(977)608-78-62 adm@nixm.ru
загрузка GPT диска средствами BIOS
Re: загрузка GPT диска средствами BIOS
Вот меня и интересует, каким образом, в разных случаях, грузятся BIOS-ом USB носители, собранные совершенно разными способами ... вот в данном, вашем случае - без каких либо загрузочных разделов (если это GPT вообще ... хотя по типу Microsoft basic data судя - похоже что GPT)tupoll писал(а):Вот флешка systemrecuecd gentoo ZFS записанная скриптом с образа,разумеется она на dos и в fat32,она же и носитель информации:монтируется свободно ,Код: Выделить всё
Disk Drive: /dev/sdd Size: 31461376, 15.0 GiB Part. # Size Partition Type Partition Name ---------------------------------------------------------------- 1 15.0 GiB Microsoft basic data Microsoft basic data
Я в сраче не участвую ... по крайней мере в этой теме.tupoll писал(а): о какой ведущей федоре вообще речь?
Хотите пАгАвАрить? - заведите отдельную тему, там и пАгАвАрим.
Re: загрузка GPT диска средствами BIOS
Код: Выделить всё
~ % ls /media/SYSRESC
System Volume Information boot bootdisk bootprog efi funtoo ntpasswd readme.txt syslinux sysrcd.dat sysrcd.md5 usb_inst usb_inst.sh usbstick.htm version
Правильный линукс-BSD.
Re: загрузка GPT диска средствами BIOS
Имеют ли определяющее значение partition ID этих загрузочных разделов (ef00, ef02), или это соответствие только для наглядности, диагностики?
Olej.
Вопрос на 10 баллов
Ну если учесть что id у каждой операционной системы различно при разметке то нагляднее представить что-то проще на примере солярис,если представить пул как самостоятельный диск-он не может быть загрузочным,однако присутствует id BF00 -загрузочный раздел для пула на который наносится файловая система без каких либо меток ,но с разделом /boot,для груба совершенно безразлично bf00 это или bf02,а загрузчику солярис нет -значит наверно всёже значение определяющее именно для данной ОС.А может я совсем ошибаюсь.
Olej.
Вопрос на 10 баллов
Ну если учесть что id у каждой операционной системы различно при разметке то нагляднее представить что-то проще на примере солярис,если представить пул как самостоятельный диск-он не может быть загрузочным,однако присутствует id BF00 -загрузочный раздел для пула на который наносится файловая система без каких либо меток ,но с разделом /boot,для груба совершенно безразлично bf00 это или bf02,а загрузчику солярис нет -значит наверно всёже значение определяющее именно для данной ОС.А может я совсем ошибаюсь.
Последний раз редактировалось tupoll 09 янв 2017, 16:51, всего редактировалось 2 раза.
Правильный линукс-BSD.
Re: загрузка GPT диска средствами BIOS
Вот ещё что интересно (непонятно!)...
Посмотрим как ID раздела (partition ID) идентифицирует gdisk (2-х байтные):
На тот же диск (GPT) свежий fdisk Linux предлагает:
Как видно, gdisk и fdisk используют разные ID!
Если тому же fdisk подсунуть MBR диск, то он покажет идентификаторы типа раздела (там они были 1 байтные):
Стандарт GPT предусматривает GUID как для диска целиком так и для разделов - 16 байт (по крайней мере так писал стандарт году в 2012-м).
Получается ли так, что любая утилита, работающая с разметкой GPT диска вводит свои, с потолка взятые, partition ID при создании разделов?
Что все такие утилиты несовместимы между собой по представлению? ... я уже не говорю, боюсь, о совместимости GPT разных ОС ... например, когда Windows пишут о 128 разделах на диске максимум, а Linux - о 256...
Посмотрим как ID раздела (partition ID) идентифицирует gdisk (2-х байтные):
Код: Выделить всё
Command (? for help): l
0700 Microsoft basic data 0c01 Microsoft reserved 2700 Windows RE
3000 ONIE boot 3001 ONIE config 3900 Plan 9
4100 PowerPC PReP boot 4200 Windows LDM data 4201 Windows LDM metadata
4202 Windows Storage Spac 7501 IBM GPFS 7f00 ChromeOS kernel
7f01 ChromeOS root 7f02 ChromeOS reserved 8200 Linux swap
8300 Linux filesystem 8301 Linux reserved 8302 Linux /home
8303 Linux x86 root (/) 8304 Linux x86-64 root (/ 8305 Linux ARM64 root (/)
8306 Linux /srv 8307 Linux ARM32 root (/) 8400 Intel Rapid Start
8e00 Linux LVM a500 FreeBSD disklabel a501 FreeBSD boot
a502 FreeBSD swap a503 FreeBSD UFS a504 FreeBSD ZFS
a505 FreeBSD Vinum/RAID a580 Midnight BSD data a581 Midnight BSD boot
a582 Midnight BSD swap a583 Midnight BSD UFS a584 Midnight BSD ZFS
a585 Midnight BSD Vinum a600 OpenBSD disklabel a800 Apple UFS
a901 NetBSD swap a902 NetBSD FFS a903 NetBSD LFS
a904 NetBSD concatenated a905 NetBSD encrypted a906 NetBSD RAID
ab00 Recovery HD af00 Apple HFS/HFS+ af01 Apple RAID
af02 Apple RAID offline af03 Apple label af04 AppleTV recovery
af05 Apple Core Storage bc00 Acronis Secure Zone be00 Solaris boot
bf00 Solaris root bf01 Solaris /usr & Mac Z bf02 Solaris swap
bf03 Solaris backup bf04 Solaris /var bf05 Solaris /home
bf06 Solaris alternate se bf07 Solaris Reserved 1 bf08 Solaris Reserved 2
Press the <Enter> key to see more codes:
bf09 Solaris Reserved 3 bf0a Solaris Reserved 4 bf0b Solaris Reserved 5
c001 HP-UX data c002 HP-UX service ea00 Freedesktop $BOOT
eb00 Haiku BFS ed00 Sony system partitio ed01 Lenovo system partit
ef00 EFI System ef01 MBR partition scheme ef02 BIOS boot partition
f800 Ceph OSD f801 Ceph dm-crypt OSD f802 Ceph journal
f803 Ceph dm-crypt journa f804 Ceph disk in creatio f805 Ceph dm-crypt disk i
fb00 VMWare VMFS fb01 VMWare reserved fc00 VMWare kcore crash p
fd00 Linux RAID
Код: Выделить всё
[olej@dell GPT]$ sudo fdisk /dev/sdb
Добро пожаловать в fdisk (util-linux 2.28).
Изменения останутся только в памяти до тех пор, пока вы не решите записать их.
Будьте внимательны, используя команду write.
Команда (m для справки): l
1 EFI System C12A7328-F81F-11D2-BA4B-00A0C93EC93B
2 MBR partition scheme 024DEE41-33E7-11D3-9D69-0008C781F39F
3 Intel Fast Flash D3BFE2DE-3DAF-11DF-BA40-E3A556D89593
4 BIOS boot 21686148-6449-6E6F-744E-656564454649
5 Sony boot partition F4019732-066E-4E12-8273-346C5641494F
6 Lenovo boot partition BFBFAFE7-A34F-448A-9A5B-6213EB736C22
7 PowerPC PReP boot 9E1A2D38-C612-4316-AA26-8B49521E5A8B
8 ONIE boot 7412F7D5-A156-4B13-81DC-867174929325
9 ONIE config D4E6E2CD-4469-46F3-B5CB-1BFF57AFC149
10 Microsoft reserved E3C9E316-0B5C-4DB8-817D-F92DF00215AE
11 Microsoft basic data EBD0A0A2-B9E5-4433-87C0-68B6B72699C7
12 Microsoft LDM metadata 5808C8AA-7E8F-42E0-85D2-E1E90434CFB3
13 Microsoft LDM data AF9B60A0-1431-4F62-BC68-3311714A69AD
14 Windows recovery environment DE94BBA4-06D1-4D40-A16A-BFD50179D6AC
15 IBM General Parallel Fs 37AFFC90-EF7D-4E96-91C3-2D7AE055B174
16 Microsoft Storage Spaces E75CAF8F-F680-4CEE-AFA3-B001E56EFC2D
17 HP-UX data 75894C1E-3AEB-11D3-B7C1-7B03A0000000
18 HP-UX service E2A1E728-32E3-11D6-A682-7B03A0000000
19 Linux swap 0657FD6D-A4AB-43C4-84E5-0933C84B4F4F
20 Linux filesystem 0FC63DAF-8483-4772-8E79-3D69D8477DE4
21 Linux server data 3B8F8425-20E0-4F3B-907F-1A25A76F98E8
22 Linux root (x86) 44479540-F297-41B2-9AF7-D131D5F0458A
23 Linux root (ARM) 69DAD710-2CE4-4E3C-B16C-21A1D49ABED3
24 Linux root (x86-64) 4F68BCE3-E8CD-4DB1-96E7-FBCAF984B709
25 Linux root (ARM-64) B921B045-1DF0-41C3-AF44-4C6F280D3FAE
26 Linux root (IA-64) 993D8D3D-F80E-4225-855A-9DAF8ED7EA97
27 Linux reserved 8DA63339-0007-60C0-C436-083AC8230908
28 Linux home 933AC7E1-2EB4-4F13-B844-0E14E2AEF915
29 Linux RAID A19D880F-05FC-4D3B-A006-743F0F84911E
30 Linux extended boot BC13C2FF-59E6-4262-A352-B275FD6F7172
31 Linux LVM E6D6D379-F507-44C2-A23C-238F2A3DF928
32 FreeBSD data 516E7CB4-6ECF-11D6-8FF8-00022D09712B
33 FreeBSD boot 83BD6B9D-7F41-11DC-BE0B-001560B84F0F
34 FreeBSD swap 516E7CB5-6ECF-11D6-8FF8-00022D09712B
35 FreeBSD UFS 516E7CB6-6ECF-11D6-8FF8-00022D09712B
36 FreeBSD ZFS 516E7CBA-6ECF-11D6-8FF8-00022D09712B
37 FreeBSD Vinum 516E7CB8-6ECF-11D6-8FF8-00022D09712B
38 Apple HFS/HFS+ 48465300-0000-11AA-AA11-00306543ECAC
39 Apple UFS 55465300-0000-11AA-AA11-00306543ECAC
40 Apple RAID 52414944-0000-11AA-AA11-00306543ECAC
41 Apple RAID offline 52414944-5F4F-11AA-AA11-00306543ECAC
42 Apple boot 426F6F74-0000-11AA-AA11-00306543ECAC
43 Apple label 4C616265-6C00-11AA-AA11-00306543ECAC
44 Apple TV recovery 5265636F-7665-11AA-AA11-00306543ECAC
45 Apple Core storage 53746F72-6167-11AA-AA11-00306543ECAC
46 Solaris boot 6A82CB45-1DD2-11B2-99A6-080020736631
47 Solaris root 6A85CF4D-1DD2-11B2-99A6-080020736631
48 Solaris /usr & Apple ZFS 6A898CC3-1DD2-11B2-99A6-080020736631
49 Solaris swap 6A87C46F-1DD2-11B2-99A6-080020736631
50 Solaris backup 6A8B642B-1DD2-11B2-99A6-080020736631
51 Solaris /var 6A8EF2E9-1DD2-11B2-99A6-080020736631
52 Solaris /home 6A90BA39-1DD2-11B2-99A6-080020736631
53 Solaris alternate sector 6A9283A5-1DD2-11B2-99A6-080020736631
54 Solaris reserved 1 6A945A3B-1DD2-11B2-99A6-080020736631
55 Solaris reserved 2 6A9630D1-1DD2-11B2-99A6-080020736631
56 Solaris reserved 3 6A980767-1DD2-11B2-99A6-080020736631
57 Solaris reserved 4 6A96237F-1DD2-11B2-99A6-080020736631
58 Solaris reserved 5 6A8D2AC7-1DD2-11B2-99A6-080020736631
59 NetBSD swap 49F48D32-B10E-11DC-B99B-0019D1879648
60 NetBSD FFS 49F48D5A-B10E-11DC-B99B-0019D1879648
61 NetBSD LFS 49F48D82-B10E-11DC-B99B-0019D1879648
62 NetBSD concatenated 2DB519C4-B10E-11DC-B99B-0019D1879648
63 NetBSD encrypted 2DB519EC-B10E-11DC-B99B-0019D1879648
64 NetBSD RAID 49F48DAA-B10E-11DC-B99B-0019D1879648
65 ChromeOS kernel FE3A2A5D-4F32-41A7-B725-ACCC3285A309
66 ChromeOS root fs 3CB8E202-3B7E-47DD-8A3C-7FF2A13CFCEC
67 ChromeOS reserved 2E0A753D-9E48-43B0-8337-B15192CB1B5E
68 MidnightBSD data 85D5E45A-237C-11E1-B4B3-E89A8F7FC3A7
69 MidnightBSD boot 85D5E45E-237C-11E1-B4B3-E89A8F7FC3A7
70 MidnightBSD swap 85D5E45B-237C-11E1-B4B3-E89A8F7FC3A7
71 MidnightBSD UFS 0394EF8B-237E-11E1-B4B3-E89A8F7FC3A7
72 MidnightBSD ZFS 85D5E45D-237C-11E1-B4B3-E89A8F7FC3A7
73 MidnightBSD Vinum 85D5E45C-237C-11E1-B4B3-E89A8F7FC3A7
74 Ceph Journal 45B0969E-9B03-4F30-B4C6-B4B80CEFF106
75 Ceph Encrypted Journal 45B0969E-9B03-4F30-B4C6-5EC00CEFF106
76 Ceph OSD 4FBD7E29-9D25-41B8-AFD0-062C0CEFF05D
77 Ceph crypt OSD 4FBD7E29-9D25-41B8-AFD0-5EC00CEFF05D
78 Ceph disk in creation 89C57F98-2FE5-4DC0-89C1-F3AD0CEFF2BE
79 Ceph crypt disk in creation 89C57F98-2FE5-4DC0-89C1-5EC00CEFF2BE
80 OpenBSD data 824CC7A0-36A8-11E3-890A-952519AD3F61
81 QNX6 file system CEF5A9AD-73BC-4601-89F3-CDEEEEE321A1
82 Plan 9 partition C91818F9-8025-47AF-89D2-F030D7000C2C
Если тому же fdisk подсунуть MBR диск, то он покажет идентификаторы типа раздела (там они были 1 байтные):
Код: Выделить всё
Команда (m для справки): l
0 Пустой 24 NEC DOS 81 Minix / старый bf Solaris
1 FAT12 27 Скрытый NTFS Wi 82 Linux своп / So c1 DRDOS/sec (FAT-
2 XENIX root 39 Plan 9 83 Linux c4 DRDOS/sec (FAT-
3 XENIX usr 3c PartitionMagic 84 OS/2 hidden or c6 DRDOS/sec (FAT-
4 FAT16 <32M 40 Venix 80286 85 Linux расширен c7 Syrinx
5 Расширенный 41 PPC PReP Boot 86 NTFS набор томо da Данные не ФС
6 FAT16 42 SFS 87 NTFS набор томо db CP/M / CTOS / .
7 HPFS/NTFS/exFAT 4d QNX4.x 88 Linux plaintext de Dell Utility
8 AIX 4e QNX4.x 2-я част 8e Linux LVM df BootIt
9 AIX загрузочный 4f QNX4.x 3-я част 93 Amoeba e1 DOS access
a OS/2 Boot-менед 50 OnTrack DM 94 Amoeba BBT e3 DOS R/O
b W95 FAT32 51 OnTrack DM6 Aux 9f BSD/OS e4 SpeedStor
c W95 FAT32 (LBA) 52 CP/M a0 IBM Thinkpad hi ea Rufus alignment
e W95 FAT16 (LBA) 53 OnTrack DM6 Aux a5 FreeBSD eb BeOS фс
f W95 расшир. (LB 54 OnTrackDM6 a6 OpenBSD ee GPT
10 OPUS 55 EZ-Drive a7 NeXTSTEP ef EFI (FAT-12/16/
11 Скрытый FAT12 56 Golden Bow a8 Darwin UFS f0 Linux/PA-RISC з
12 Compaq диагност 5c Priam Edisk a9 NetBSD f1 SpeedStor
14 Скрытый FAT16 < 61 SpeedStor ab Darwin загрузоч f4 SpeedStor
16 Скрытый FAT16 63 GNU HURD или Sy af HFS / HFS+ f2 DOS вторичный
17 Скрытый HPFS/NT 64 Novell Netware b7 BSDI фс fb VMware VMFS
18 AST SmartSleep 65 Novell Netware b8 BSDI своп fc VMware VMKCORE
1b Скрытый W95 FAT 70 DiskSecure Mult bb Boot Wizard скр fd Автоопределение
1c Скрытый W95 FAT 75 PC/IX bc Acronis FAT32 L fe LANstep
1e Скрытый W95 FAT 80 Old Minix be Solaris загр. ff BBT
Получается ли так, что любая утилита, работающая с разметкой GPT диска вводит свои, с потолка взятые, partition ID при создании разделов?
Что все такие утилиты несовместимы между собой по представлению? ... я уже не говорю, боюсь, о совместимости GPT разных ОС ... например, когда Windows пишут о 128 разделах на диске максимум, а Linux - о 256...
Re: загрузка GPT диска средствами BIOS
Ну так дайте на него свой ответ ... хотя бы на 3 с "-" баллов...tupoll писал(а):Имеют ли определяющее значение partition ID этих загрузочных разделов (ef00, ef02), или это соответствие только для наглядности, диагностики?
Вопрос на 10 баллов
Для MBR соответствие ID с его содержимым носило чисто договорное соответствие: вполне можно было раздел, созданный с HPFS меткой, форматировать как ext4.
Re: загрузка GPT диска средствами BIOS
Если взять lilo загрузчик он откажется записывать на EF02 вроде как проблем не должно быть,хотя на gpt он тоже работает.
Последний раз редактировалось tupoll 09 янв 2017, 16:44, всего редактировалось 1 раз.
Правильный линукс-BSD.
Re: загрузка GPT диска средствами BIOS
Вот (для однозначности) тот же раздел ef02 (как его gdisk понимает) но ... глазами GParted : Для раздела (любого, в данном случае /dev/sdb1) установлено в GPT множество флагов (сколько?).Olej писал(а): Имеют ли определяющее значение partition ID этих загрузочных разделов (ef00, ef02), или это соответствие только для наглядности, диагностики?
Для загрузочного раздела /dev/sdb1, типа ef02 BIOS boot partition (в терминологии gdisk) установлен флаг bios_grub.
Нужно ли, чтобы тип этого раздела был установлен для BIOS загрузки как BIOS boot partition? или как его называет fdisk (новый):
Код: Выделить всё
4 BIOS boot 21686148-6449-6E6F-744E-656564454649
Или для этого раздела может быть установлен тип с потолка (например: 7f00 ChromeOS kernel ... или всё что угодно) лишь бы для раздела был установлен флаг bios_grub?
И должен ли для такого раздела, заодно, и проделано форматирование только под строго определённый тип FS: FAT16, FAT32, NTFS, ...
P.S. Например, при EFI-загрузке описывают, что EFI-раздел загрузки должен быть форматирован в FAT32 ... + какого-то особого флага "EFI-раздел" GParted не знает ... т.е. определение назначения такого раздела, по идее, определяется по его типу, GUID=
Код: Выделить всё
1 EFI System C12A7328-F81F-11D2-BA4B-00A0C93EC93B
Re: загрузка GPT диска средствами BIOS
Пишут, что LILO работает с GPT "случайно" - его никто не адаптировал под GPT специально, но он изначально ориентирован на линейную LBA адресацию секторов диска, поэтому автоматом стал работать с GPT.tupoll писал(а):Если взять lilo загрузчик он откажется записывать на EF02 хотя вроде как проблем не должно быть,хотя на gpt он тоже работает.
Re: загрузка GPT диска средствами BIOS
Вопрос очень интересный,поставлю gparted пожалуй,сто лет его не видел для gpt он бесполезен был раньше,спрошу гуру,про такие вещи обычно не задумываешься при установке чего- бы то ни было.Но обычный линукс чувствует себя хорошо на gpt :
Код: Выделить всё
Disk Drive: /dev/sdc
Size: 488397168, 232.9 GiB
Part. # Size Partition Type Partition Name
----------------------------------------------------------------
1007.0 KiB free space
1 1000.0 KiB BIOS boot partition
24.0 KiB free space
2 3.2 GiB Solaris swap
528.0 KiB free space
3 22.4 GiB Linux filesystem
800.0 KiB free space
4 207.3 GiB Linux filesystem
[ Align ] [ Backup ] [ Help ] [ Load ] [ New ] [ Quit ] [ Verify ] [ Write ]
Create new partition from free space
Правильный линукс-BSD.
Re: загрузка GPT диска средствами BIOS
Создаю вот такой диск, размечаю:
На разделы переношу RAW образы дисков небольших ОС (образы несложно найти, или конвертировать qemu-img):
Каждая из 3-х систем отдельно грузится (QEMU).
Код: Выделить всё
[root@dell olej]# gdisk -l /dev/sdd
GPT fdisk (gdisk) version 1.0.1
Partition table scan:
MBR: protective
BSD: not present
APM: not present
GPT: present
Found valid GPT with protective MBR; using GPT.
Disk /dev/sdd: 1972224 sectors, 963.0 MiB
Logical sector size: 512 bytes
Disk identifier (GUID): 762411A0-211E-42F2-BA98-D8E56DD84661
Partition table holds up to 128 entries
First usable sector is 34, last usable sector is 1972190
Partitions will be aligned on 2048-sector boundaries
Total free space is 5157 sectors (2.5 MiB)
Number Start (sector) End (sector) Size Code Name
1 2048 5047 1.5 MiB EF02 BIOS boot partition
7 6144 63487 28.0 MiB 0700 Microsoft basic data
10 63488 204800 69.0 MiB 7501 IBM GPFS
21 206848 1972190 862.0 MiB EB00 Haiku BFS
Код: Выделить всё
[olej@dell GPT]$ sudo dd if=OS2Warp3mini.img of=/dev/sdb10
[sudo] пароль для olej:
131072+0 записей получено
131072+0 записей отправлено
скопировано 67108864 байта (67 MB), 5,56772 c, 12,1 MB/c
[olej@dell GPT]$ sudo qemu-kvm -drive file=/dev/sdb10,format=raw
...
Код: Выделить всё
[olej@dell GPT]$ time sudo dd if=haiku-r1alpha4.img of=/dev/sdb21
1411200+0 записей получено
1411200+0 записей отправлено
скопировано 722534400 байт (723 MB), 45,192 c, 16,0 MB/c
real 0m45.562s
user 0m0.207s
sys 0m2.659s
[olej@dell GPT]$ sudo qemu-kvm -drive file=/dev/sdb21,format=raw
...
Код: Выделить всё
[olej@dell GPT]$ time sudo dd if=ms-dos.img of=/dev/sdb7
[sudo] пароль для olej:
dd: запись в «/dev/sdb7»: На устройстве не осталось свободного места
57345+0 записей получено
57344+0 записей отправлено
скопировано 29360128 байт (29 MB), 10,24 c, 2,9 MB/c
real 0m13.180s
user 0m0.080s
sys 0m0.502s
[olej@dell GPT]$ sudo qemu-kvm -drive file=/dev/sdb7,format=raw
^C
qemu: terminating on signal 2