Hello Stan,

On Mon, Sep 27, 2021 at 08:33:54AM -0600, Stan Johnson wrote:
> Having the above partitioning scheme seems to work ok with GRUB; the
> reason I asked about the "Whole disk" partition is that some
> partitioning tools (specifically fdisk, as I recall), refuse to create
> additional partitions once "Whole disk" has claimed all of the sectors. 

Oh ok, couldn't remember how that was - our Sparks are in Storage since a
few years now.

> In addition, there is an oddity (I think with parted, but I don't recall
> now) where the "Whole disk" partition needed to exist, otherwise the
> partitioner only recognized 1 GB. Perhaps this is related to parted
> complaining during installation that the number of cylinders on the disk
> exceeded the maximum of 65536 cylinders? Maybe parted is reading the
> disk geometry from the third partition on the disk regardless of what's
> there?

No idea.

> So I ended up using this partitioning scheme; note that parted complains
> (but fdisk does not):
> 
> # parted /dev/sda
> GNU Parted 3.4
> Using /dev/sda
> Welcome to GNU Parted! Type 'help' to view a list of commands.
> (parted) print                                                           
> Warning: The disk CHS geometry (562253,255,2) reported by the operating
> system does not match the geometry stored on the disk label
> (17849,255,63).
> Ignore/Cancel? C                                                         
> Model: SEAGATE ST3146807LC (scsi)
> Disk /dev/sda: 147GB
> Sector size (logical/physical): 512B/512B
> Partition Table: unknown
> Disk Flags:
> (parted) quit

Looks to me that parted did not recognize sun disklabel format.

> # fdisk -l /dev/sda
> Disk /dev/sda: 136.73 GiB, 146815737856 bytes, 286749488 sectors
> Disk model: ST3146807LC    
> Geometry: 255 heads, 63 sectors/track, 17849 cylinders
> 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: sun
> 
> Device        Start       End   Sectors   Size Id Type         Flags
> /dev/sda1         0   1048575   1048576   512M  1 Boot        
> /dev/sda2   1060290  17837505  16777216     8G 83 Linux native
> /dev/sda3  17848215  34625430  16777216     8G 83 Linux native
> /dev/sda4  34636140  68190571  33554432    16G 83 Linux native
> /dev/sda5  68195925  70293076   2097152     1G 82 Linux swap      u
> /dev/sda6  70300440 286744184 216443745 103.2G 83 Linux native

The speciality of sun disklabel format is that sda1 contains the boot block
(block 0) of the HD. I somehow misused that in the past to mirror
the boot block in raid1 configurations of sda1. YMMV.

> It appears that SILO and GRUB do something similar -- they appear to be
> installed in the 1024-byte "boot block" of an ext2 filesystem; for more
> information, see this link for ext2 filesystem structure:
> 
> http://www.science.smith.edu/~nhowe/teaching/csc262/oldlabs/ext2.html

Yep, the filesystem needs to leave space for that boot block on (old)
sparc machines on sda1 starting at sector 0. I wonder if there is an historic
explanation for that somehow wicked setup on spark machines:
Originally booting from a tape?

Greetings
  Hermann

Reply via email to