Monday, June 3, 2013

TechEd 2013: Sessions


Just hit a "Windows in the Enterprise" session with Mike Niehaus and Stephen Rose:


Mike just announced MDT 2013. ARG! I just spent the last 3 months rolling out MDT 2012! He is promising an easy upgrade... Hope so!


Just hit another session. This one is on Windows imaging. Never get tired of hearing Johan talk deployments:

Michael Niehaus talks "What's new in Windows 8 Deployment". New versions of Windows PE, USMT and all the ADK tools appears to be inbound:


Major takeaways include XP support being dropped for USMT and DISM Is taking over for ImageX (now deprecated). Oh and UEFI is important:


And bye bye to XP support in MDT:


With the recent MDT 2012 rollout at my company I took the opportunity to incorporate Microsoft DaRT (Diagnostics and Recovery Toolkit) into our MDT boot media. I thought I'd pick up a DaRT-centric session this go round. Aaron Ruckman gave a great overview of DaRT and I'm looking forward to leveraging what I learned in that session to get more out of DaRT:


Coming in on the final day. Doing one last session with Johan Ardwimark. This one is about becoming a driver control freak in MDT. Planning to modify our MDT setup at work to incorporate his "total control" methodology:


Learning about Windows 8 image engineering in the field from Keith Garner. I'm a little creeped out by how much Keith resembles Ted Allen from Food Network's "Chopped" TV series:


Time for one of the most popular sessions at Tech Ed, A Case of the Unexplained by the ever awesome Mark Russinovich. Mark just operates on a different level than anyone else in IT. He's brilliant. I learn something new every time I attend one if his sessions:


I could not help but notice that Mark was using StarDock's Start8 to restore the start menu on Windows 8. Great minds think alike. ;)

So looks like my last session of TechEd 2013 will be on a new technology (at least new to me) called DirectAccess. The short of it (as I understand it) is that it is VPN on steroids. My supervisor apparently learned about it recently and is real gung-ho for us to roll it out. I figured I'd take a look at it. Have not heard of the speaker (Richard Hicks) but I hope to be amazed:



TechEd 2013: Keynote

Brad Anderson took the stage in quite a flashy manner (an Aston Martin? Really?) anyway Windows 8 was extolled.


Aaaannnnd the Start Button made an appearance! Check it out:


See it there in the right hand screen? Note the taskbar on that demo by Iain McDonald. I guess Microsoft knows what crow tastes like...

We have a Ballmer cameo:


Brad's back! Cloud! Cloud! Cloud! ;)


Okay so wow, Server 2012 R2 and System Center R2 were just announced:



So the Keynote wrapped with the usual mantra of Cloud and a lot of focus on Azure. I still think a this notion of moving EVERYTHING to the cloud is highly overrated, but I do really like the idea of setting up a personal cloud. Microsoft is doing a lot to enable this and that (at least) is a cloud-centric focus I can get behind.

TechEd 2013: PreCon

The SCCM precon I attended with Kent Agerlund and Johan Arwidmark was fantastic. Got a lot of questions answered. These guys are the best of the best at what they do:



Sunday, June 2, 2013

TechEd 2013: I'm here!

Landed in the Big Easy last night. Hitting pre-con sessions now!

Thursday, May 30, 2013

Scripting: Administering the Windows Firewall with Batch

We needed a way to configure the Windows Firewall during a series of OS Deployments. After doing a bit of research I diced that a batch script using the NETSH command was probably the easiest solution. Here's the scripts I came up with (comment/uncomment desired settings:

Windows 7-2008 or later:

@ECHO OFF :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: TITLE Set Windows Firewall Features for Windows 7-2008 or later :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: :: Purpose: Auto-set Windows Firewall Features for Windows 7-2008 or later. :: Version: 2.0 :: Author: ZeusABJ :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: :: Clear screen to hide "UNC paths not supported" error message: CLS :: Display a message to the user: ECHO Setting Windows Firewall Features for Windows 7-2008 or later... ECHO. :: Run NETSH commands to disable/enable (off/on) individual firewall profiles: netsh advfirewall set domainprofile state off :: netsh advfirewall set privateprofile state off :: netsh advfirewall set publicprofile state off :: Run NETSH commands to disable/enable (off/on) all firewall profiles: :: netsh advfirewall set allprofiles state off :: Run NETSH command to enable Remote Desktop exception: netsh advfirewall firewall set rule group="remote desktop" new enable=Yes :: Display completion notice: ECHO Done! :: Uncomment to view script results: :: ECHO. :: PAUSE EXIT
Windows XP-2003:

@ECHO OFF :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: TITLE Set Windows Firewall Features for Windows XP-2003 :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: :: Purpose: Auto-set Windows Firewall Features for Windows XP-2003. :: Version: 2.0 :: Author: ZeusABJ :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: :: Clear screen to hide "UNC paths not supported" error message: CLS :: Display a message to the user: ECHO Setting Windows Firewall Features for Windows XP-2003... ECHO. :: Run NETSH commands to disable/enable firewall: netsh firewall set opmode disable :: Run NETSH command to enable Remote Desktop exception: netsh firewall set service remotedesktop enable :: Display completion notice: ECHO Done! :: Uncomment to view script results: :: ECHO. :: PAUSE EXIT
BONUS - This script will reset the firewall if you make a mistake with your desired settings:

@ECHO OFF :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: TITLE Reset Windows Firewall Features for Windows 7-2008 or later :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: :: Purpose: Auto-reset Windows Firewall Features for Windows 7-2008 or later. :: Version: 2.0 :: Author: ZeusABJ :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: :: Clear screen to hide "UNC paths not supported" error message: CLS :: Display a message to the user: ECHO Resetting Windows Firewall for Windows 7-2008 or later... ECHO. :: Run NETSH commands to reset firewall (restores default settings): netsh advfirewall reset :: Display completion notice: ECHO Done! :: Uncomment to view script results: :: ECHO. PAUSE EXIT

Tuesday, May 28, 2013

TechEd 2013: Here I come!

So looks like I'll be heading down to the Big Easy (New Orleans) next week for TechEd 2013. I've installed the Blogger app on my mobile device and it appears to have the capability to upload pictures directly from my phone. I'll try to post some pics while I'm down there. I'm hitting one of the big SCCM 2012-related pre-cons on Sunday. Really looking forward to that. Also there's a ton of interesting sessions I plan to try to attend as well. As expected "cloud" continues to be the hot buzzword and I'm sure Microsoft will be ready to inform me of all the awesome perks I'll gain by handing everything over to them. It should make for some interesting (and likely heated) discussions. I’ve also been issued a Surface Pro from work so (for once) I won’t have to hear the Microsoft fan boys blast me for toting around a certain fruit-themed laptop.


On the hot-beverage front, tea certainly seems to be sweeping the nation so there's a good chance I might be able to find some good tea vendors down there this go 'round (not much luck last time during TechEd 2010). That being said, I've always had better luck with coffee when I'm in South Louisiana. While I prefer tea (hands down), I have to admit I had one of the best lattes of my entire life down there back in 2010. There was a lady in the convention center selling lattes made with milk from a local farmer and coffee beans she roasted herself. She promised me the best latte ever and she totally delivered. To this day I still have cravings for that latte, so I intend to seek her out this year! Besides that there’s also the excellent coffee and chicory (not to mention the beignets) at CafĂ© Du Monde so (even if I don’t find good tea) something tells me I’ll survive.

Thursday, May 23, 2013

Scripting: My take on Batch-based OS detection

I've seen a lot of OS-detection methods out there. I know PowerShell and VBScript scripts are a lot more robust than batch scripts, but sometimes its easier to just fall back to good old CMD.EXE. To that end here's my take on an OS-detection script. In the past I've run into some issues where an application might create a folder structure that exists on a post-vista OS on a pre-vista one. So rather than check for paths or folders, I've found its better to see if environment variables have been defined, like so:

@ECHO OFF :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: TITLE Detect OS Version - Pre-Post Vista :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: :: Purpose: Check for PUBLIC folder to determine OS type and execute actions. :: Version: 1.3 :: Author: ZeusABJ :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: :: Clear screen to hide "UNC paths not supported" error message: CLS :: Define Variables: SET _OSType=Unknown SET _OSArch=Unknown :: Verify PUBLIC environment variable is defined: IF DEFINED PUBLIC ( SET _OSType=Vista-2008 or later ) ELSE ( SET _OSType=XP-2003 or earlier ) :: Verify PROGRAMFILES(X86) environment variable is defined: IF DEFINED PROGRAMFILES(X86) ( SET _OSArch=x64 ) ELSE ( SET _OSArch=x86 ) :: Display result: ECHO You appear to be running an %_OSArch% version of Windows %_OSType%. :: Uncomment to view script results: ECHO. PAUSE EXIT
Just for grins here's an even more granular method using WMIC:

@ECHO OFF :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: TITLE Detect OS Version - WMIC Method :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: :: Purpose: Determine OS version using the WMI database. :: Version: 2.0 :: Author: ZeusABJ :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: :: Clear screen to hide "UNC paths not supported" error message: CLS :: Define Variables: SET _OSVersion=Unknown :: Query WMI to get the OS Caption to detect OS version: WMIC OS GET Caption | FINDSTR /c:"2000" > NUL IF %ERRORLEVEL% EQU 0 SET _OSVersion=2000 WMIC OS GET Caption | FINDSTR /c:"Windows XP" > NUL IF %ERRORLEVEL% EQU 0 SET _OSVersion=XP WMIC OS GET Caption | FINDSTR /c:"Server 2003" > NUL IF %ERRORLEVEL% EQU 0 SET _OSVersion=2003 WMIC OS GET Caption | FINDSTR /c:"Vista" > NUL IF %ERRORLEVEL% EQU 0 SET _OSVersion=Vista :: Note: The additional "r" after "Server" is not a typo: WMIC OS GET Caption | FINDSTR /c:"Serverr 2008" > NUL IF %ERRORLEVEL% EQU 0 SET _OSVersion=2008 WMIC OS GET Caption | FINDSTR /c:"Windows 7" > NUL IF %ERRORLEVEL% EQU 0 SET _OSVersion=7 WMIC OS GET Caption | FINDSTR /c:"Server 2008 R2" > NUL IF %ERRORLEVEL% EQU 0 SET _OSVersion=2008R2 WMIC OS GET Caption | FINDSTR /c:"Windows 8" > NUL IF %ERRORLEVEL% EQU 0 SET _OSVersion=8 WMIC OS GET Caption | FINDSTR /c:"Server 2012" > NUL IF %ERRORLEVEL% EQU 0 SET _OSVersion=2012 :: Display result: IF %_OSVersion%==Unknown ( ECHO Unable to determine Windows version. ) ELSE ( ECHO You appear to be using Windows %_OSVersion% ) :: Uncomment to view script results: ECHO. PAUSE EXIT
Hope somebody finds this useful!

Monday, May 7, 2012

SCCM 2012: Log File Reference

I grabbed this from Microsofts's site, made a a text file out of it and put it on my desktop for reference. Its proven pretty handy to have so I thought I'd post it here:


-----------------------------
SCCM 2012 Log file Reference:
-----------------------------
adctrl.log - Records enrollment processing activity.

ADForestDisc.log - Records Active Directory Forest Discovery actions.

ADService.log - Records account creation and security group details in Active Directory.

adsgdis.log - Records Active Directory Security Group Discovery actions.

adsysdis.log - Records Active Directory System Discovery actions.

adusrdis.log - Records Active Directory User Discovery actions.

ccm.log - Records client push installation activities.

CertMgr.log - Records the certificate activities for intra-site communications.

chmgr.log - Records activities of the client health manager.

Cidm.log - Records changes to the client settings by the Client Install Data Manager (CIDM).

colleval.log - Records details about when collections are created, changed, and deleted by the Collection Evaluator.

compmon.log - Records the status of component threads monitored for the site server.

compsumm.log - Records Component Status Summarizer tasks.

ComRegSetup.log - Records the initial installation of COM registration results for a site server.

ConfigMgrPrereq.log - Records pre-requisite component evaluation and installation activities.

dataldr.log - Records information about the processing of Management Information Format (MIF) files and hardware inventory in the Configuration Manager database.

ddm.log - Records activities of the discovery data manager.

despool.log - Records incoming site-to-site communication transfers.

distmgr.log - Records details about package creation, compression, delta replication, and information updates.

EPCtrlMgr.log - Records information about the synchronization of malware threat information from the Endpoint Protection site system role server into the Configuration Manager database.

EPMgr.log - Records the status of the Endpoint Protection site system role.

EPSetup.log - Provides information about the installation of the Endpoint Protection site system role.

EnrollSrv.log - Records activities of the Enrollment service process.

EnrollWeb.log - Records activities of the enrollment website process.

fspmgr.log - Records activities of the fallback status point site system role.

hman.log - Records information about site configuration changes, and the publishing of site information in Active Directory Domain Services.

Inboxast.log - Records the files that are moved from the management point to the corresponding INBOXES folder on the site server.

inboxmgr.log - Records file transfer activities between inbox folders.

inboxmon.log - Records the processing of inbox files and performance counter updates.

invproc.log - Records the forwarding of MIF files from a secondary site to its parent site.

migmctrl.log - Records information for Migration actions involving migration jobs, shared distribution points, and distribution point upgrades.

mpcontrol.log - Records the registration of the management point with WINS. Records the availability of the management point every 10 minutes.

mpfdm.log - Records the actions of the management point component that moves client files to the corresponding INBOXES folder on the site server.

mpMSI.log - Records details of about the management point installation.

MPSetup.log - Records the management point installation wrapper process.

netdisc.log - Records Network Discovery actions.

ntsvrdis.log - Records the discovery activity of site system servers.

Objreplmgr - Records the processing of object change notifications for replication.

offermgr.log - Records advertisement updates.

offersum.log - Records the summarization of deployment status messages.

OfflineServicingMgr.log - Records the activities of applying updates to operating system image files.

outboxmon.log - Records the processing of outbox files and performance counter updates.

PerfSetup.log - Records the results of the installation of performance counters.

PkgXferMgr.log - Records the actions of the SMS Executive component that is responsible for sending content from a primary site to a remote distribution point.

policypv.log - Records updates to the client policies to reflect changes to client settings or advertisements.

rcmctrl.log - Records the activities of database replication between sites in the hierarchy.

replmgr.log - Records the replication of files between the site server components and the Scheduler component.

ResourceExplorer.log - Records errors, warnings, and information about running the Resource Explorer.

ruleengine.log - Records details about Auto Deployment Rules around the identification, content download, and update group and deployment creation.

Sched.log - Records details about site-to-site job and package replication.

schedule.log - Records the activities for standard sender content scheduling jobs.

sender.log - Records the files that transfer by file-based replication between sites.

sinvproc.log - Records information about the processing of software inventory data to the site database.

sitecomp.log - Records details about the maintenance of the installed site components on all site system servers in the site.

sitectrl.log - Records site setting changes made to site control objects in the database.

sitestat.log - Records the availability and disk space monitoring process of all site systems.

SmsAdminUI.log - Records Configuration Manager console activity.

SMSAWEBSVCSetup.log - Records the installation activities of the application catalog web service.

smsbkup.log - Records output from the site backup process.

smsdbmon.log - Records database changes.

SMSENROLLSRVSetup.log - Records the installation activities of the enrollment web service.

SMSENROLLWEBSetup.log - Records the installation activities of the enrollment website.

smsexec.log - Records the processing of all site server component threads.

SMSFSPSetup.log - Records messages generated by the installation of a fallback status point.

SMSPORTALWEBSetup.log - Records the installation activities of the application catalog web site.

SMSProv.log - Records WMI provider access to the site database.

smstsvc.log - Records information about the installation, use, and removal of a Windows service that is used to test network connectivity and permissions between servers, using the computer account of the server initiating the connection.

srsrpMSI.log - Records detailed results of the reporting point installation process from the MSI output.

srsrpsetup.log - Records results of the reporting point installation process.

Srvacct.log - Records the maintenance of accounts when the site uses standard security.

statesys.log - Records the processing of state system messages.

statmgr.log - Records the writing of all status messages to the database.

swmproc.log - Records the processing of metering files and settings.