10.8.3 BaseOS issues

hkim
Contributor II

I've created a quick 10.8.3 BaseOS image using Composer to capture it, uploaded it to our distribution point, tried to use Casper Imaging to lay it back down and it gets stuck on "set Name to" and the screen just says Creating jamfHelper...

The image itself works, I can lay it down via Disk Utility and everything seems fine.

Any ideas?

1 ACCEPTED SOLUTION

hkim
Contributor II

I'll add confusion by saying that in this instance, it was my fault the first time around, I must have not captured the OS image properly or something went wrong in the process, but a newly created one using both hand made BaseOS and one made with InstaDMG work just fine.

View solution in original post

11 REPLIES 11

blackholemac
Valued Contributor III

No ideas for your exact problem with Composer building images that are ready to deploy with Casper Imaging, but some thoughts for you that we do...in short, the 10.8.3 update works and was test deployed to some sample machines here but we don't use Composer to build OS images with because I want to keep building them the way we always have:

I actually build our base images using a very simple Apple System Image Utility workflow (basically the default one plus adding some local login accounts). I use a NetRestore image from the App Store OS download. Once SIU spits out the .nbi file, I dig in there and locate the dmg, open that up and inside there is the actual System.dmg would be restored to a client hard drive if you were to use Apple's tools to build an never before booted OS.

For the Recovery Partition, I use a first boot package in my Casper Imaging workflow. For the supression of the Setup Assistant, I have a separate package that runs immediately after the OS is laid down but before first boot.

For OS system settings and customizations for our organization, I use a first boot package with what I call an "Environment setup package" that has a small payload (only our institutional folders with permissions settings and FileVault institutional keys and our default wallpaper) but has a postinstall script that puts down everything like the time zones, ntp servers, ARD client side settings (we have teachers still using it), energy saver settings, startup disk settings, changing login window to name and password, remove certain folders from the user template, turn off fast user switching, setting the software update location, a command to run all software updates from that newly set server, a command to put the App Store in Software Update only mode. I also (in our environment) am asked to give all the users the ability to control their print queues on the local Mac.

In short, I used my method and built the 10.8.3 OS image today and it deploys fine and all of our customizations continue to work. I don't know if Composer needs an update from JAMF maybe to fix a new issue or if maybe you need to update the OS and version of Casper Imaging on your deployment method (I don't know if you use NetBoot or a portable drive to run Casper Imaging on.)

Though I don't know thing Casper Imaging is the problem either because I am totally lazy and haven't updated our NetBoot image for a while to include a newer OS or newer version of Casper Imaging. I plan to do that before our big rollout.

Here's the postflight script for our Environment package if it offers you food for thought. I like these forums because I can take a piece from one post, a piece from another, add my own ideas and build "my solution":

#!/bin/sh
PATH=/bin:/usr/bin:/sbin:/usr/sbin export PATH

# To set variables normally set by the setup assistant
systemsetup -settimezone America/New_York
systemsetup -setusingnetworktime on
systemsetup -setnetworktimeserver "ntpserver.yourdomain.org"
systemsetup -setcomputersleep Never
systemsetup -setdisplaysleep 30
systemsetup -setharddisksleep Never
systemsetup -setwakeonnetworkaccess on
systemsetup -setstartupdisk /System/Library/CoreServices

# activate ARD for whichever local accounts you want
/System/Library/CoreServices/RemoteManagement/ARDAgent.app/Contents/Resources/kickstart -quiet -activate -configure -access -on -users <yourusershere> -privs -all -restart -agent
/System/Library/CoreServices/RemoteManagement/ARDAgent.app/Contents/Resources/kickstart -quiet -configure -access -on -users <yourusershere> -privs -ControlObserve -TextMessages -RestartShutDown -ShowObserve -OpenQuitApps -GenerateReports -restart -agent
/System/Library/CoreServices/RemoteManagement/ARDAgent.app/Contents/Resources/kickstart -quiet -configure -allowAccessFor -specifiedUsers
/System/Library/CoreServices/RemoteManagement/ARDAgent.app/Contents/Resources/kickstart -quiet -configure -clientopts -setvnclegacy -vnclegacy yes
/System/Library/CoreServices/RemoteManagement/ARDAgent.app/Contents/Resources/kickstart -quiet -configure -clientopts -setvncpw -vncpw <yourlegacyvncpasswordhere>
/System/Library/CoreServices/RemoteManagement/ARDAgent.app/Contents/Resources/kickstart -quiet -configure -clientopts -setmenuextra -menuextra yes

# to delete Sites and Public from the User Template
rm -R -f /System/Library/User Template/English.lproj/Sites
rm -R -f /System/Library/User Template/English.lproj/Public
rm -R -f /System/Library/User Template/Dutch.lproj/Sites
rm -R -f /System/Library/User Template/Dutch.lproj/Public
rm -R -f /System/Library/User Template/French.lproj/Sites
rm -R -f /System/Library/User Template/French.lproj/Public
rm -R -f /System/Library/User Template/German.lproj/Sites
rm -R -f /System/Library/User Template/German.lproj/Public
rm -R -f /System/Library/User Template/Italian.lproj/Sites
rm -R -f /System/Library/User Template/Italian.lproj/Public
rm -R -f /System/Library/User Template/Japanese.lproj/Sites
rm -R -f /System/Library/User Template/Japanese.lproj/Public
rm -R -f /System/Library/User Template/Non_localized/Sites
rm -R -f /System/Library/User Template/Non_localized/Public
rm -R -f /System/Library/User Template/Spanish.lproj/Sites
rm -R -f /System/Library/User Template/Spanish.lproj/Public
rm -R -f /System/Library/User Template/ar.lproj/Sites
rm -R -f /System/Library/User Template/ar.lproj/Public
rm -R -f /System/Library/User Template/ca.lproj/Sites
rm -R -f /System/Library/User Template/ca.lproj/Public
rm -R -f /System/Library/User Template/cs.lproj/Sites
rm -R -f /System/Library/User Template/cs.lproj/Public
rm -R -f /System/Library/User Template/da.lproj/Sites
rm -R -f /System/Library/User Template/da.lproj/Public
rm -R -f /System/Library/User Template/el.lproj/Sites
rm -R -f /System/Library/User Template/el.lproj/Public
rm -R -f /System/Library/User Template/fi.lproj/Sites
rm -R -f /System/Library/User Template/fi.lproj/Public
rm -R -f /System/Library/User Template/he.lproj/Sites
rm -R -f /System/Library/User Template/he.lproj/Public
rm -R -f /System/Library/User Template/hr.lproj/Sites
rm -R -f /System/Library/User Template/hr.lproj/Public
rm -R -f /System/Library/User Template/hu.lproj/Sites
rm -R -f /System/Library/User Template/hu.lproj/Public
rm -R -f /System/Library/User Template/ko.lproj/Sites
rm -R -f /System/Library/User Template/ko.lproj/Public
rm -R -f /System/Library/User Template/no.lproj/Sites
rm -R -f /System/Library/User Template/no.lproj/Public
rm -R -f /System/Library/User Template/pl.lproj/Sites
rm -R -f /System/Library/User Template/pl.lproj/Public
rm -R -f /System/Library/User Template/pt.lproj/Sites
rm -R -f /System/Library/User Template/pt.lproj/Public
rm -R -f /System/Library/User Template/pt_PT.lproj/Sites
rm -R -f /System/Library/User Template/pt_PT.lproj/Public
rm -R -f /System/Library/User Template/ro.lproj/Sites
rm -R -f /System/Library/User Template/ro.lproj/Public
rm -R -f /System/Library/User Template/ru.lproj/Sites
rm -R -f /System/Library/User Template/ru.lproj/Public
rm -R -f /System/Library/User Template/sk.lproj/Sites
rm -R -f /System/Library/User Template/sk.lproj/Public
rm -R -f /System/Library/User Template/sv.lproj/Sites
rm -R -f /System/Library/User Template/sv.lproj/Public
rm -R -f /System/Library/User Template/th.lproj/Sites
rm -R -f /System/Library/User Template/th.lproj/Public
rm -R -f /System/Library/User Template/tr.lproj/Sites
rm -R -f /System/Library/User Template/tr.lproj/Public
rm -R -f /System/Library/User Template/uk.lproj/Sites
rm -R -f /System/Library/User Template/uk.lproj/Public
rm -R -f /System/Library/User Template/zh_CN.lproj/Sites
rm -R -f /System/Library/User Template/zh_CN.lproj/Public
rm -R -f /System/Library/User Template/zh_TW.lproj/Sites
rm -R -f /System/Library/User Template/zh_TW.lproj/Public

# to delete Sites and Public from users that you may have created while building your base image
rm -R -f /Users/<yourlocaladmin>/Sites
rm -R -f /Users/<yourlocaladmin>/Public
rm -R -f /Users/<youruserfrombaseimage2>/Sites
rm -R -f /Users/<youruserfrombaseimage2>/Public

# Add everyone (AD and local) to the lpadmin group to administer printers
dseditgroup -o edit -n /Local/Default -u <yourlocaladmin> -P "<yourlocaladminpass>" -a Domain Users -t group lpadmin
dseditgroup -o edit -n /Local/Default -u <yourlocaladmin> -P "<yourlocaladminpass>" -a staff -t group lpadmin

# To turn off fast user switching
defaults write /Library/Preferences/.GlobalPreferences MultipleSessionEnabled -bool NO

# To turn off automatic software update notifications
software update --schedule off

# To set the local software update URL
defaults write /Library/Preferences/com.apple.SoftwareUpdate CatalogURL http://softwareupdateserver.yourdomain.org:8088/index.sucatalog

# To install ALL software updates available from the local software update server for this machine
softwareupdate -i -a

# To enable the App Store in Software Update only mode
defaults write /Library/Preferences/com.apple.appstore restrict-store-softwareupdate-only -bool yes

# To tweak 10.8 for Kerberos login support (similar to the etc/authorization package for Snow Leopard)
cd /private/etc/pam.d
/usr/bin/perl -pi -e 's/auth       optional       pam_krb5.so use_first_pass use_kcminit/auth     optional         pam_krb5.so use_first_pass default_principal/g' authorization
/usr/bin/perl -pi -e 's/auth       optional       pam_krb5.so use_first_pass use_kcminit/auth     optional         pam_krb5.so use_first_pass default_principal/g' screensaver

# To create a link to the User Guides and Documentation
ln -s /Library/Documentation/Applications /User Guides and Documentation

exit 0

nicktong
New Contributor III

@blackholemac

Cool. So, if you'd like, why don't you replace those lines in your Delete Sites & Public block with:

find /System/Library/User Template -type d -maxdepth 2 -name Sites -delete
find /System/Library/User Template -type d -maxdepth 2 -name Public -delete

That way, if Apple adds or removes localizations, it won't require updating the script.

blackholemac
Valued Contributor III

most excellent...that sounds better anyway as I already have had to modify that everytime a localization is tweaked.

Any other ideas are most welcome, but this one will make this script much shorter in length which is always good.

donmontalvo
Esteemed Contributor III

external image link

--
https://donmontalvo.com

acdesigntech
Contributor II

looking more closely through the supported models plist, i do not see imac 13,1 and 13,2... le sigh :( STILL have to have a !@#$% separate dmg for the new iMacs. WTF Apple?

Chris
Valued Contributor

Not all supported models are listed in the SupportedModelProperties array,
see Mr. Neagle's posts here:

https://managingosx.wordpress.com/2013/03/14/10-8-3/

https://managingosx.wordpress.com/2013/03/15/10-8-3-supported-platforms/

ericbenfer
Contributor III

I used to use instaDMG to create an untouched, never booted base image.
Recently I learned about a free tool by FileWave called Lightning.
http://www.filewave.com/index.php/features/lightning

Basically does the same thing as InstaDMG but with a GUI.
This is not an endorsement of FileWave, but it is a nice free tool that may help your workflow.

tkimpton
Valued Contributor II

Hi hkim

im having the same problem with a image made with InstaDMG

It gets stuck at setting the computer name and then i get nil objects error. This is on a MacBookPro9,1

tkimpton
Valued Contributor II

@hkim

What was the last pkg in your build before it got stuck on SetName?

Im trying my build again but with 10.8.2 and im getting the same thing.

hkim
Contributor II

I'll add confusion by saying that in this instance, it was my fault the first time around, I must have not captured the OS image properly or something went wrong in the process, but a newly created one using both hand made BaseOS and one made with InstaDMG work just fine.

tkimpton
Valued Contributor II

thanks hkim

I found out my problem too. On my Admin box i packaged up the latest Casper Suite.

Looking at the logs it falled over because of something within Recon.app

As soon as i took the Casper Suite.pkg out then all is good :)