Crashplan Code42 6.5.2


Hey Guys!

I have followed @spreston's method of deploying CrashPlan in a Self Service policy

However even when using the which does contain the URL specified, after launching the App, it does know the username, but still asks for the Server Address.

Does anyone know how to complete the autofill for the Server Address portion?459485cfbbf54628b091200ca0d32647


New Contributor III

The file is in the right place on the local workstation, correct?


Hey Scott!

I had saved the file in Library/Application Support/CrashPlan/ . The priority on that is also set to 8. The Crashplan installer is set to default at 10.


New Contributor III

Hmm. I have seen this happen before. Did you have any other customization in place, such as logo, etc.? Was this a fresh install or re-install, upgrade in place?


Nope. This is a fresh install as we are planning to introduce CrashPlan!

New Contributor III

OK, that's definitely weird. One other question, you're not trying this on the same computer that you used to build the packages, right?

I'd also look in your Jamf logs to make sure the custom file was run before the app installer (although you said the priorities were set).


Yeah, this was captured from a clean system, then deployed to another completely system. It did run the package first, and then ran the CrashPlan installer.

I was also chatting with someone in the macadmins jamfnation slack channel about this to see if there are any solutions. I also did notice that upon first time installing, it does get stuck on the "Connecting..." screen for a while.

Contributor III

Do you have a "deployment" setup in the CrashPlan console? Starting with v6.5 they completely changed how things work... Worth checking out at least. :)



@mbezzo Just got my Code42 access. I'm an admin in the console, but dont see a "deployment" setup

New Contributor III

This is what I see in my console. If you don't have all these tabs on 6.5 server then you may be missing a permission?

New Contributor III

@kquan did you come right here in the end?


@Daikonran hey! Sorry guys for not updating!

I worked with CrashPlan support and they gave me a script to run that autofills the user's email address and due to us using ADFS(microsoft shop) they need to verify 2FA after logging on. After logging in everything works as expected!

New Contributor II

@Daikonran what is the script that you are using that autofills the user's email address?


Contributor II

Code 42 supplies a script that pulls the email address from the Users section of Jamf Pro. For one of our MSP clients this doesn't work since they don't use AD or LDAP nor the Users component of Jamf Pro.

I re-wrote the script that Code 42 had provided so it gets the computer serial number, then gets the computer's JSS ID, then pulls an email address that is manually entered in the User and Location record of the computer's inventory. This is an email address that we manually enter. If the email address is blank in the inventory, then it will display a prompt for the user to enter their work email address, which is then passed on with the script. You of course have to add your correct API user credentials and the JSS URL to the script, which is then used in the Deployment Policy in Code 42.


username=$(/bin/ls -l /dev/console | /usr/bin/awk '{ print $3 }')
user_email=$(curl -X GET -sku $jssUser:$jssPass -H "Accept: application/xml" $jssUrl/JSSResource/users/email_address/$username | xpath /user/email_address 2>/dev/null | sed -e 's/<email_address>//' | sed -e 's/</email_address>//')
#this will get me just the serial number
serialNumber=$(system_profiler SPHardwareDataType| awk '/Serial Number/{print $4}')

#sanity check
#echo $serialNumber

#use API to get computer ID
computerID=$(curl -sku $jssUser:$jssPass -H "Accept: application/xml" $jssUrl/JSSResource/computers/serialnumber/"$serialNumber" | xmllint --xpath 'computer/general/id/text()' -)

#sanity check
#echo $computerID

#use API to get username
user_email=$(curl -sku $jssUser:$jssPass -H "Accept: application/xml" $jssUrl/JSSResource/computers/id/"$computerID"/subset/User%2540Location | xmllint --xpath 'computer/location/email_address/text()' -)
#echo $user_email

ask () {
        osascript <<EOF - 2>/dev/null
        tell application "SystemUIServer"
        text returned of (display dialog "$1" default answer "")
        end tell

if [ -z "$user_email" ]; then
    name=$(ask 'IMPORTANT!!! CRASHPLAN needs your company email address to complete the installation, please fill it in to continue. Please DO NOT close this window without entering your company email address: ')
    echo "C42_USERNAME=$name"
    echo "C42_USER_HOME=$(dscl . -read "/users/$username" NFSHomeDirectory | cut -d ' ' -f 2)"
    echo "C42_USERNAME=${user_email}"
    echo "C42_USER_HOME=$(dscl . -read "/users/$username" NFSHomeDirectory | cut -d ' ' -f 2)"