Skip to main content

I followed to a T the instructions creating a minimal netinstall image and captured it using Composer, then used SIU to create the netboot image. I also enabled diskless netboot for the NBI. When I boot to it and launch Casper Imaging the selected configuration immediately fails when it tries to block copy the image with the NilObjectException error.



I verified this does not occur when running the same job booted to an external drive with Lion installed, so it apparently is rooted in the netboot image I made. I am not sure what the issue could be because as I said I followed the steps exactly as provided by the knowledge base. I have a vague sense it may be a read/write error but composer does not allow you to specify that IIRC.



Any ideas? I have a support ticket open but the thought is because it is the NBI I may be on my own.

Upon further inspection, I discovered that when I authenticate to Casper imaging after NetBooting it it not mounting the JSS share. It is reading configuration files obviously, because I can choose them and do a custom one as well. Any ideas as to what might cause this?



More edits:



Is the JSS Share even supposed to mount when you launch the Casper Imaging app?



The Casper share is a Windows share which is hidden, and I suspect that may have something to do with it. Or, at least the share configuration.


Any ideas? I am dying here. :(


Don't believe you'll see the CasperShare even if things are running properly. However, it should mount once you hit 'Start', then you can use terminal to view the contents - open /Volumes/CasperShare.



On the NilObjectException Errors - I'd want to verify root auto logs in on your netboot set.


How did you create the NetBoot?



Also, can you mount the CasperShare manually whilst NetBooted?


I had the same strange thing yesterday at the end stages of imaging. I checked the NetBoot clients and it wad pointing to a different place! As soon as I corrected it, stopped and restarted NetBoot services all seemed ok.



I've also found problems with smb shares. For the master I use afp local disk and just replicate to a smb share for back up purposes. Hope that helps


The Netboot image was created manually per part 2 of this KB article:



https://jamfnation.jamfsoftware.com/article.html?id=63



I will try to see if I can mount the share manually.


I am happy to report the fix to this, thanks to Jamf support.



It seems we locked down our services too much on the netboot server. AFP specifically was restricted to only two admin users, which was what was generating the error. Once we opened AFP up to everyone it worked.


I had the same issue but have resolved it by running Casper Imaging as the root user before taking a snapshot of the image. I can now run Casper imaging as the main admin user or as root from the Netboot image. I think the preference file needs to be written properly to /var/db before the image snapshot is taken.


I had this issue and resolved by ensuring that "Diskless" was checked on my NBI on the netboot server.


Does anyone know why this is happening? Everyone seems to have different answers for why this is happening. Mine all the sudden started shooting this message at me yesterday after I have imaged a few macs with no issues at all.


I think I found the solution. I unchecked... "Reboot" and Netboot is working fine. Interesting.


Jumped the gun. It actually installed the OS but refused to install any packages. Just can't win!


Matt,



Hang in there all I can say, that beside the NilObjectException issues, I am getting ready to use 8.6 in production!!!


I am not sure NilObjectException issue is a Jamf thing, I am having issue with DiskUtility and dislkutil (CLI) un-mounting drives.



Can't unmount "Macintosh HD" Make sure all apps and files are closed on this disk.


I'm also getting NilObjectExceptions, but only on MacBook Airs.



I can NetBoot and run Casper Imaging on an SSD iMac and a regular MacBook Pro, but on the two Airs I've tested, Macintosh HD won't unmount.


Everything was working fine for me until just a few minutes ago when this error message occurred. It seems to be very sporadic. I can't track down the cause.


I got this error in December while running 8.6. JAMF support suggested recreating the netboot image as corruption can occur on the netboot file. So I did that early January. Netboot image is working again of course as expected after rebuilding it from scratch. Updated to 8.63. Netboot image still working fine until last week. I once again was getting the error. Prior to the error popping up, I first noticed that the imaging process will follow the image configuration but will not install the last half of the apps. It will end the imaging somewhere in the middle and Casper Imaging will quit. JAMF logs will show that imaging completed successfully. No changes made to the netboot image, no changes made to the configuration image, but this symptom eventually developed to the NilObjectException error. I am rebuilding netboot images almost every month.


I'm running into the same error since yesterday and i've done pretty much everything JAMF has suggested and still not able to get my netboot image to work. Anybody else has other suggestions? i'm running out of options here :(


I'm in the same spot as Jpcorzo and I'm running 8.7. I'm running diskless and AFP is checked.


I would contact jamf support. They would probably have a list of things to go through and check.




  1. Check the NetBoot share permissions


  2. Check AFP is being used


  3. Try unticking the disk less applying and tick it again and apply


  4. All else fails you may need to recreate you NetBoot image.



I saw this issue today after I cloned the boot drive of my netboot server to a secondary drive in the server. To resolve it I had to open Server.app -> NetInstall -> Settings -> Edit Storage Settings and make sure only the boot drive had 'Images & Client Data' selected. I changed the secondary drive to 'None'


I had the same issue and it seems to have stopped for now. I'll give you the troubleshooting steps JAMF gave me:




  1. In previous cases we have seen this error in conjunction with AFP not being available for all users on the server. On the server edit your AFP service to reflect this.


  2. After we have AFP enabled on the server, but we also want to make sure the users have access to the File Sharing service as well as the NetBoot service.
    To enable this on a 10.8 server:
    Go to Server.app > View > Show System Accounts > Users > Scroll down and select all of the netbootXXX users > Gear Icon > Edit Access to Services... > Check File Sharing
    The Utah article is a great place to start, please keep me posted on whether it yields better results!


  3. On the server, we would like the NetBootClients0 folder to be enabled as a Share Point on the Server. Clients that boot to the server need to write shadow files to this folder in order to run diskless.


  4. The server identity verification presents itself because we are likely using the Built-In CA and web certificate generated by the JSS. This is the same as navigating to the JSS URL on a machine that is not enrolled in the JSS. When we saved the JSS URL in Imaging, there should have been a checkbox that would help us bypass this prompt.




If the Error still exists here are some additional troubleshooting resources:
1. While netbooted (and before imaging), let's open Terminal and run the following command:
mount
Please send over the feedback we get from this.




  1. Take a look at this article, although the name says 10.6 it is still valid for 10.8 compare this workflow and pull recommendations from it!
    http://tinyurl.com/bovg5j7


  2. Search the NilObjectException Error on jamfnation.com and reference discussions that may match your workflow!



Ok so my issue seems to have stopped. the following article has the steps to modify the rc.netboot file on the .dmg locate in the .nbi folder



http://www.macos.utah.edu/documentation/administration/setup_netboot_service_on_mac_os_x_10.6.x_client.x_client/setup_netboot_service_on_mac_os_x_10.6.x_client-diskless_netboot.html



At first i tried copying and pasting each part of the script (bad idea) until i realize they had an actual download link. go ahead and rename your current rc.netboot and paste this new one. make sure you remove the .sh extension and keep the .netboot. hopefully it works for you guys.


Possible fix based 10.9.3 & JSS 9.3.x and may work for lower OSX Server versions?



Well after looking through everyone’s comment here, I know longer have any NilObjectException Errors during Netbooting / Imaging



This how I fixed my servers:



1) All Netboot users to have File Sharing Access only! That’s system accounts from netboot100 to netboot149



See them via the Server app – top menu:
Views, then select Show System Accounts and scroll down to the first netboot100 (you can select all the accounts at once) Then change the access via the cogwheel bottom of the dialog.



2) Make the NetbootClients0 share have Read/Write to everyone!
I.e. path if using the default location /Library/NetBoot/NetbootClients0/



That’s it…



So far I’ve Net booted over 30 times with different Macs on two different subnets and every Netboot / install has worked perfectly.



I hope that helps?


This issue is soooooo absurd....really, it drives me crazy!



For me it just happens with MacBook Pro's....everything works fine on MacBook Air's as well as iMac's. I almost tried everything. Also created a whole new .nbi just for the MacBook Pro's. Isn't there anything specific to get this solved. Otherwise go back to the roots and just use a .dmg which you lay down on the Mac HD via DiskUtility and the Recovery HD using FireWire or Thunderbold HardDrives.



Cheers!


Reply