Self Service IT Support Ideas

Mscheid
New Contributor III

Please post any ways you may be using Self Service to automate your IT Support. The one I am looking for specifically was using AppleJack. Someone shared how they used Self Service to Run AppleJack on a client computer. If that is true you could you post how you did it.

Thanks

7 REPLIES 7

donmontalvo
Esteemed Contributor III

I'm compelled to ask, since we've been helping Kristofer test his tool since the earliest versions. Maybe I should say "was" since Kristofer is polling us on whether he should continue development. I hope he does. AppleJack is a command line tool designed to be used in single user mode only. I wasn't aware Self Service ran in Single User Mode. I'm anxious to see any responses. ;)

http://www.applejack.sourceforge.net/

Don

--
https://donmontalvo.com

tlarkin
Honored Contributor

I wrote this script like 5+ years ago for techs in the field to run on Macs for diagnostics. I highly doubt this will still work since I wrote it for like OS X 10.3 I think.

#!/bin/bash

# diagnostics script by tom

selection=
until [ "$selection" = "0" ]; do
    echo ""
    echo "Select an option please"
    echo "1 - Display all objects in /Volumes"
    echo "2 - Display total disk usage of /, this may take a while.  You will be prompted for admin access"
    echo "3 - Display the disk usage of my Home Directory, this may take a while"
    echo "4 - Print the contents of /var/log/system.log"
    echo "5 - List all current users logged in this computer"
    echo "6 - Display my Network Settings and Information"
    echo "7 - Display my BASH command paths"  
    echo "8 - Display all the current running processes"
    echo "9 - Display current resources being used"   
    echo "10 - Display the print error log"
    echo "11 - Display the crash reporter log"
    echo "12 - Run Verify permissions on the boot volume" 
    echo "13 - Run Repair Permissions on the boot volume"
    echo "14 - Run verify volume on the boot volume"
    echo "15 - list all information of boot volume"
    echo "0 - exit program"
    echo ""
    echo -n "Enter selection: "
    read selection
    echo ""
    case $selection in
        1 ) ls -al /Volumes ;;
        2 ) sudo du -h / | sort ;;
        3 ) du -a -h /Users/$USER | sort ;;
    4 ) cat /var/log/system.log ;;
    5 ) finger -h ;;
    6 ) ifconfig ;;
    7 ) echo $PATH ;;
    8 ) ps -A ;;
    9 ) top -s5 20 ;;
       10 ) cat /var/log/cups/error_log ;;
       11 ) cat /var/log/crashreporter.log ;;
       12 ) diskutil verifyPermissions / ;;
       13 ) diskutil repairPermissions / ;;
       14 ) diskutil verifyVolume / ;;
       15 ) diskutil list / ;;
       0 ) exit ;;
       * ) echo "Please enter a valid option"
    esac
done

I suppose you could tie this into self service and have it open terminal and launch the script. I am more interested in remote requests from the user. I have some ideas but haven't had time to develop any plugins yet. My goal is to eventually have a plug in that phones home to your help desk to create a remote session for support. Though not sure where to start just yet.

Bukira
Contributor

i built my own Cocoa App for technical support,

It does an AD check and lists all the users info, show quota and home server address etc etc, it also checks locally date such a computer name, ip address, jamf version, ad, od details, image build, image date etc,

It also does some folder checks for the user and can repair them, can trash certain things such as caches, login keychain, FCP settings,

it then gives them the option to send an email to our support team and add attachments such as screen shots

It then has a technicians area where they can register new mac, register prints, move an mac request so we can update the jss,

Mount a share to upload files, request elevated admin rights and submit a reason why

jarednichols
Honored Contributor

Bukira you give me a great idea :)

Some of our level 1 techs aren't as savvy with the Mac as I'd like. A Self Service plugin that could be clicked on to give the level 1 agent all the pertinent information they need would be awesome. Simple things like hostname, IP address, JAMF binary version...

Thank you sir!

bbergstein
New Contributor III

This is a fantastic idea....lets the L1 guys gather the information they need really easily. This is going to be a project for me tomorrow...

Mscheid
New Contributor III

Have you figured out how to get the L1 info you are wanting?

rmanly
Contributor III

I threw this into Self-Service a long time ago so that end users and techs have a quick place to go to find the IP. It speeds things up on the student machines as the network prefpane isn't available and /Applications/Utilities is restricted etc.

This of course caters to iMacs and Macbooks. We don't have any Airs yet and only 10 or so Mac Pros.

#!/bin/bash

# This simply displays an AppleScript dialog showing the IP addresses of the default Ethernet and Airport interfaces for Macs with only one of each.
# Ryan Manly - ryan.manly@gmail.com - 021910

en0=$(ipconfig getifaddr en0 2>&1)
en1=$(ipconfig getifaddr en1 2>&1)

if [ "$en0" = "get if addr en0 failed, (os/kern) failure" ]; then
    en0="unavailable"
fi


if  [ "$en1" = "get if addr en1 failed, (os/kern) failure" ]; then  
    en1="unavailable"
fi

/usr/bin/osascript << EOF
tell application "Finder"
        activate
        display dialog "Wired IP Address: $en0" & return & "Wireless IP Address: $en1" buttons {"OK"} with icon caution
end tell
EOF

EDIT: just noticed that the "unavailable" assignment doesn't work in Lion because Lion doesn't return the error.