A few weeks ago, I created a Sun flar (flash archive) of one T-2000 system, to install on another identical T-2000 system. For more info on creating flars, check out the flarcreate(1M) manual page.
The installation of the flar failed with an error I had never seen:
Processing profile - Opening Flash archive - Validating Flash archive ERROR: Archive does not support this architecture (sun4v) ERROR: Flash installation failed Solaris installation program exited.
Really? These are both T-2000 machines – uname -a output says so. I recreated the flar, and tried the install – with the same result – flash installation failed.
Thanks to this mailing list thread, I found out that this is bug 6523030, and only impacts sun4v architecture. The work-around is to delete the /var/sadm/system/admin/.platform file on the system to be imaged, then recreate the flar. Without the .platform file, the flarcreate command will properly determine the architecture.
If you can not or do not want to recreate the flar from scratch, you can also split the original flar, edit the identification file, then combine the components into a new flar:
- Create a temporary directory, where the flar’s components will be broken out into files. This makes cleanup easier later.
- Split the flar’s components into separate files, with flar split oldfile.flar
- Edit the identification file, and change the “content_architectures” line so that it includes sun4v.
- Create a new flar by combining the components, with flar combine new.file.flar
Looking at the old and new flars. . .
Getting info about my old flar:
root@t-2000 # flar -i *.flar archive_id=4ceac667ee15dc27283b2654a045a1b3 files_archived_method=cpio creation_date=20110118230559 creation_master=t-2000 content_name=t-2000 Sol10 09/2010 Recommended 12/2010 with cluster creation_node=t-2000 creation_hardware_class=sun4v creation_platform=SUNW,Sun-Fire-T200 creation_processor=sparc creation_release=5.10 creation_os_name=SunOS creation_os_version=Generic_142909-17 files_compressed_method=compress content_architectures=sun4c,sun4d,sun4m,sun4u,sun4us,sun4s type=FULL
Notice that content_architectures does not list the architecture of the T-2000 (sun4v), but creation_hardware_class does show sun4v.
Getting info about my new flar:
root@T-2000 # flar -i *.flar archive_id=d2fe659ace201ecc9f07d1ee3fb69cc2 files_archived_method=cpio creation_date=20110119002244 creation_master= t-2000 content_name=t-2000 Sol10 9/2010, cluster 3.2, Recommended 12/2010 creation_node=t-2000 creation_hardware_class=sun4v creation_platform=SUNW,Sun-Fire-T200 creation_processor=sparc creation_release=5.10 creation_os_name=SunOS creation_os_version=Generic_142909-17 files_compressed_method=compress content_author=ifetch content_architectures=sun4v type=FULL
Now, the flar installs properly!