From  Inventory  to  Ctrl-Alt-Del Hamilton College Clinton, NY
Hamilton College Desktop Integration Support <ul><li>Gretchen Maxam </li></ul><ul><li>Desktop Integration Specialist – Ima...
History <ul><li>Existing Inventory System </li></ul><ul><ul><li>Computer Serial Number </li></ul></ul><ul><ul><li>License ...
History <ul><li>When XP arrived </li></ul><ul><ul><li>Needed to provide unique name to computer </li></ul></ul><ul><ul><li...
Overview of Environment <ul><li>Academic Facilities </li></ul><ul><ul><li>9 ITS Managed Labs  </li></ul></ul><ul><ul><ul><...
Overview of Environment <ul><li>6 Academic Images </li></ul><ul><ul><li>3 Windows </li></ul></ul><ul><ul><li>3 Macintosh <...
Ease of Imaging <ul><li>Get Hamilton Barcode(s) </li></ul><ul><li>Locate machine(s) in Inventory  </li></ul>
Ease of Imaging Equipment Information
Ease of Imaging Users Tab
Ease of Imaging Software Tab
Ease of Imaging Function Tab
Ease of Imaging
Ease of Imaging
Ease of Imaging
 
Ease of Imaging <ul><li>Group Reimage </li></ul><ul><ul><li>Edit psexec command </li></ul></ul><ul><ul><li>Schedule Task <...
How do we get here?
REBOOT first_boot.cmd Full File on Page 1 of Supplement
first_boot.cmd <ul><li>Script that runs on ‘first boot’ </li></ul><ul><li>Cleans up ‘loose ends’ after imaging process </l...
first_boot.cmd <ul><li>Cleans up ‘loose ends’ after imaging process (cont’d) </li></ul><ul><ul><li>Sets ‘Computer Descript...
first_boot.cmd <ul><li>Changes local account passwords </li></ul><ul><li>net user  <username> <new_password> </li></ul><ul...
first_boot.cmd <ul><li>Performs Registry Edits - Delete Keys </li></ul><ul><li>reg DELETE  <KeyName> <options> </li></ul><...
first_boot.cmd <ul><li>Performs Registry Edits - Change Permissions (Citrix Web Client) </li></ul><ul><li>regini  <input_f...
first_boot.cmd <ul><li>Re-installs anti-virus software (Sophos) </li></ul><ul><li>msiexec  <path_to_msi> <options> </li></...
first_boot.cmd <ul><li>Edits folder permissions </li></ul><ul><li>cacls  <filename> <options> </li></ul><ul><li>cacls &quo...
first_boot.cmd <ul><li>Hides service partition </li></ul><ul><li>diskpart /s  <diskpart_script> </li></ul><ul><li>diskpart...
first_boot.cmd <ul><li>Restarts computer </li></ul><ul><li>shutdown  <options> </li></ul><ul><li>shutdown -r -f -t 5 </li>...
first_boot.cmd <ul><li>Deletes itself </li></ul><ul><li>del  <files or directories> </li></ul><ul><li>del c:Managementfirs...
REBOOT first_boot.cmd REBOOT Sysprep Full File on Page 2 of Supplement
Sysprep <ul><li>minisetup - w/ sysprep.inf ‘answer’ file </li></ul><ul><ul><li>PnP device installation  </li></ul></ul><ul...
Sysprep <ul><li>PnP device installation </li></ul><ul><li>[Unattended] </li></ul><ul><li>UpdateInstalledDrivers=Yes </li><...
Sysprep <ul><li>Product Key </li></ul><ul><li>[UserData] </li></ul><ul><li>ProductID=ABCDE-12345-FGHIJ-67890-KLMNO </li></ul>
Sysprep <ul><li>Sets Administrator password & computer name </li></ul><ul><li>[GuiUnattended] </li></ul><ul><li>AdminPassw...
Sysprep <ul><li>Joins domain </li></ul><ul><li>[Identification] </li></ul><ul><li>JoinDomain=hamilton.edu </li></ul><ul><l...
Sysprep <ul><li>Calls first_boot.cmd </li></ul><ul><li>[GuiRunOnce] </li></ul><ul><li>Command0() = &quot;%systemdrive%/Man...
REBOOT first_boot.cmd Sysprep REBOOT Download Image REBOOT
Downloading the Image <ul><li>Three parts </li></ul><ul><ul><li>Boot into WinPE </li></ul></ul><ul><ul><li>Run download_pr...
Downloading the Image <ul><li>PART 1 </li></ul><ul><li>Boot into WinPE </li></ul><ul><ul><li>located on 5GB ‘service’ part...
Downloading the Image <ul><li>PART 2 </li></ul><ul><li>download_production_image.cmd </li></ul><ul><ul><li>called by start...
Downloading the Image <ul><li>PART 2 : download_production_image.cmd </li></ul><ul><li>Maps drives </li></ul><ul><li>net u...
Downloading the Image <ul><li>PART 2:  download_production_image.cmd </li></ul><ul><li>Sets variables </li></ul><ul><li>fo...
Downloading the Image <ul><li>PART  2: download_production_image.cmd </li></ul><ul><li>Starts VNC server </li></ul><ul><li...
Downloading the Image <ul><li>PART 2 : download_production_image.cmd </li></ul><ul><li>Runs machine specific ghost.cmd </l...
Downloading the Image <ul><li>PART 3 </li></ul><ul><li>machine specific ghost.cmd </li></ul><ul><ul><li>downloads appropri...
Downloading the Image <ul><li>PART 3 : ghost.cmd </li></ul><ul><li>Runs Ghost32.exe command </li></ul><ul><li>ghost32 -clo...
Downloading the Image <ul><li>PART 3 : ghost.cmd </li></ul><ul><li>Sets boot disk </li></ul><ul><li>diskpart /s diskpart_s...
Downloading the Image <ul><li>PART 3 : ghost.cmd </li></ul><ul><li>Outputs logging info </li></ul><ul><li>echo I was image...
Downloading the Image <ul><li>PART 3 : ghost.cmd </li></ul><ul><li>Copies files & reboots </li></ul><ul><li>mkdir w:Manage...
Inventory System   Behind the Scenes
Inventory System   Behind the Scenes <ul><li>Scripts  used to “format” data   </li></ul><ul><li>Plug-in creates: </li></ul...
Inventory System   Behind the Scenes   AddComputerToAD
<ul><li>Information from the Inventory record </li></ul><ul><li>Computer Barcode to create part of the name </li></ul><ul>...
Inventory System     AddComputerToAD <ul><ul><li>strComputer = &quot; pc-barcode &quot; </li></ul></ul><ul><ul><li>strComp...
Inventory System  Behind the Scenes AddComputerToAD
Inventory System  Behind the Scenes AddComputerToAD
Inventory System  Behind the Scenes AddComputerToAD
Inventory System   Behind the Scenes Prep Button
Inventory System   Behind the Scenes Prep Button <ul><li>Information from the Inventory record is used to create: </li></u...
Inventory System   Behind the Scenes Prep Button
Inventory System   Behind the Scenes Prep Button
Inventory System   Behind the Scenes Prep Button <ul><li>Sysprep answer file with specific data </li></ul><ul><li>Admin Pa...
Inventory System  Behind the Scenes Prep Button <ul><li>Sysprep answer file </li></ul><ul><li>[GuiUnattended] </li></ul><u...
Inventory System  Behind the Scenes Prep Button <ul><li>Sysprep answer file   </li></ul><ul><li>[UserData] </li></ul><ul><...
Inventory System  Behind the Scenes Prep Button <ul><li>Sysprep answer file </li></ul><ul><li>[Identification] </li></ul><...
Inventory System   Behind the Scenes Prep Button
Inventory System   Behind the Scenes Prep Button <ul><li>Ghost.cmd file with specific data </li></ul><ul><li>Image name </...
Inventory System  Behind the Scenes Prep Button <ul><li>Ghost.cmd   page # of handout </li></ul><ul><li>:: run ghost comma...
Inventory System   Behind the Scenes Prep Button <ul><li>First_Boot.cmd with specific data </li></ul><ul><li>Local User Pa...
Inventory System   Behind the Scenes Prep Button <ul><li>First_boot.cmd page # of handout </li></ul><ul><li>:: using net u...
Inventory System   Behind the Scenes Re-image Button
Inventory System  Behind the Scenes Re-image Button <ul><li>Startimage.cmd </li></ul><ul><li>psexec pc-barcode  -s c:manag...
Inventory System  Behind the Scenes Remote Desktop Button
Inventory System  Behind the Scenes Remote Desktop Button <ul><li>Remote.rpd </li></ul><ul><li>screen mode id:i:1 </li></u...
Inventory System  Behind the Scenes Update Image Log Button
Network Directory Structure
Network Directory Structure “Commands” Directory
Network Directory Structure “Data” Directory
Network Directory Structure Inside “Data” Directory
Network Directory Structure “Logs” Directory
Network Directory Structure “Tools” Directory
<ul><li>COREUTILS http://gnuwin32.sourceforge.net/packages.html </li></ul><ul><li>GAWK  </li></ul><ul><li>http://gnuwin32....
<ul><li>Ghost </li></ul><ul><li>http://www.symantec.com/enterprise/ </li></ul><ul><li>FileMakerPro </li></ul><ul><li>www.f...
Conclusion <ul><li>Building Blocks </li></ul><ul><ul><li>Keep adding </li></ul></ul><ul><ul><li>Can modify and add to scri...
Conclusion <ul><li>Apply what we have to other systems </li></ul><ul><ul><li>Use for Faculty and Admin computers </li></ul...
Next Steps <ul><li>PXE boot </li></ul><ul><li>WinPE2 </li></ul><ul><li>Add application installers  </li></ul><ul><li>Creat...
Next Steps <ul><li>Vista </li></ul>
Thank you! Questions?
Upcoming SlideShare
Loading in …5
×

Automated Imaging: From Inventory to CTRL-ALT-DELETE

538 views

Published on

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
538
On SlideShare
0
From Embeds
0
Number of Embeds
3
Actions
Shares
0
Downloads
3
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide
  • /v = VALUE, as in the value pkc /f = FORCE
  • [1 5 7 13 17] is an ACL that sets write permissions for all users
  • Reinstalls Sophos using cached msi
  • cacls = change access control list E = Edit ACL instead of replacing it T = Recursion (the file specified and all files within it) G = Grant user:permissions, Everyone:Full
  • diskpart is an interactive command, so we have to specify an input script in order for it to perform actions automatically
  • f = force r = reboot t = time in seconds
  • f = force r = reboot t = time in seconds
  • hardware agnostic 32-bit environment standard XP drivers
  • from the startnet.cmd inside the core of WinPE. startnet.cmd download_production_image resides on server, system-wide changes from single point
  • from the startnet.cmd inside the core of WinPE
  • from the startnet.cmd inside the core of WinPE
  • from the startnet.cmd inside the core of WinPE
  • from the startnet.cmd inside the core of WinPE
  • from the startnet.cmd inside the core of WinPE. startnet.cmd download_production_image resides on server, system-wide changes from single point
  • from the startnet.cmd inside the core of WinPE
  • from the startnet.cmd inside the core of WinPE
  • from the startnet.cmd inside the core of WinPE
  • from the startnet.cmd inside the core of WinPE
  • Automated Imaging: From Inventory to CTRL-ALT-DELETE

    1. 1. From Inventory to Ctrl-Alt-Del Hamilton College Clinton, NY
    2. 2. Hamilton College Desktop Integration Support <ul><li>Gretchen Maxam </li></ul><ul><li>Desktop Integration Specialist – Imaging Support </li></ul><ul><li>[email_address] </li></ul><ul><li>Jesse Thomas </li></ul><ul><li>Desktop Integration Specialist – Academic Facilities </li></ul><ul><li>[email_address] </li></ul><ul><li>Dan Sloan </li></ul><ul><li>Installation Specialist </li></ul><ul><li>[email_address] </li></ul>
    3. 3. History <ul><li>Existing Inventory System </li></ul><ul><ul><li>Computer Serial Number </li></ul></ul><ul><ul><li>License </li></ul></ul><ul><ul><li>User Name, Location </li></ul></ul><ul><ul><li>Software </li></ul></ul><ul><li>Used Ghost </li></ul><ul><li>Win98 </li></ul>
    4. 4. History <ul><li>When XP arrived </li></ul><ul><ul><li>Needed to provide unique name to computer </li></ul></ul><ul><ul><li>Add to Domain </li></ul></ul><ul><ul><li>Provide proper license to activate </li></ul></ul><ul><li>Added Sysprep </li></ul><ul><ul><li>“ Fed” it with unique data from Inventory DB </li></ul></ul><ul><li>“ Pre-Create” computer objects in AD </li></ul><ul><li>and on and on… </li></ul>
    5. 5. Overview of Environment <ul><li>Academic Facilities </li></ul><ul><ul><li>9 ITS Managed Labs </li></ul></ul><ul><ul><ul><li>68 Windows </li></ul></ul></ul><ul><ul><ul><li>71 Macintosh </li></ul></ul></ul><ul><ul><li>49 TE Classrooms </li></ul></ul><ul><ul><ul><li>34 Windows & Macintosh </li></ul></ul></ul><ul><ul><ul><li>15 Macintosh Only </li></ul></ul></ul>
    6. 6. Overview of Environment <ul><li>6 Academic Images </li></ul><ul><ul><li>3 Windows </li></ul></ul><ul><ul><li>3 Macintosh </li></ul></ul><ul><li>Ghost </li></ul><ul><li>AD Structure </li></ul><ul><li>Terminology </li></ul><ul><ul><li>Push the button </li></ul></ul><ul><ul><li>Group Re-image </li></ul></ul>
    7. 7. Ease of Imaging <ul><li>Get Hamilton Barcode(s) </li></ul><ul><li>Locate machine(s) in Inventory </li></ul>
    8. 8. Ease of Imaging Equipment Information
    9. 9. Ease of Imaging Users Tab
    10. 10. Ease of Imaging Software Tab
    11. 11. Ease of Imaging Function Tab
    12. 12. Ease of Imaging
    13. 13. Ease of Imaging
    14. 14. Ease of Imaging
    15. 16. Ease of Imaging <ul><li>Group Reimage </li></ul><ul><ul><li>Edit psexec command </li></ul></ul><ul><ul><li>Schedule Task </li></ul></ul><ul><ul><li>Verify restore </li></ul></ul>
    16. 17. How do we get here?
    17. 18. REBOOT first_boot.cmd Full File on Page 1 of Supplement
    18. 19. first_boot.cmd <ul><li>Script that runs on ‘first boot’ </li></ul><ul><li>Cleans up ‘loose ends’ after imaging process </li></ul><ul><ul><li>Changes local account passwords </li></ul></ul><ul><ul><li>Performs registry edits </li></ul></ul><ul><ul><li>Re-installs anti-virus software (Sophos) </li></ul></ul><ul><ul><li>Edits folder permissions </li></ul></ul>
    19. 20. first_boot.cmd <ul><li>Cleans up ‘loose ends’ after imaging process (cont’d) </li></ul><ul><ul><li>Sets ‘Computer Description’ </li></ul></ul><ul><ul><li>Hides service partition </li></ul></ul><ul><ul><li>Restarts computer </li></ul></ul><ul><ul><li>Deletes itself </li></ul></ul>
    20. 21. first_boot.cmd <ul><li>Changes local account passwords </li></ul><ul><li>net user <username> <new_password> </li></ul><ul><li>net user itsadmin unique_password </li></ul>
    21. 22. first_boot.cmd <ul><li>Performs Registry Edits - Delete Keys </li></ul><ul><li>reg DELETE <KeyName> <options> </li></ul><ul><li>reg DELETE &quot;HKLMSoftwareSophosALC AgentPrivate&quot; /v pkc /f </li></ul>
    22. 23. first_boot.cmd <ul><li>Performs Registry Edits - Change Permissions (Citrix Web Client) </li></ul><ul><li>regini <input_file> (text file with registry data) </li></ul><ul><li>echo RegistryMachineSoftwareMicrosoftMSLicensingHardwareID [1 5 7 13 17] > c:Management egini.txt </li></ul><ul><li>regini c:Management egini.txt </li></ul>
    23. 24. first_boot.cmd <ul><li>Re-installs anti-virus software (Sophos) </li></ul><ul><li>msiexec <path_to_msi> <options> </li></ul><ul><li>msiexec.exe /i &quot;c:Program FilesSophosAutoUpdatecachesavxpSophos Anti-Virus.msi&quot; REINSTALL=ALL REINSTALLMODE=voums UPDATEDRIVERS=0 /quiet </li></ul>
    24. 25. first_boot.cmd <ul><li>Edits folder permissions </li></ul><ul><li>cacls <filename> <options> </li></ul><ul><li>cacls &quot;c:Documents and SettingsAll UsersApplication DataWindows Genuine Advantage&quot; /E /T /G Everyone:F </li></ul>
    25. 26. first_boot.cmd <ul><li>Hides service partition </li></ul><ul><li>diskpart /s <diskpart_script> </li></ul><ul><li>diskpart /s c:Managementdiskpart_hide_winpe.txt </li></ul><ul><li>diskpart_hide_winpe.txt </li></ul><ul><li>select disk 0 </li></ul><ul><li>select partition 1 </li></ul><ul><li>remove </li></ul><ul><li>exit </li></ul>
    26. 27. first_boot.cmd <ul><li>Restarts computer </li></ul><ul><li>shutdown <options> </li></ul><ul><li>shutdown -r -f -t 5 </li></ul>
    27. 28. first_boot.cmd <ul><li>Deletes itself </li></ul><ul><li>del <files or directories> </li></ul><ul><li>del c:Managementfirst_boot.cmd </li></ul>
    28. 29. REBOOT first_boot.cmd REBOOT Sysprep Full File on Page 2 of Supplement
    29. 30. Sysprep <ul><li>minisetup - w/ sysprep.inf ‘answer’ file </li></ul><ul><ul><li>PnP device installation </li></ul></ul><ul><ul><li>product key </li></ul></ul><ul><ul><li>sets 'Administrator' password </li></ul></ul><ul><ul><li>sets computer name </li></ul></ul><ul><ul><li>joins to domain </li></ul></ul>
    30. 31. Sysprep <ul><li>PnP device installation </li></ul><ul><li>[Unattended] </li></ul><ul><li>UpdateInstalledDrivers=Yes </li></ul><ul><li>DriverSigningPolicy=ignore </li></ul>
    31. 32. Sysprep <ul><li>Product Key </li></ul><ul><li>[UserData] </li></ul><ul><li>ProductID=ABCDE-12345-FGHIJ-67890-KLMNO </li></ul>
    32. 33. Sysprep <ul><li>Sets Administrator password & computer name </li></ul><ul><li>[GuiUnattended] </li></ul><ul><li>AdminPassword=“pa$$w0rd” </li></ul><ul><li>[UserData] </li></ul><ul><li>ComputerName=“pc-869273” </li></ul>
    33. 34. Sysprep <ul><li>Joins domain </li></ul><ul><li>[Identification] </li></ul><ul><li>JoinDomain=hamilton.edu </li></ul><ul><li>DomainAdmin=networkadmin </li></ul><ul><li>DomainAdminPassword=pa$$w0rd </li></ul>
    34. 35. Sysprep <ul><li>Calls first_boot.cmd </li></ul><ul><li>[GuiRunOnce] </li></ul><ul><li>Command0() = &quot;%systemdrive%/Management/first_boot.cmd&quot; </li></ul>
    35. 36. REBOOT first_boot.cmd Sysprep REBOOT Download Image REBOOT
    36. 37. Downloading the Image <ul><li>Three parts </li></ul><ul><ul><li>Boot into WinPE </li></ul></ul><ul><ul><li>Run download_production_image.cmd </li></ul></ul><ul><ul><li>Run unique ghost.cmd </li></ul></ul>
    37. 38. Downloading the Image <ul><li>PART 1 </li></ul><ul><li>Boot into WinPE </li></ul><ul><ul><li>located on 5GB ‘service’ partition </li></ul></ul><ul><ul><li>installed using WinPE bootable CD </li></ul></ul><ul><ul><ul><li>“ DIS WinPE Utility” </li></ul></ul></ul>
    38. 39. Downloading the Image <ul><li>PART 2 </li></ul><ul><li>download_production_image.cmd </li></ul><ul><ul><li>called by startnet.cmd in WinPE </li></ul></ul><ul><ul><li>sets-up environment </li></ul></ul><ul><ul><ul><li>maps drives </li></ul></ul></ul><ul><ul><ul><li>sets variables for MAC address, service tag, IP </li></ul></ul></ul><ul><ul><ul><li>starts VNC server </li></ul></ul></ul><ul><ul><ul><li>runs machine specific ghost.cmd </li></ul></ul></ul>Full File on Page 3 of Supplement
    39. 40. Downloading the Image <ul><li>PART 2 : download_production_image.cmd </li></ul><ul><li>Maps drives </li></ul><ul><li>net use <drive letter> <path> /user:< username> <password> </li></ul><ul><li>net use i: asper2DIS-WIN /user:admin pa$$w0rd </li></ul>
    40. 41. Downloading the Image <ul><li>PART 2: download_production_image.cmd </li></ul><ul><li>Sets variables </li></ul><ul><li>for /f &quot;tokens=1&quot; %%x in ('<command>') do set <variable>=%%x </li></ul><ul><li>for /f &quot;tokens=1&quot; %%i in ('ipconfig /all ^| gawk -F&quot;: &quot; &quot;/IP Address/ { print $2 }&quot;') do set ip=%%I </li></ul><ul><li>for /f &quot;tokens=1&quot; %%s in ('ghost32 -lockinfo ^| gawk -F^&quot; &quot;/Serial/ { print $2 }&quot;') do set serial=%%s </li></ul>
    41. 42. Downloading the Image <ul><li>PART 2: download_production_image.cmd </li></ul><ul><li>Starts VNC server </li></ul><ul><li>regedit /s i:Ghost-G3 oolsvncultravnc.reg </li></ul><ul><li>start /min winvnc.exe </li></ul>
    42. 43. Downloading the Image <ul><li>PART 2 : download_production_image.cmd </li></ul><ul><li>Runs machine specific ghost.cmd </li></ul><ul><li>i:Ghost-G3dataserial%ghost.cmd </li></ul>
    43. 44. Downloading the Image <ul><li>PART 3 </li></ul><ul><li>machine specific ghost.cmd </li></ul><ul><ul><li>downloads appropriate image (Ghost32) </li></ul></ul><ul><ul><li>copies files to local machine </li></ul></ul><ul><ul><ul><li>sysprep.inf, first_boot.cmd </li></ul></ul></ul><ul><ul><li>sets boot disk </li></ul></ul><ul><ul><li>writes logging info </li></ul></ul><ul><ul><li>reboots </li></ul></ul>
    44. 45. Downloading the Image <ul><li>PART 3 : ghost.cmd </li></ul><ul><li>Runs Ghost32.exe command </li></ul><ul><li>ghost32 -clone,MODE=prestore,src=&quot;i:images2006 ImagesDesktopsysprepGX620.gho:1&quot;,dst=1:2 -sure -fx </li></ul>Full File on Page 4 of Supplement
    45. 46. Downloading the Image <ul><li>PART 3 : ghost.cmd </li></ul><ul><li>Sets boot disk </li></ul><ul><li>diskpart /s diskpart_set_active.txt </li></ul><ul><li>select disk 0 </li></ul><ul><li>select partition 2 </li></ul><ul><li>assign letter w </li></ul><ul><li>active </li></ul><ul><li>exit </li></ul>
    46. 47. Downloading the Image <ul><li>PART 3 : ghost.cmd </li></ul><ul><li>Outputs logging info </li></ul><ul><li>echo I was imaged on: %date% %time% >> i:Ghost-g3logsbarcode%.txt </li></ul><ul><li>copy i:Ghost-g3logsbarcode%.txt &quot;w:Managementimage.log&quot; </li></ul>
    47. 48. Downloading the Image <ul><li>PART 3 : ghost.cmd </li></ul><ul><li>Copies files & reboots </li></ul><ul><li>mkdir w:Management </li></ul><ul><li>copy &quot;i:Ghost-G3dataserial%sysprep.inf&quot; &quot;w:sysprep&quot; </li></ul><ul><li>copy &quot;i:Ghost-G3dataserial%first_boot.cmd&quot; &quot;w:Management” </li></ul><ul><li>exit </li></ul>
    48. 49. Inventory System Behind the Scenes
    49. 50. Inventory System Behind the Scenes <ul><li>Scripts used to “format” data </li></ul><ul><li>Plug-in creates: </li></ul><ul><ul><li>Custom directories using cpu serial </li></ul></ul><ul><ul><li>Custom files with specific data for cpu </li></ul></ul>
    50. 51. Inventory System Behind the Scenes AddComputerToAD
    51. 52. <ul><li>Information from the Inventory record </li></ul><ul><li>Computer Barcode to create part of the name </li></ul><ul><li>Current User Department to determine Academic or Employee </li></ul><ul><li>Current User Building and Current User Department to determine the current OU </li></ul><ul><li>Current User Name and Department for the object description </li></ul>Inventory System Behind the Scenes AddComputerToAD
    52. 53. Inventory System AddComputerToAD <ul><ul><li>strComputer = &quot; pc-barcode &quot; </li></ul></ul><ul><ul><li>strCompDesc = &quot; CompDesc1 &quot; </li></ul></ul><ul><ul><li>Set objContainer = GetObject(&quot;LDAP://ou= BUILDING , ou= MANAGED COMPUTERS , ou= All Domain Computers ,“ </li></ul></ul><ul><li>Becomes </li></ul><ul><ul><li>strComputer = &quot; pc-13880 &quot; </li></ul></ul><ul><ul><li>strCompDesc = “ KJ220- 10 - ITS-LABS &quot; </li></ul></ul><ul><ul><li>Set objContainer = GetObject(&quot;LDAP://ou= KJ 220 , ou= Academic Facilities , ou= MANAGED COMPUTERS , ou=All Domain Computer,” </li></ul></ul>VB script that pre-creates the computer object in Active Directory Full File on Page 5 of Supplement
    53. 54. Inventory System Behind the Scenes AddComputerToAD
    54. 55. Inventory System Behind the Scenes AddComputerToAD
    55. 56. Inventory System Behind the Scenes AddComputerToAD
    56. 57. Inventory System Behind the Scenes Prep Button
    57. 58. Inventory System Behind the Scenes Prep Button <ul><li>Information from the Inventory record is used to create: </li></ul><ul><li>Sysprep answer file </li></ul><ul><li>Ghost.cmd </li></ul><ul><li>first_boot.cmd </li></ul><ul><li>Backup files </li></ul><ul><li>Directory on server to store these files </li></ul>
    58. 59. Inventory System Behind the Scenes Prep Button
    59. 60. Inventory System Behind the Scenes Prep Button
    60. 61. Inventory System Behind the Scenes Prep Button <ul><li>Sysprep answer file with specific data </li></ul><ul><li>Admin Password (based on barcode) </li></ul><ul><li>Windows License (can be volume or from cpu) </li></ul><ul><li>Computer Name (based on barcode) </li></ul><ul><li>Domain name </li></ul><ul><li>Domain Account need to add computer to domain </li></ul><ul><ul><li>account password </li></ul></ul><ul><li>Run once file </li></ul>Full File on Page 2 of Supplement
    61. 62. Inventory System Behind the Scenes Prep Button <ul><li>Sysprep answer file </li></ul><ul><li>[GuiUnattended] </li></ul><ul><li>AutoLogon=Yes </li></ul><ul><li>AdminPassword= Unique_Based_On_Barcode </li></ul><ul><li>AutoLogonCount =1 </li></ul><ul><li>EncryptedAdminPassword=NO </li></ul><ul><li>OEMSkipRegional=1 </li></ul><ul><li>TimeZone=35 </li></ul><ul><li>OemSkipWelcome=1 </li></ul>
    62. 63. Inventory System Behind the Scenes Prep Button <ul><li>Sysprep answer file </li></ul><ul><li>[UserData] </li></ul><ul><li>ProductID= ct6gt-x6tp7-9tk98-ykjq9-ykf6 </li></ul><ul><li>FullName=&quot;Hamilton College&quot; </li></ul><ul><li>OrgName=&quot;Hamilton College&quot; </li></ul><ul><li>ComputerName=&quot; pc-13880 &quot; </li></ul>
    63. 64. Inventory System Behind the Scenes Prep Button <ul><li>Sysprep answer file </li></ul><ul><li>[Identification] </li></ul><ul><li>JoinDomain=hamilton-d </li></ul><ul><li>DomainAdmin=< networkadmin > </li></ul><ul><li>DomainAdminPassword =< pa$$w0rd > </li></ul><ul><li>[Networking] </li></ul><ul><li>InstallDefaultComponents=Yes </li></ul><ul><li>[GuiRunOnce] </li></ul><ul><li>Command0() = &quot;%systemdrive%/Management/ first_boot.cmd &quot; </li></ul>
    64. 65. Inventory System Behind the Scenes Prep Button
    65. 66. Inventory System Behind the Scenes Prep Button <ul><li>Ghost.cmd file with specific data </li></ul><ul><li>Image name </li></ul>Full File on Page 4 of Supplement
    66. 67. Inventory System Behind the Scenes Prep Button <ul><li>Ghost.cmd page # of handout </li></ul><ul><li>:: run ghost command </li></ul><ul><li>echo Running Ghost... </li></ul><ul><li>ghost32 -clone,MODE=prestore,src=&quot; i:images2006 ImagesAcademicsysprep KJUnified.gho :1 &quot;,dst=1:2 -sure –fx </li></ul>
    67. 68. Inventory System Behind the Scenes Prep Button <ul><li>First_Boot.cmd with specific data </li></ul><ul><li>Local User Password (based on barcode) </li></ul><ul><li>Sets computer description (based on barcode) </li></ul>Full File on Page 1 of Supplement
    68. 69. Inventory System Behind the Scenes Prep Button <ul><li>First_boot.cmd page # of handout </li></ul><ul><li>:: using net user command </li></ul><ul><li>net user itadmin UniquePassword </li></ul><ul><li>:: Set computer description </li></ul><ul><li>reg ADD &quot;HKLMSYSTEMCurrentControlSetServiceslanmanserverparameters&quot; /v srvcomment /d &quot; pc-13880 &quot; /f </li></ul>
    69. 70. Inventory System Behind the Scenes Re-image Button
    70. 71. Inventory System Behind the Scenes Re-image Button <ul><li>Startimage.cmd </li></ul><ul><li>psexec pc-barcode -s c:managementinitiate_automated_imaging.cmd </li></ul>Full File on Page 8 of Supplement
    71. 72. Inventory System Behind the Scenes Remote Desktop Button
    72. 73. Inventory System Behind the Scenes Remote Desktop Button <ul><li>Remote.rpd </li></ul><ul><li>screen mode id:i:1 </li></ul><ul><li>desktopwidth:i:1280 </li></ul><ul><li>desktopheight:i:1024 </li></ul><ul><li>session bpp:i:16 </li></ul><ul><li>winposstr:s:0,1,1300,9,2542,870 </li></ul><ul><li>full address:s:PC- BARCODE </li></ul><ul><li>compression:i:1 </li></ul><ul><li>keyboardhook:i:2 </li></ul><ul><li>audiomode:i:0 </li></ul><ul><li>redirectdrives:i:0 </li></ul><ul><li>redirectprinters:i:1 </li></ul>Full File on Page 8 of Supplement
    73. 74. Inventory System Behind the Scenes Update Image Log Button
    74. 75. Network Directory Structure
    75. 76. Network Directory Structure “Commands” Directory
    76. 77. Network Directory Structure “Data” Directory
    77. 78. Network Directory Structure Inside “Data” Directory
    78. 79. Network Directory Structure “Logs” Directory
    79. 80. Network Directory Structure “Tools” Directory
    80. 81. <ul><li>COREUTILS http://gnuwin32.sourceforge.net/packages.html </li></ul><ul><li>GAWK </li></ul><ul><li>http://gnuwin32.sourceforge.net/packages.html </li></ul><ul><li>GREP </li></ul><ul><li>http://gnuwin32.sourceforge.net/packages.html </li></ul><ul><li>psexec </li></ul><ul><li>http://www.microsoft.com/technet/sysinternals/utilities/psexec.mspx </li></ul><ul><li>UltraVNC </li></ul><ul><li>http://ultravnc.sourceforge.net/ </li></ul>Network Tools used - Shareware
    81. 82. <ul><li>Ghost </li></ul><ul><li>http://www.symantec.com/enterprise/ </li></ul><ul><li>FileMakerPro </li></ul><ul><li>www.filemaker.com </li></ul><ul><li>Troi File plug-in for Filemaker </li></ul><ul><li>http://www.troi.com/software/fileplugin.html </li></ul>Network Tools used - Purchased
    82. 83. Conclusion <ul><li>Building Blocks </li></ul><ul><ul><li>Keep adding </li></ul></ul><ul><ul><li>Can modify and add to scripts in Inventory </li></ul></ul><ul><li>Built with what we had </li></ul><ul><li>Didn’t need to switch to (or buy) new technology or software </li></ul><ul><li>Fits our workflow </li></ul>
    83. 84. Conclusion <ul><li>Apply what we have to other systems </li></ul><ul><ul><li>Use for Faculty and Admin computers </li></ul></ul><ul><ul><li>We have a parallel system for Macs </li></ul></ul>
    84. 85. Next Steps <ul><li>PXE boot </li></ul><ul><li>WinPE2 </li></ul><ul><li>Add application installers </li></ul><ul><li>Create a web form for self service </li></ul><ul><li>Add scheduling </li></ul>
    85. 86. Next Steps <ul><li>Vista </li></ul>
    86. 87. Thank you! Questions?

    ×