Name | Modified | Size | Downloads / Week |
---|---|---|---|
README.txt | 2015-09-07 | 4.7 kB | |
OSXeveryboot-NetUpkeep.zip | 2015-09-07 | 296.5 kB | |
Totals: 2 Items | 301.2 kB | 0 |
Short: Diagnose corporate network issues at the OSX LoginWindow Author: Mark J Swift Version: 1.0.9 DESCRIPTION: This is an OSX everyboot script (it runs every time the Mac boots). It is aimed at corporate networks and diagnoses simple faults like a disconnected network cable or DHCP, DNS and AD connection issues. Any issues that are found will be displayed within the OSX Login Window message. The script does the following: Waits (a definable length of time) for the network services to be available (DHCP, DNS & AD) Sets the LocalHostName, HostName and ComputerName if neccessary Sets the login screen message to reflect HostName Workstation AD OU path Network issues (if any) Sets Remote Desktop computer info fields to show boot timings and AD OU. The boot timings show how long it took to load DHCP, DNS, AD etc, and the total time it took to boot up. Times are shown in the following format CurrentTimings/AverageTimings. There are some configurable options at the beginning of the script - although these options can be left with the default values. The script sets the hostname using the following method. 1. If the workstation is bound to Active Directory: The workstation will be named using the AD domain name, and the name it had when it was bound. The script uses DHCP option 15 to tell if it is on the AD network. 2. If the workstation is not bound to AD: The workstation will be named using DHCP option 15 (domain name), and the current hostname. If DHCP option 15 is not available, it will be named with a .local domain. INSTALLATION: 1. Download, then double click the file "OSXeveryboot-NetUpkeep.command" 2. Reboot The workstation will initially (at first installation) power off, then on again 4 times in order to calculate the workstations HW delay. The HW delay is the time between powering on, and seeing the Apple Logo. ADDING YOUR OWN CODE: If you want the script to run your own firstboot code, place your script(s) in the folder: /usr/local/gupk/OSXeveryboot-NetUpkeep/OSXeveryboot-NetUpkeep/ ...then set your scripts chown owner to root and chmod flags to 744 Your code additions(s) will be run after the main script. Your script additions should NOT do the following: Rename the workstation. Set the LoginWindow message. Set the computer info for remote management. Load or unload the LoginWindow daemon. Crash. UNINSTALLING: Delete the file /Library/LaunchDaemons/net.sourcefourge.OSXeveryboot-NetUpkeep.plist Reboot Delete the folder /usr/local/gupk/OSXeveryboot-NetUpkeep/ HISTORY: 1.0.9 - 02 SEP 2015 * Changed installation folder (for easy removal). * PrefVars are now stored in a plist file at the following location: /Library/Preferences/SystemConfiguration/net.sourcefourge.gupk/OSXeveryboot-NetUpkeep/ * Changed DNS test function * Renamed project from gupk-OSXfirstboot to OSXeveryboot-NetUpkeep (which better describes its purpose) 1.0.8 - 26 AUG 2015 * PrefVars are now stored in a plist file at the following location: /Library/Preferences/SystemConfiguration/net.sourcefourge.gupk/ * Many variable names changed for consistancy and readability * The ARD computerinfo fields are now set outside of the launchctl load/unload section * The LoginWindow is no longer delayed via launchctl load/unload. This is because I find that delayng the login window is less stable in OSX 10.10.5. launchctl load/unload is now only used to refresh the login window when there is an error to report. 1.0.7 - 8 JUL 2015 * Added AD health check message * Updated documentation. * Updated screengrabs 1.0.6 - 7 JUL 2015 * Added Captive Network (Websheet) messages * Added firstboot additional script folder "gupk-osxfirstboot" * Updated screengrabs 1.0.5 - 28 JUN 2015 * Added DHCP error message * Uses "sysctl kern.boottime" to find boottime. * Only shows the network status if theres an issue (configurable) * Sets Remote Desktop computer info fields to show network timings and AD OU. * Calculates average timings as well as current timings. * Updated screengrabs 1.0.4 - 15 JUN 2015 * Message fix for when no IP address found. * Updated the screengrabs. 1.0.3 - 14 JUN 2015 * scutil parse functions handle colons in record names and values better. * Sets the active startup disk to be the booted OS volume. * Sets the computer info for remote management. 1.0.2 - 11 JUN 2015 * Version 1.0.1 was a disabled debug version. Version 1.0.2 works. * Double-click easy install added. * Added to the documentation. 1.0.1 - 04 JUN 2015 * First release. Tidied up my scripts (a little) so I could release them to the wild.