A partícionálás még mindig gond?

 ( tovis | 2019. március 15., péntek - 21:23 )

Évekkel ezelőtt csináltam egy ilyen konfigurációt:
# sfdisk -l /dev/sda
Disk /dev/sda: 465.8 GiB, 500107862016 bytes, 976773168 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: 0x4f04a95e

Device Boot Start End Sectors Size Id Type
/dev/sda1 * 2048 64063487 64061440 30.6G 83 Linux
/dev/sda2 * 64063488 128126975 64063488 30.6G 83 Linux
/dev/sda3 128126976 192190463 64063488 30.6G 83 Linux
/dev/sda4 192192510 976769023 784576514 374.1G 5 Extended
/dev/sda5 192192512 224221183 32028672 15.3G 82 Linux swap / Solaris
/dev/sda6 224223232 976769023 752545792 358.9G 83 Linux

Az sda1 partícióra került egy Debian (9.x) és most úgy gondoltam, csinálok egy másolatot az sda2 -re és ott próbálok ki néhány dolgot (STM32 fejlesztői környezet). A szokásos módon felformáztam az sda2 partíciót, átmásoltam a rendszert egy systemrescuecd segtségével. Módosítottam az fstab -ot és persze a lilo.conf -ot # chroot (a rescue -n nincs lilo) és lilo -t eleresztettem:
Added test9 *
Added LinuxOLD
Warning: Device 0x0800: Inconsistent partition table, 2nd entry
CHS address in PT: 915:195:49 --> LBA (8617728)
LBA address in PT: 64063488 --> CHS (6809:92:1)
Fatal: Either FIX-TABLE or IGNORE-TABLE must be specified
If not sure, first try IGNORE-TABLE (-P ignore)

A problémát megoldotta a -P ignore opció de miért lett ez inkonzisztens? Vagy a Debian telepítő vagy egy rescue -val particionáltam (lehet régebbi verziók), mivel vagy hogy kéne particionálnom, hogy elkerüéjem az ilyen meglepiket.

Hozzászólás megjelenítési lehetőségek

A választott hozzászólás megjelenítési mód a „Beállítás” gombbal rögzíthető.

parted vagy fdisk, de friss sfdisk is megteszi, ha újraírja a teljes táblát és kitörli a régebbi verziók azóta már nem kezelt információit:
"Since version 2.26 sfdisk supports MBR (DOS), GPT, SUN and SGI disk labels, but no longer provides any functionality for CHS (Cylinder-Head-Sector) addressing." //man sfdisk

Bizony, a parted rendelkezik azzal a fícsörrel, hogy a jól működő funkciókat rendre eltávolítják. ;)
Bár az "újraírja a teljes táblát" inkább a régebbi vindózok nemes tulajdonsága. Vagy csak rossz parancsot adtál ki.
Jómagam csakazértis klónozni szerettem volna egy partíciót, amelyet véletlenül (szinte) néhány szektorral odébb sikerült megcsinálni. Legalább tíz, jobbnál-jobb utilityt próbáltam ki, de mindhiába.
Aztán elővettem egy legalább tíz éves linux lemezt. Rescue mód, parted cp egyiket a másikra és kész. :)
Na, ennyit a klón-e-zillákról. :)

Szerintem az alapelvárás, hogy a partíciós táblában végzett módosítások mentésekor ne csak beleirkáljon a régibe, hanem a módosítottat egy tiszta, koherens egészként írja vissza. A kommented többi részét nem igazán értem, a parted valaha tudott cp-t és ezt hiányolod?

Jó szó ez a koherens. Olyan, mint az entitás==izé. ;)
Csak nem mondtad, hogy mivel koherens! Az MBR elég szabványosnak tűnő entitás (eltekintve a régi vadhajtásoktól), mert az ATA szabványok is leírják. Persze már jó régen függ az adott diszk transzlációjától és méretétől is.
A koherens úgy fog értelmet nyerni, ha pl. egy 30 éve particionált diszket módosítok, akkor csak a 30 évvel ezelőtti szabályoknak megfelelő módosítást szabad végezni.

A topicnyitó problémája meg onnan ered, hogy egyes disztrók gyakran több, más-más szabványnak megfelelő partíciókezelőt is tartalmazhatnak. A naív felhasználó meg azt hiszi, hogy amit elkezdett az egyikkel, azt folytathatja a másikkal.

Igen, a parted valaha tudott cp-t. Igaz, mindenféle okosságot is kiírt, hogy nem tudja, stb. Ennek ellenére amit tudott, azt számtalan esetben hibátlanul megtette.
Azt elfogadom, ha nem fejlesztik tovább, de miért kell eltávolítani a jól működő részeket? Biztosan nem én vagyok az egyetlen, aki használná.
De ez még mind semmi. Ez a törölt funkció pontosan azt tudta, amit legalább tíz ajánlott, hájpolt program nem/hibásan tudott, vagy csak lerombolta a rendszert.

Az MBR elég szabványosnak tűnő entitás (eltekintve a régi vadhajtásoktól), mert az ATA szabványok is leírják. Persze már jó régen függ az adott diszk transzlációjától és méretétől is.

Itt lesz a kutya elhantolva. A transzláció onnantól kezdve, hogy az eredeti IBM-féle definíciót kinőtték a diszkek (úgy kb. a 90-es évek elején), nagyjából sem volt szabányosnak tekinthető. És mivel az MBR tartalma eltérő transzlációnál más lett, így az egész szarkupac semmilyen szinten nem volt valójában szabványos. 99%, hogy a posztoló is ezzel szopott. A klasszikus megoldás az volt, hogy üresre gyakni a diszket, bootolni egy Windows telepítőt, onnan partícionálni egyet, visszabootolni Linuxra, és megnézni, hogy mi lett a BIOS-féle transzláció szerinti CHS, és ugyanazt használni.

Vagy kibaszni a kukába minden olyan oprendszert (Windows XP-sek, szevasztok!), ami nem működik jól, ha nem stimmel az MBR-ben a transzláció.

Szevasz!
Itt a Windows XP/SP2 N slipstreamelve. :-D

Disk /dev/sda: 60.0 GB, 60022480896 bytes, 117231408 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
Disk label type: dos

/dev/sda1            2048    16779263     8388608   83  Linux
/dev/sda2        16783200    83885759    33551280    c  W95 FAT32 (LBA)
/dev/sda3        83888128   117231407    16671640    7  HPFS/NTFS/exFAT

Disk /dev/sdb: 1000.2 GB, 1000204886016 bytes, 1953525168 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disk label type: dos

/dev/sdb1            2048    16779263     8388608   83  Linux
/dev/sdb2   *    16779264    83888127    33554432    c  W95 FAT32 (LBA)
/dev/sdb3        83890113  1953525167   934817527+   f  W95 Ext'd (LBA)
Partition 3 does not start on physical sector boundary.
/dev/sdb5        83890176   620761087   268435456    7  HPFS/NTFS/exFAT
/dev/sdb6       620763136  1157634047   268435456    7  HPFS/NTFS/exFAT
/dev/sdb7      1157636096  1694507007   268435456    7  HPFS/NTFS/exFAT
/dev/sdb8      1694509056  1953525167   129508056    7  HPFS/NTFS/exFAT

Disk /dev/sdc: 1000.2 GB, 1000204886016 bytes, 1953525168 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disk label type: dos

/dev/sdc1            2048    16779263     8388608   83  Linux
/dev/sdc2   *    16779264    83888127    33554432    c  W95 FAT32 (LBA)
/dev/sdc3        83888128  1953525167   934818520    5  Extended
/dev/sdc5        83890176   620761087   268435456    7  HPFS/NTFS/exFAT
/dev/sdc6       620763136  1157634047   268435456    7  HPFS/NTFS/exFAT
/dev/sdc7      1157636096  1694507007   268435456    7  HPFS/NTFS/exFAT
/dev/sdc8      1694509056  1953525167   129508056    7  HPFS/NTFS/exFAT
----
CentOS desktop	sda1+sdb1 raid0
CentOS	 		sdc1
Windows XP 1 	sda2
Windows XP 2 	sdb2 (az 1. biztonsági másolata)
Windows XP 3 	sdc2

Az 1. számú XP - amit használok - 2011.01.29-én került fel először. Azóta kb. a 10. helyére költözött néhány diszk és egy alaplap csere miatt. Legutóbb kapott egy ssd-t. Mert jógyerek volt. ;)
Viszem is a kukába! :-D

Ezt a cfdisk is megcsinálja, én erre esküszök. Meg felhasználóbarátabb a felülete, mint a sima fdisk, gfdsik, sfdisk utility-knek. Eddig még minden megparticionált működőre, semmi bajom nem volt vele. A teljes partíciós táblát újraírja, nem csak a friss partíciókat jegyzi be a régi táblába. Épp úgy támogat MBR, GPT, SUN? SGI táblákat, de úgy tudom, hogy a CHS-t is támogatja még, bár ebben nem vagyok biztos, ilyet már régóta nem használok.


No keyboard detected... Press F1 to run the SETUP

de miért lett ez inkonzisztens?

Talán mert nem a megfelelő szoftvert használtad. Nálam az sfdisk és a cfdisk van a toolboxban, és még soha nem volt velük problémám. Ja, és a LILO-t 15+ éve bottal se piszkálom, minimum 3 jobb boot loadert tudok kapásból mondani.

Naaaaa, ne bántsd a Lilo-t! Azt tudja, amit tudni kell!

Azt látja valaki, hogy mi is ezzel a partíciós táblával a hiba?
Használok cfdisk -et, sfdisk -et (szerintem a Debian teleptő is sfdisket használ). Mi a rák baja van?

* Én egy indián vagyok. Minden indián hazudik.

Amit itt látunk azzal semmi, amit LILO lát az MBR-ben az inkozisztens. Mondd meg neki, hogy ne nézzen CHS-t, csak szektort! :D Vagy találj olyan toolt, ami LILO számára elfogadható CHS értékeket ír be.

Azt hiszem értem. Nem gondoltam volna, hogy ennyi év után még mindig van ilyen probléma.

* Én egy indián vagyok. Minden indián hazudik.