Blog Posts tagged with Systems Management

Ask a question

Applying Windows 10 Feature Updates with KACE

Here is how I did it. I am sure there are 1000 ways to skin this cat. Hopefully this helps somebody.


Environment Details

WAN devices on approx 20 different remote sites with links from 1MB to 100mb connection speed.


Requirements for my project

  1. Update all windows 10 from x to Windows Version 1703 (OS Build 15063.729). We had multiple versions of Windows 10 ranging from 1511 to 1607.

  2. Upload the 4GB install files to WAN locations only once.


Important info/lingo/links for Windows 10 upgrading.

Windows 10 Version Info - https://goo.gl/6YczDW

Pay attention to difference in Version and Build.

Step 1 - Download ISO and copy to WAN Locations

  1. Download the ISO for 1703 (or version you are trying to update to). You can use the Windows Media Creation Tool or if you want to download directly you can do this trick. Extract the contents of ISO to a folder of your choice.

  2. Copy the entire contents of the folder above to each replication share. If you don't use replication shares this can be just a shared drive on a device in the same location as the device you want to upgrade. This is strickly for bandwidth reasons. If you are not concerned with bandwidth (and time to transfer 4gb) to each location then skip this step. Just make sure that whatever you setup your script in the “Windows Run As” has read Share and NTFS permissions.

Step 2 - Apply Labels to target Devices

Apply a Manual Label to each device you want to upgrade. I used Win10Upgrade-Nov1, Win10Upgrade-Nov7 etc so that you could easily go back and tell by the label when the upgrade was applied. Then after all was good and no issues removed all the manual labels.

.

Step 3 - Create the Script that does the work

Create Script that will do the actual upgrade. I will not give every script options here but here are the key ones.

  1. Under Deploy Section select Microsoft Windows and choose your labels or devices to target. Again I used manual Labels created in Step 2 above.

  2. Under Tasks Add a task and choose “Run a batch file…” with this as the bat file text. This is straight from this TechNet article. I used a bat file because I store the %kacelocalrepo% as a system variable that is set via GPO for other upgrades that are to large in size for Managed Installs.

    1. %kacelocalrepo%\Win10Build15063\setup.exe /auto upgrade /installfrom %kacelocalrepo%\Win10Build15063\sources\install.wim /dynamicupdate disable

Step 4 - Run the Script

Either use the “Run Now” feature or schedule the script to run once at a specific time. Just personal preference here. There is probably some way to silently do this but I choose to allow the users to cancel because I would rather them cancel the install (its graceful) rather than power off the machine and corrupt the upgrade.

Step 5 - Go fishing! Most Important Step!

Go fishing in your favorite watering hole and come back to upgraded Windows 10 devices. Use KACE GO app to make your boss think you're doing this from land.


Side Notes

I did not use the Windows 10 media creation tool. I used the trick to download the ISO manually. The disadvantages (I think) of this are it installed 1703.0 during this process. Then after that I had to install Cumulative Update for November which is another 932 MB install. Granted at this point “Patch Management” does all my Cumulative Updates and the files are already on the replications shares, but you could have done this all in one task via Using the “Add updates to customized Windows images”. Is installing the Version upgrade separately than the Cumulative upgrade easier to troubleshoot? Sure it is… just throwing that out there as this minimizes downtime for your end users by doing Upgrade instead of doing an Upgrade and then an Update.


View comments (1)

ScriptLogic and Realtimepublishers Launch Windows Desktop Administration eBook

http://scriptlogic.com/eng/pressroom/PressReleases/PR-2003-01-28.asp

Definitive Guide is a Must Read for Every Network Administrator

Pompano Beach, FL – January 28, 2003 – ScriptLogic Corporation (www.scriptlogic.com), the leader in desktop administration software for Windows-based networks, and Realtimepublishers.com, Inc., the worldwide leader in corporate sponsored e-publishing, today announced the release of The Definitive Guide to Windows Desktop Administration. This new eBook, sponsored by ScriptLogic and authored by Bob Kelly, one of the industry’s top Windows management experts, provides valuable guidance and real-world examples for creating an efficient desktop administration plan.

“We are very excited to sponsor The Definitive Guide to Windows Desktop Administration,” said Jason Judge, CEO of ScriptLogic Corporation. “This eBook provides its readers with great, practical information about how to lower the total cost of ownership of their Windows-based networks-- something we know a lot about. The eBook complements our goal of helping customers reduce the time and money spent maintaining their networks.”

The Definitive Guide to Windows Desktop Administration examines the life cycle of Windows desktop administration from the initial OS deployment to change management through best practices. Topics included in this eBook will help readers learn how to do the following:

Reduce Help desk and administration costs and increase user productivity

Define and automate administration tasks using the latest tools and technologies

Manage security with Group Policy and desktop lockdown

Manage user profiles and map network resources

Embrace ‘best practices’ and script custom solutions

Exclusive to ScriptLogic, The Definitive Guide to Windows Desktop Administration will be published on a chapter-by-chapter basis, as it is written, providing an in-depth look at how to manage the Windows desktop. Registered readers will receive email notification when each chapter of the eBook is made available for download. Readers can register now for the eBook at www.scriptlogic.com/ebook.

“ScriptLogic is a well established leader in the Windows desktop administration arena and we are very excited to be partnering with them to make The Definitive Guide to Windows Desktop Administration available to our readers,” said Sean Daily, CEO of Realtimepublishers. “In these challenging economic times, it is even more important for enterprises to reduce TCO through efficient desktop administration and we know our readers will appreciate this free resource.”

The Definitive Guide Series

The Definitive Guide eBook series provides timely IT content written for technical professionals, including system administrators, senior IT personnel, advanced users, and consultants. The titles in this series provide a wealth of information that goes beyond whatÂ’s found in product manuals and white papers, and are written by expert authors who are veterans in their respective fields. The Definitive Guide series, like all RealtimepublishersÂ’ series, are high-quality eBooks that are free to readers on the Web sites of industry-leading, high-tech companies around the world.

About The Author

Bob Kelly is the founder of AppDeploy.com and author of an upcoming book about the KiXtart scripting language. Bob is recognized as an industry expert in the area of application and OS deployment—writing, speaking and consulting on these and other related topics. With 13 years of experience in engineering and support, he currently works as the principal consultant in the support of several enterprise networks providing scripting, repackaging, migration, and implementation services at Integrated Data Systems in Chantilly, VA

About ScriptLogic

ScriptLogic Corporation is the leader in desktop administration software for Microsoft Windows-based networks. ScriptLogic, its award-winning, patent-pending, flagship product is the first commercial software to combine logon scripting, group policies and user profile management – into an intuitive graphical management console supporting all 32-bit Windows platforms (95, 98, Me, NT, 2000 and XP). An innovative, multi-functional solution, ScriptLogic eliminates redundant tasks, repeated trips to each desktop, maintaining multiple batch files and many other time consuming, labor-intensive activities – leaving IT staff free to concentrate on more critical issues. With deployments ranging from 10 to over 40,000 seats, ScriptLogic offers significant benefits to any size network. ScriptLogic, a privately held company, is headquartered in Pompano Beach, Florida and can be reached at (954) 861-2300 and on the web at www.scriptlogic.com.

About Realtimepublishers.com

Realtimepublishers.com is the worldwide leader in corporate-sponsored e-publishing. The company is revolutionizing the publishing industry through its unique approach of creating high-quality titles and publishing them at no charge to readers on the Web sites of industry-leading companies around the world. Current Realtimepublishers eBook sponsors include Citrix Systems, Microsoft, NetIQ, New Moon Systems, Quest Software, Aelita, and more. For information about Realtimepublishers and available eBooks, please visit www.realtimepublishers.com.

Be the first to comment

Copying files from SMS Distribution points using command line

When using a command line with SMS (.cmd) it will default to using the current windows path.

Using this command will insert the current path which is hany when rolling out from multiple distribution points as it is updated depending on what server share its in.

For example you would use this line:

xcopy.exe "%~dp0*.*" c:\temp /E /I /Q /H /Y

The %~dp0 is replace with the current server path.

Be the first to comment

How TO: Track Windows and Office Product Keys

I’ve been getting a lot of request for this in my trainings, so here it is. 
At the end of this post, you will have all the tools you need to track your Windows product keys and Microsoft office product keys. 
They way this works is we find the keys using nirsoft's keyfinder program. 
Next a VBS writes the keys to the registry. 
Finally we tie it all together with custom inventory rules. 

Requirements:Product Finder (now form Nirsfot) 
Here is the link to the portable version
http://www.nirsoft.net/utils/produkey.zip 

First thing we need to do is copy this VBS code into notepad and save it as keys.vbs 

Option Explicit

Dim objFSO			
Dim objTextFile
Dim winKey 
Dim officeKey
Dim strFile
Dim arrKeys
Dim i

Const ForReading = 1
Const winCDLine = "Windows"
Const officeCDLine = "Microsoft Office"
Const noViso = "Visio"
Const officeKeyReg = "offKey"
Const winKeyReg = "winKey"


Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objTextFile = objFSO.OpenTextFile _
    ("keys.csv", ForReading)

'Read the file into the array
strFile = objTextFile.ReadAll
arrKeys = Split(strFile, vbCrLf)

For i = LBound(arrKeys) To UBound(arrKeys)
	'try to find the windows product key
	If(instr(arrkeys(i),winCDLine))Then
		winKey = getKey(arrKeys(i))
		writeReg winKey,winKeyReg	
	End If
	'try to find the office product key
	If(InStr(arrKeys(i),noViso)) Then
	
	ElseIf(InStr(arrKeys(i),officeCDLine)) Then
		officeKey = getKey(arrKeys(i))
		writeReg officeKey,officeKeyReg
	End If
Next

Function getKey(strKeyLine)
Dim temper
Const KeyLoc = 2
Const ProdLoc = 0

temper = Split(strkeyLine,",")
getKey = temper(prodloc) & "_" & temper(KeyLoc)

End function


Sub writeReg(strValue,StrValueName)

Dim strComputer
Dim oReg
Dim wshShell

Const HKEY_LOCAL_MACHINE = &H80000002
Const strKeyPath = "SOFTWARE\TVG"
Const strKeyPath64 = "SOFTWARE\Wow6432Node\TVG"
Const is64Key = "SOFTWARE\Wow6432Node"

strComputer = "."

Set oReg=GetObject("winmgmts:{impersonationLevel=impersonate}!\\" & _ 
    strComputer & "\root\default:StdRegProv")
Set WshShell = WScript.CreateObject("WScript.Shell")

'check for 64 bit
If(OS64()) Then
	oReg.CreateKey HKEY_LOCAL_MACHINE,strKeyPath64
	oReg.SetStringValue HKEY_LOCAL_MACHINE,strKeyPath64,strValueName,strValue
Else
	oReg.CreateKey HKEY_LOCAL_MACHINE,strKeyPath
	oReg.SetStringValue HKEY_LOCAL_MACHINE,strKeyPath,strValueName,strValue
End If

End Sub

Function OS64()
Dim objOS
Dim colItems
Dim objItem
Dim strComputer

strComputer = "."
Set objOS = GetObject("winmgmts:\\" & strComputer & "\root\CIMV2")
Set colItems = objOS.ExecQuery("SELECT OSArchitecture FROM Win32_OperatingSystem")

'this should fail on 32 bit XP
On error resume next
For Each objItem In colItems
	If(IsNull(objItem.OSArchitecture)) Then 
		OS64 = False
	ElseIf(InStr(objItem.OSArchitecture,"64") > 0) Then
		OS64 = True
	Else 
		OS64 = False
	End If
Next
On Error Goto 0

If(Err <> 0) Then 
	OS64 = False
End if
End Function
 
Next thing we need to do is go to the scripting module and a new script. 
For script type select Online Shell Script. 
Choose a label, select windows as the operating system and set the script to run as local system. 
Next upload produkey.cfg, produkey.exe (both found in the nirsoft folder, make sure you unzip) and keys.vbs as dependencies. 
For the script text enter the following 2 lines. 
ProduKey.exe /windowskeys 1 /officekeys 1 /iekeys 0 /sqlkeys 0 /exchangekeys 0 /extractedition 1 /scomma keys.csv
cscript.exe keys.vbs


Last thing we need to do is change the script name from script.sh to script.bat (just below the script text). 

Now that we have the keys in the registry we can start creating the custom inventory rules. 
Go to the software module and add a new item. 
Call the first one “Windows Product Key” 
Select all your windows operating systems for supported OSs. 
Finally here is the syntax for the custom inventory rule: 
RegistryValueReturn(HKEY_LOCAL_MACHINE\SOFTWARE\TVG,winKey,TEXT)

Go ahead and save the software. 
Next add another item but this time call it "Microsoft Office Key" 
Highlight all the windows OSs again. 
Here is the syntax for the second piece of software. 
RegistryValueReturn(HKEY_LOCAL_MACHINE\SOFTWARE\TVG,offKey,TEXT)


At this point you could also create additional software records, for example one for each office key. 
That way depending on the key you would have a unique software title. This way you could use the KBOXs built in asset management module and do licence compliance. 

Below are two reports that you can use to see what machines have what keys installed. 
Office report: 
SELECT M.NAME,
       SUBSTRING_INDEX(MCI.STR_FIELD_VALUE,'_',1) AS OFFICE_VERSION,
       SUBSTRING_INDEX(MCI.STR_FIELD_VALUE,'_',-1) AS PRODUCT_KEY
FROM   SOFTWARE S,
       MACHINE_CUSTOM_INVENTORY MCI,
       MACHINE M
WHERE  MCI.SOFTWARE_ID = S.ID 
       AND M.ID = MCI.ID
       AND S.DISPLAY_NAME = 'Microsoft Office Key'
ORDER  BY OFFICE_VERSION,
          PRODUCT_KEY


Windows report: 
SELECT M.NAME,
       SUBSTRING_INDEX(MCI.STR_FIELD_VALUE,'_',1) AS WINDOWS_VERSION,
       SUBSTRING_INDEX(MCI.STR_FIELD_VALUE,'_',-1) AS PRODUCT_KEY
FROM   SOFTWARE S,
       MACHINE_CUSTOM_INVENTORY MCI,
       MACHINE M 
WHERE  MCI.SOFTWARE_ID = S.ID 
       AND M.ID = MCI.ID 
       AND S.DISPLAY_NAME = 'Windows Product Key'
ORDER  BY WINDOWS_VERSION,
          PRODUCT_KEY


I hope this is useful. 
Thanks to vacuna for helping me put this together. 
View comments (9)

Dell KACE Koncept Series: K1000 Inventory Fundamentals

Welcome

Welcome to the Dell KACE Koncept Series!  This series of blogs and videos will help provide some basic information on the K1000 and K2000 product lines.

Click here to view the video, it will open in a separate window.

 

Description

This video provides information on the Inventory component of the K1000 appliance.  This information is designed to provide a brief overview of:

  • Computer Inventory
  • non-Computer Inventory
  • MIA Inventory

If you would like to provide feedback, we'd love to hear it!  You can provide comments below, rate this post, or just email elearning@kace.com and tell us what you think.

Happy KBOXing!

Credits

Technical Advisor: Chris Blake

Multimedia Producer: Melinda Richards

View comments (3)
Showing 1 - 5 of 348 results

Top Contributors

Talk About Windows Installer (MSI) Customizations