On Wed, Sep 16, 2009 at 04:09:19PM -0700, Vikram Hegde wrote:
> Actually when newboot i.e. GRUB boot was introduced we did away with the
> requirement that root slice needs to have the "root" tag and I booted
> Solaris all the time without the root tag. AFAIK this is still true with
> SXCE. I dont know if beadm (or Opensolaris) has reintroduced this
> requirement.
pygrub requires it (see below). If I don't have the tag, how do I know
which slice contains the root?
regards
john
def get_solaris_slice(file, offset):
"""Find the root slice in a Solaris VTOC."""
buf = fsimage.get_disk_data(file, (offset + (DK_LABEL_LOC * SECTOR_SIZE)),
512)
if struct.unpack("<H", buf[508:510])[0] != DKL_MAGIC:
raise RuntimeError, "Invalid disklabel magic"
nslices = struct.unpack("<H", buf[30:32])[0]
for i in range(nslices):
sliceoff = 72 + 12 * i
slicetag = struct.unpack("<H", buf[sliceoff:sliceoff+2])[0]
slicesect = struct.unpack("<L", buf[sliceoff+4:sliceoff+8])[0]
if slicetag == V_ROOT:
return slicesect * SECTOR_SIZE
raise RuntimeError, "No root slice found"
_______________________________________________
xen-discuss mailing list
[email protected]