Home Forums Software InstaDMG Server Imaging with InstaDMG

Viewing 7 posts - 1 through 7 (of 7 total)
  • Author
    Posts
  • #374823
    alantrewartha
    Participant

    Not having a lot of initial luck with this.

    First off I tried renaming my install disk DMG from “Mac OS X Server Install Disc.dmg” to “Mac OS X Install DVD.dmg” (as required by the script), then i tried editing the script to accept the original name.

    both times the result is incomplete. the image cache it creates is way too small (186M compared to the succesfull client imagecaches always over a GB. mostly due to design app installs, but still that’s way too small – should be at least 1GB right?)

    when i naively mount the asr-ready image the applications in the /applications folder are generic

    and of course when i restore the image (using bombinch NBR) i get a useless disk, flashing folder, no system found.

    am i missing some initial step? or have i just imagined that people are using instadmg for server imaging?

    #374824
    alantrewartha
    Participant

    OMG just noticed the switch

    -s Enable MacOS X Server installs (not implimented)

    and the SERVER_INSTALL flag in the main script that’s laargely unused.

    so has anyone had any success making a server version?

    #374825
    alantrewartha
    Participant

    (excuse me using this forum/post as a notepad)

    i had some modest success following through the important steps in the instadmg script executing them manually. my first attempt was installerchoices free and only the base image, but at least i can get a working server NBRd very fast with this image.

    i already had the server install disk as a DMG so here’s what i executed (all as root) with some comments

    [code]# temporary mountpoint for the install disk
    CURRENT_OS_INSTALL_MOUNT=`/usr/bin/mktemp -d “/tmp/instaDMGMount.XXXXXX”`

    # ok mount the virtual install disk DMG at the temporary mountpoint we just made
    /usr/bin/hdiutil mount “Mac OS X Server Install Disc.dmg” -readonly -mountpoint “$CURRENT_OS_INSTALL_MOUNT”

    # now setup a scratch sparseimage – i’m not following the logic exatly here, perhaps it could be simpler
    SCRATCH_FILE_LOCATION=`/usr/bin/mktemp “/tmp/instaDMGTemp.XXXXXX”`
    mv “$SCRATCH_FILE_LOCATION” “$SCRATCH_FILE_LOCATION.sparseimage”
    SCRATCH_FILE_LOCATION=”$SCRATCH_FILE_LOCATION.sparseimage”

    # start a basic 300GB image, attach it, set it to GPT format (as i am on an intel mac) and then eject it (not sure why that last step)
    /usr/bin/hdiutil create -ov -size 300g -type SPARSE -fs HFS+ “$SCRATCH_FILE_LOCATION”
    /usr/bin/hdiutil attach “$SCRATCH_FILE_LOCATION”

    # check what /dev this disk appears at and use it in these next steps
    /usr/sbin/diskutil eraseDisk “Journaled HFS+” uuidgen GPTFormat /dev/disk4
    /usr/bin/hdiutil eject /dev/disk4

    # another temporary mount point for our sparseimage?
    CURRENT_IMAGE_MOUNT=`/usr/bin/mktemp -d “/tmp/instaDMGMountInter.XXXXXX”`
    /usr/bin/hdiutil mount “$SCRATCH_FILE_LOCATION” -noverify -mountpoint “$CURRENT_IMAGE_MOUNT”

    # DO THE INSTALL AT LAST (very basic here) in to the mounted sparsimage (language EN)
    /usr/sbin/installer -verbose -pkg “$CURRENT_OS_INSTALL_MOUNT/System/Installation/Packages/OSInstall.mpkg” -target “$CURRENT_IMAGE_MOUNT” -lang “en”

    # i ran the other ‘clean up lines’ in the instadmg script at this point, but nothing substantial needed doing
    # so just delete the Extensions.mkext
    rm -vf “$CURRENT_IMAGE_MOUNT/System/Library/Extensions.mkext”

    # rename the disk (why not) and eject
    /usr/sbin/diskutil rename “$CURRENT_IMAGE_MOUNT” “InstaDMG”
    /usr/bin/hdiutil eject “$CURRENT_IMAGE_MOUNT”

    # just following the script here to make the ASR image
    /usr/bin/hdiutil convert -ov -puppetstrings -format UDZO -imagekey zlib-level=6 -o leopard_server.dmg “$SCRATCH_FILE_LOCATION”
    /usr/sbin/asr imagescan –verbose –source leopard_server.dmg

    # eject the disk
    /usr/bin/hdiutil eject “$CURRENT_OS_INSTALL_MOUNT”
    [/code]

    and then we need to tidy up tmp mount points and so on. but meanwhile i ended up with a working 4.6GB DMG and it restored to a mac ok.

    hurray.

    HTH someone else out there – or the instadmg code bods

    #374829
    alantrewartha
    Participant

    i had another successful go, this time using an -applyChoiceChangesXML for the main install (get rid of languages, printer drivers etc) a combo update via

    /usr/sbin/installer -verbose -pkg MacOSXServerUpdCombo10.5.5.pkg -target “$CURRENT_IMAGE_MOUNT”

    plus some other pkgs:

    SecUpdSrvr2008-007.pkg
    RemoteDesktopClient.pkg (the 322 update)
    clearReg.pkg (haven’t checked to see if this is actually needed yet)
    createUser.pkg
    activate_ssh_ard.pkg (my own pkg i think)
    stop_NBR_error.pkg (er ditto – stops an error caused by restoring too quickly on NBR)

    all coming in under 4GB dmg. and it’s working perfectly so far.

    #374830
    mleacy
    Participant

    This will be very valuable to me. Thanks for posting.

    #374841
    mleacy
    Participant

    Re: stop_NBR_error.pkg

    What error were you encountering, and what did you do with this package to stop it?

    Thanks in advance!

    #374856
    alantrewartha
    Participant

    http://forums.bombich.com/viewtopic.php?t=12274

    it’s just doing this

    [code]touch “$3″/Library/Preferences/SystemConfiguration/preferences.plist[/code]

    to stop the interruption you get before NBR post-actions run that says “i can’t tell what system version this is”.

    it’s not (as i suggested, up thread) to stop “… an error caused by restoring too quickly on NBR”. that’s a separate issue fixed in the NBI.

Viewing 7 posts - 1 through 7 (of 7 total)
  • You must be logged in to reply to this topic.

Comments are closed