Quantcast
Channel: Nextware Technologies Blog
Viewing all 76 articles
Browse latest View live

Configuring Printing with Policies in Citrix Xenapp 6.5

$
0
0

Configuring Printing with Policies

      Use the

XenAppServer-1

       virtual machine logged in as the

Coolidge\CitrixAdminuser

       for this task.

 

      Use the following procedure to create a policy to disable auto-creation of client printers:

 

  1. Create a new Citrix user policy called Disable Client Printer Auto-creation and add an ICA Client Printer setting to disable auto-creation of client printers.
    1. Click New, type Disable Client Printer Auto-creation and click Next.
    2. Click ICA > Printing > Client Printers and select Auto-create client printers.
    3. Click Add and select Do not auto-create client printers from the Value drop-down menu.
    4. Click OK to add the setting.
  2. Create a filter that applies this policy against all domain users.
    1. Click Next to continue to the filters screen.
    2. Select User, click Add and then click Add in the New Filter window.
    3. Verify that Allow is selected in the Mode drop-down menu and type Coolidge\Domain Users in the User name field.
    4. Click OK to save the new filter element.
  3. Create a filter that denies this policy to the Advisors group.
    1. Click Add in the New Filter window.
    2. Select Deny in the Mode drop-down menu, type Coolidge\Advisors in the User name field and click OK to save the new filter element.
  4. Finish adding filters, enable the policy and then save it.
    1. Click OK to close the New Filter screen.
    2. Click Next to finish adding filters.
    3. Verify that Enable this policy is selected and then click Save.

Configuring Session Printers in Citrix Xenapp 6.5

$
0
0

Configuring Session Printers

      Use the

XenAppServer-1

       virtual machine logged in as the

Coolidge\CitrixAdminuser

       for this task.

 

      Use the following procedure to configure session printers for the initial set of employees:

 

  1. Create a new policy called Session Printers and Forced Universal Printer Drivers
    1. Click New, type Session Printers and Forced Universal Printer Drivers.
    2. Click Next to continue to the settings screen.
  2. Add the Session printers setting to automatically create the following session printers:
  3. • \\dc\HP Color LaserJet 2800 Series PS

 

    • \\dc\Lexmark x945e PS (MS)

 

    1. Click ICA > Printing and select Session printers. Click Add to add the default session printers.
    2. li>

    3. Click Add in the Add settings window, type \\dc\ in the Printer UNC path field and then click Browse.
    4. Navigate to Entire Network > dc, click HP Color LaserJet 2800 Series PS and click OK.
    5. Repeat steps b and c to add the Lexmark x945e PS (MS) network printer.
    6. Click OK to complete the Session printers setting and close the Add settings screen.
  1. Add the Universal Printing setting and set it to Use universal printing only. Continue to the filters screen.
    1. Click ICA > Printing > Universal Printing, select Universal printing and click Add to specify default settings.
    2. Select Use universal printing only from the value drop-down menu in the Add settings window and click OK.
  2. Create a filter that applies this policy against all domain users.
    1. Click Next to continue to the filters screen.
    2. Select User, click Add and then click Add in the New Filter window.
    3. Verify that Allow is selected in the Mode drop-down menu and type Coolidge\Domain Users in the User name field.
    4. Click OK to save the new filter element.
  3. Finish adding filters, enable the policy and then save it.
    1. Click OK to close the New Filter screen.
    2. Click Next to finish adding filters.
    3. Verify that Enable this policy is selected and then click Save.

Testing the Printer Policies in Citrix Xenapp 6.5

$
0
0

Testing the Printer Policies

 

      Use the EndUserSimulatorvirtual machine logged in as the Coolidge\CitrixAdminuser for this task.

 

      Use the following procedure to test the printer policies:

 

  1. Log on to the EndUserSimulator virtual machine as the Coolidge\CitrixAdmin user.
  2. Launch the Dazzle published Notepad application.
    1. Click Start > All Programs > Dazzle Apps > Notepad.
    2. Log on to the Coolidge Dazzle store using the Coolidge\CitrixAdmin credentials, if requested.
  3. Use the print screen to verify that only the Lexmark x945e PS (MS) and HP Color LaserJet 2800 Series PS session printers are available for printing and that they are both using their native printer drivers.
    1. Click File > Print, in Notepad.
    2. Verify that only the Lexmark x945e PS (MS) and HP Color LaserJet 2800 Series PS session printers are available for printing.
    3. Verify that both printers are using their native drivers.
    4. Close the Print dialog box and Notepad.
  4. Use Internet Explorer to log on to the Web Interface as the TestAdvisor user and launch the published Notepad application.
    1. Launch Internet Explorer and navigate to the Web Interface server located at http://webinterface.coolidge.net.
    2. Log in to the Web Interface using as the Coolidge\TestAdvisor user.
    3. Click Notepad to launch the published Notepad application.
    4. Select Do not ask me again for this site and click Yes on the USB/Other devices security warning, if it appears.
  5. Verify that all of the client printers are auto-created and using the Citrix Universal Printer Driver. Verify that the two session printers were also created and using their native print drivers.
    1. Click File > Print, in Notepad.
    2. Verify that all of the client printers are automatically created and using the Citrix Universal Printer Driver, except for the session printers which are using their native printer drivers.
  6. Close all open windows.
  7. The HP 4600 printer was not auto-created according to the policy that was previously created. The CitrixAdmin account only had access to the session printers and did not have local client printers auto-created according to policy. Finally, the TestAdvisors account had access to session printers and had all of the client printers created using the Citrix universal print driver. This confirms that all policies are in place and working as intended.

Upgrading an Active Directory Domain from Windows Server 2003 or Windows Server 2003 R2 to Windows Server 2012 or Windows Server 2012 R2

$
0
0

!!!NEVER START BEFORE HAVING CREATED AND TESTED A BACKUP OF YOUR DOMAIN/DATA/MACHINE!!!

A new OS Domain Controller installation should always start with the support tools, to check the Domain and Domain Controllers for errors that must be resolved before. The following command line tools and programs will help you to verify if some problems exist within your Domain and the Domain Controllers.

Read More …

http://blogs.msmvps.com/mweber/2012/07/30/upgrading-an-active-directory-domain-from-windows-server-2003-or-windows-server-2003-r2-to-windows-server-2012/

 

 

 

 

SCCM Design Steps – Explained in Detail

$
0
0

SCCM Design Steps – Explained in Detail

Today,  in this post we will see how to design a SCCM Environment . Using this post you may design your  SCCM design document . To create a SCCM Environment , it is very important that we have some detailed information . For the sake of simplicity , we will use a simple example here .

read more …

http://abheekdutta.com/2013/10/15/sccm-design-steps-explained-in-detail-part-1/

http://abheekdutta.com/2013/10/16/sccm-design-steps-explained-in-detail-part-2/

 

System Center Configuration Manager 2016 Technical Preview

HUGE powershell inventory script for ConfigMgr 2012

$
0
0

This is quite huge for me, because I’ve been working on this script for the last two months and finally decided, after sending the latest version to some “beta testers” and getting some nice results, to release this ConfigMgr script to public, although I know that it’s still far from complete.

Document your Configuration Manager 2012 site

You should know your environment and what happens in it and you should be able to show people what exactly has been configured in your environment.

http://www.david-obrien.net/2013/06/huge-powershell-inventory-script-for-configmgr-2012/

 

SCCM 2012 Programs running as 32bit on 64bit OS

$
0
0

I recently had a problem when I was trying to run a SCCM program (not application) that called a simple Windows command (the command was wbadmin.exe – but this is irrelevant) in SCCM 2012 on a Windows 2008 R2 64bit Operating System client. I noticed it was failing and in the execmgr.log there was a line stating “Running “C:Windows\system32\wbadmin.exe” delete systemstatebackup -keepversions:16 -quiet with 32bitLauncher” and also the Ccm32BitLauncher.log showed activity.

http://blog.danovich.com.au/category/sms-sccm/


SCCM 2012 Organisational requirements gathering

$
0
0

Organisational requirements gathering


Is there a requirement to encrypt traffic between clients and server, keeping in mind this will add considerable complexity to the deployment? (eg status messages, policy, content)
Is there a requirement to encrypt server to server traffic?
Are their many roaming clients or are they fairly static?
Is there a requirement to run the SCCM reporting website from a dedicated virtual website on a separate dedicated server? (Reduce attack surface)
What are the Disaster Recovery (fault tolerance) requirements? (Acceptable downtime for each SCCM feature?)
Any internet-based machines or home users etc?
Which SCCM features are required? Can these be prioritised?
Feature Description Required? Priority Internet-based client management Internet-based client management allows you to manage Configuration Manager 2007 clients when they are not connected to your company network but have a standard Internet connection. For more information about Internet-based client management in Configuration Manager 2007, see Overview of Internet-Based Client Management. Inventory Hardware inventory provides system information (such as available disk space, processor type, and operating system) about each computer. Software inventory provides information such as file types and versions present on client computers. For more information about inventory, see Overview of Inventory. Reporting Reporting helps you to gather, organize, and present information about client computers and devices, site status, and other Configuration Manager operations in your organization. For more information about reporting, see Reporting in Configuration Manager. SQL Reporting Services Applies only to Configuration Manager 2007 R2 or later. SQL Reporting Services provides a set of tools and resources that help you use the advanced reporting capabilities of SQL
From http://blog.danovich.com.au
From http://blog.danovich.com.au
Reporting Services from the Configuration Manager console. For more information about SQL Reporting Services, see Overview of SQL Reporting Services. Software distribution Software distribution allows you to create packages and programs to install software and run scripts on clients. For more information about software distribution, see Software Distribution Overview. Software updates Software updates provide a set of tools and resources that can help manage the complex task of tracking and applying software updates to client computers in an enterprise. For more information about software updates in Configuration Manager 2007, see Overview of Software Updates. Software metering Software metering allows you to collect detailed information about the programs that you choose to monitor. This includes program and usage information, such as user name, file description, start time, and end time. For more information about software metering, see Software Metering in Configuration Manager. Device management Device management enables mobile device discovery and management for mobile devices running Windows Mobile software for Pocket PC and Smartphone platforms and Windows CE. For more information about device management in Configuration Manager 2007, see Overview of Mobile Device Management. Operating system deployment Operating system deployment enables you to create images that can be deployed to computers using bootable media such as CD set or DVD. The image, in a WIM format file, contains the desired version of a Windows operating system and can also include any line-of-business applications that need to be installed on the computer. For more information about operating system deployment in Configuration Manager 2007, see Overview of Operating System Deployment. Asset Intelligence Asset Intelligence enhances the inventory capabilities of Configuration Manager to help manage software in use and software license management in the enterprise. For more information about Asset Intelligence, see Overview of Asset Intelligence. Desired configuration management Desired configuration management allows you to assess the compliance of computers with regard to a number of configurations, such as whether the correct Windows operating system versions are installed and configured
From http://blog.danovich.com.au
From http://blog.danovich.com.au
appropriately, whether all required applications are installed and configured correctly, whether optional applications are configured appropriately, and whether prohibited applications are installed. Additionally, you can check for compliance with software updates and security settings. For more information about desired configuration management in Configuration Manager 2007, see Overview of Desired Configuration Management. Network Access Protection Network Access Protection (NAP) works with health policies and network policies on a Network Policy Server, allowing you to select which software updates will be evaluated for compliance. The policies on the Network Policy Server then determine whether clients are granted full or limited network access and whether non-compliant clients are made compliant (remediated). For more information about Network Access Protection in Configuration Manager 2007, see Overview of Network Access Protection. Wake On LAN Wake On LAN can send wake-up transmissions prior to the configured deadline for a software update deployment or at the configured schedule of a mandatory advertisement (which can be for software distribution or a task sequence). For more information about Wake On LAN in Configuration Manager 2007, see Overview of Wake On LAN. Remote tools Remote tools allow you to remotely access and operate client computers that have the remote tools client agent components installed. For more information about remote tools in Configuration Manager 2007, see Overview of Remote Tools. Out of band management Applies only to Configuration Manager 2007 SP1 and later. Out of band management allows you to manage desktop computers independently from the Configuration Manager client or the computer operating system. It requires computers that have the Intel vPro chip set and a version of Intel Active Management Technology (Intel AMT) that is supported by Configuration Manager. For more information about out of band management in Configuration Manager 2007 SP1, see Overview of Out of Band Management.
How many applications (roughly) do we want to automatically distribute?
Do power management policies need to be defined and implemented as part of the scope?
From http://blog.danovich.com.au
From http://blog.danovich.com.au
Is there a current test / pilot environment? Is there a requirement to build this in test and well as production?
Who will need access to the SCCM reports? (Software inventory, hardware inventory etc)
At this stage are there any requirements for customized reports that are not provided by SCCM out of the box?
What are the documentation deliverables? (As-built documents, etc)
Can we identify a list of clients for a production pilot? Who would handle communication with pilot users?
What is the requirement for targeting specific groups of machines? Do we want to target machine by location, business unit, company, type, OS, etc and is this reflected in the structure of Active Directory OUs or groups?
Can we obtain one of each type of hardware model?
Is there a requirement for maintenance windows for collections?
Are all software packages required across all sites?
Have Microsoft licenses only been obtained via the volume licensing (EA) programs or have they also been obtained via retail, Original Equipment Manufacturer (OEM) or other software licensee sales channels?
Have all Microsoft licenses that have been acquired as part of a merger or takeover been transferred onto the one EA?
Is there a requirement to use SQL Reporting Services instead of the SCCM reporting method? (Subscription to reports via email, export into a variety of popular formats)
Is there a requirement for mobile device management? (eg Windows Mobile devices)
Is there a requirement for Network Access Protection?
Will the OSD process require backup of data via User State Migration Tool (USMT)?
Is there a requirement for Wake-on-LAN (WOL) to allow patching and deployments automation during non-business hours?
Do we want to try and integrate into the current CMDB or start fresh?
What is the primary reason for implementing SCCM?
From http://blog.danovich.com.au
From http://blog.danovich.com.au
What is the expected timeline for moving to SCCM? Milestones?
What are the expectations for growth or contraction? Are there significant planned changes in the size or usage patterns of applications or locations?
Should any particular groups of clients be excluded from our reporting?
Any regulatory requirements that require total separation of an environment from other environments?
How should software be deployed? Should it be silent in the background? Should it be silent but give a user notification? Should the user have to go to Add / Remove programs and select to install it?
From first contact with the Help Desk, what is the organisation’s expected software deployment time?
Is there any requirement for a multilingual environment?
What is the preference for OS deployment? (PXE network boot, USB stick, CD/DVD boot)
How often should hardware and software inventories be run?
Is there a requirement for Out of Band Management (vPro technology)?
Is server refresh in scope of the project?
SLAs?
What is the expectation for Operating System deployment? (Zero touch, lite touch etc)
What Operating Systems will be deployed? (Workstation and server Oss, 32bit / 64bit)
Is there a requirement for Application Virtualization (App-V)?
Are there existing servers that SCCM could utilize (eg DC, F&P servers) on sites with 10+ computers on them?
From http://blog.danovich.com.au
From http://blog.danovich.com.au
Is there a requirement for SCCM to handle firmware and driver updates? (eg Dell and HP)
What is the current process for deploying an SOE to workstation and servers? Is there an existing WIM file and what version? Ghost file? Reference computer?
Process for getting quotes on server hardware?
What training would you like to see as part of the SCCM implementation and who is the audience?
At what time during the week would you expect most computers to be online?
What is the typical usage trend? Monday to Friday 9-5? 24/7?
What operating system versions (including service pack) are potentially in the environment?
Should I be running this exercise with anyone else?
Is there a requirement for a self service portal?
Are both servers and workstation class machines to be targeted?
From http://blog.danovich.com.au
From http://blog.danovich.com.au
Technical requirements gatheTechnical requirements gathe Technical requirements gathe Technical requirements gathe Technical requirements gathe Technical requirements gathe Technical requirements gatheTechnical requirements gathe Technical requirements gathe Technical requirements gathe ring ring
Are there any internet-based clients to be managed? (eg home machines) Will there be any in the foreseeable future?
What operating system versions (including service pack) are potentially in the environment?
Any issue with performing AD schema extensions? (Policy or technical roadblocks)
Understanding of AD sites and comparison to subnets
Are all potential client IP addresses covered by AD site subnets?
Are there any workgroup or DMZ clients to be managed?
Are there any VPN clients? If so, what connection speeds? (Broadband, dialup). Do they have their own AD site?
Are there multiple Active Directory forests or domains? What are the trust relationships between them?
Overview of DNS and WINS (if used) configuration (Most server-initiated actions, such as client push installation and remote control, connect to clients by using the short name of the computer instead of the fully qualified domain name (FQDNA). Configuring the site systems with DNS search suffixes for client computers that are in a different forest is one method to ensure that the short name resolves successfully. To discover a computer resource in another forest by using Active Directory System Discovery, there must be a forest trust between the site server forest and the forest where the computer is located.)
Firewall configuration – is there a firewall between the potential server locations and potential clients?
Will the server need to be manually configured with the DNS suffixes of potential clients or is this configured automatically?
Will the potential clients need to be manually configured with the DNS suffixes of the server or is this configured automatically?
Can you roughly estimate the size of the source installation files for software that will be automatically deployed?
Is there an existing stable PKI / Certificate Services infrastructure in place?
From http://blog.danovich.com.au
From http://blog.danovich.com.au
How are the server operating systems deployed? Is it ok to run Windows 2008 R2 64-bit?
Where will SCCM be administered from? (SCCM server, admin workstation, admin servers?)
Are we using IPv4 or IPv6 in the environment? Network protocols in use? (TCP/IP, IPv6, NetBEUI, IPX/SPX, AppleTalk, DLC)
Network diagram if available
Number of physical sites
Link speed between sites
Link speed from data centre to remote sites
Rough number of clients on each site
Extranet sites (or any sites that are firewalled off from the regular network), any isolated sites?
Any known capacity issues? (will we need to throttle SCCM communications?)
Firewall layout (eg are there firewalls between sites or between data centre and potential clients)
VPN configuration, if any
IP address schema (all of the IP subnets in use across the network)
DMZ or perimeter network layout
Any IPS systems that may impact the SCCM network discovery process
Any issue with client installation methods? (Client Push Installation, WSUS Based, Group Policy Installation, Logon Script Installation, Manual Installation)
Is the Windows software firewall (or any other vendor software firewall) enabled / installed on potential clients?
How many of the above applications need to be repackaged to allow automatic distribution?
How many different workstation hardware models are there in the environment that we may potential deploy Operating Systems to?
From http://blog.danovich.com.au
From http://blog.danovich.com.au
What is the expectation for Operating System deployment? (Zero touch, lite touch etc)
What Operating Systems will be deployed? (Workstation and server OSs)
What tools are currently used for client remote control? Is the plan to continue using existing tools?
Is there currently a workstation and server SOE?
Is there a requirement for traffic throttling across network links?
Is the existing SQL cluster resourced adequately to support the SCCM database?
Is there an existing server we can use for Fallback Status Point (FSP)?
Is there a requirement to manually approve clients that are discovered or is it ok to automatically approve all discovered computers?
Do all potential clients meet the OS minimum requirement levels (http://technet.microsoft.com/en-us/library/ee344146.aspx) and also have a ADMIN$ share? Remote registry service running?
Any issue with SCCM installation automatically upgrading client software:
o Microsoft Background Intelligent Transfer Service (BITS) version 2.5
o Windows Installer version 3.1.4000.2435
o Windows Update Agent version 7.0.6000.363
o Microsoft Core XML Services (MSXML) version 6.0.3883.0
o Windows Management Instrumentation (WMI) Redistributable Components version 5.2.3790.1830
o Microsoft Remote Differential Compression (RDC)
Is there going to be enough space on clients for SCCM temporary installation files and then cache?
Who should be alerted when there are errors within SCCM?
Is there a requirement for Application Virtualization (App-V)? – App-V reference card available.
Are there existing servers that SCCM could utilize (eg DC, F&P servers) on sites with 10+ computers on them?
How is (Microsoft and other vendors) patch management currently handled? (WSUS?) Any challenges with this? Success rate? Automatic approval? Administrator intervention?
From http://blog.danovich.com.au
From http://blog.danovich.com.au
Is there a requirement for SCCM to handle firmware and driver updates? (eg Dell and HP)
What is the current process for deploying an SOE to workstation and servers? Is there an existing WIM file and what version? Ghost file? Reference computer?
Is there currently a driver catalogue for use with OS deployment?
What would be the maximum number of router hops a client device could potentially be from the SCCM server?
Does internet access from the SCCM server require authenticated access?
Number of servers and clients at each location
Network usage and traffic patterns? (Peak times etc)
Are there any other systems management products in the environment?
Server naming conventions?
Process for getting quotes on server hardware?
Are Group Policy objects needed to be defined for the MOE?
Can we apply organisation-wide exclusions to antivirus scanning?
Where / how to download and store volume licensing products?
From http://blog.danovich.com.au
From http://blog.danovich.com.au
Technical prerequisitesTechnical prerequisites Technical prerequisites Technical prerequisites Technical prerequisites Technical prerequisites Technical prerequisites
The following is a list of technical prerequisites that need to be met before SCCM deployment can begin:
‘Enterprise Admins’ permissions ‘Schema Admins’ permissions Ability to perform Schema extension Ability to use ADSI edit to add ‘System Management’ container in AD SQL instance (default or named), preferably clustered. Named pipes and TCP/IP network protocol communication is required (configured in SQL Server Configuration Manager under Network Configuration). SQL 2005 SP3+. Sql Server Windows Authentication Mode. If clustered, machine account of the primary site server needs to be in the local administrators group of each of the client nodes. The sysadmin SQL server role need to be granted to the user account running the SCCM setup. Admin rights to the SQL server computer Permissions to create Active Directory groups Permissions to add SRV record to DNS Required service accounts:
o Client push installation account – Account or accounts with local administrator permissions to all potential clients (can be new or existing) – can be local accounts or domain accounts or combination of both
 This account does not require the right to log on locally
o Network Access account – service account used to provided clients with access to files on distribution points
 The password for the network access account is limited to 38 characters or less
 This account does not require interactive logon rights
o Site Address Account – will be require if we need to connect to a site in a different forest
o Domain joining account – account with permissions to join a computer to the domain – used when deploying new operating systems
 Do not assign this account interactive logon permissions
 Do not use the Network Access account for this account
o Proxy account – credentials needed for SCCM to connect to the Internet via a proxy server requiring authenticated access Internet access from the SCCM primary server (via proxy is fine) Ability to create empty file named no_sms_on_drive.sms at the root folder of any drive that you want to prevent SCCM from installing files on Availability of all hardware model types for MOE development

Multiple SCCM 2012 R2 OSD related Errors and Solutions

$
0
0

Open file security warning prompt SCCM OSD

If you are receiving open file security warning when running a script or an application within SCCM OSD task sequence that can be disabled using turning off the open file security warning using registry keys.

The following registry keys will disable the Open file security warning;
One REG key is required to be added to Current user.
REG ADD “HKU\Default\Environment” /V SEE_MASK_NOZONECHECKS /T REG_SZ /D 1 /F
Second REG key is required to add to Local Machine;
REG ADD “HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Environment” /V SEE_MASK_NOZONECHECKS /T REG_SZ /D 1 /F

Adding a registry key to local machine is easy and straight forward. However, adding to a current user registry key bit a tricky task for few.
I will show how to add the current user and as well as local machine keys without any issues;

1. Open the task sequence in edit mode
2. Create a run command line step then copy the below command;
REG LOAD HKU\Default C:\Users\Default\NTUSER.DAT

This will mount default user registry keys from NTUSER.DAT to HKEY Users\Default key

3. Create a 2nd command line step then copy the below command;
REG ADD “HKU\Default\Environment” /V SEE_MASK_NOZONECHECKS /T REG_SZ /D 1 /F

This will add registry value to the default user profile

4. Create a 3rd command line step then copy the below command;
REG UNLOAD HKU\Default

This will unmount the NTUSER.DAT file which we have mounted in step 2

5. Create a 4th command line step then copy the below command;
REG ADD “HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Environment” /V SEE_MASK_NOZONECHECKS /T REG_SZ /D 1 /F

This will add the SEE_MASK_NOZONECHECKS key and value to the local machine.
Now save the task sequence and test the deployment.

Warning: The certificate associated with this media will expire in 2 days. A valid certificate is required for the duration of a boot media based deployment. Do you wish to continue?

As the msg indicated, the certificate assign to the media about to expire or expired. If this is a boot media, we have no choice to renew the certificate but re-create the new media.
Normally when you create a boot media, the certificate is valid for one year from the date of creation. This can be increased or decreased while creating the media.

If you getting the msg when you are using pxe boot then you need to identify the missing or expired certificate then create a new one. That will fix the issue.

When you are deploying an Operating System using SCCM task sequence you may notice that the options under Make available to the following is grayed out and by default the value is set to Only Configuration Manager clients.

You will see this behaviour because the newly created task sequence doesn’t have an associated boot image.

To fix this issue, go to the task sequence which you are trying to deploy then right click then open the properties.
Under the advanced tab, tick Use a boot image then browse to the required boot image.
Now, all available for options for OSD task sequence deployment options will be visible.

I have installed a new secondary site and everything else configured as per standards and everything working as it should. However when started testing Operating System deployment I have received
An error occurred while retrieving policy for this computer (0×80070057). For more information, contact your system administrator or helpdesk operator

When I have reviewed the smsts.log, I found below error;
MP Location returned an empty site code
CCM::SMSMessaging::CLibSMSMPLocation::RequestMPLocation failed; 0×80004005
Setting wizard error: An error occurred while retrieving policy for this computer (0×80070057). For more information, contact your system administrator or helpdesk operator.

As a starting point;
- The machine is getting IP from DHCP
- Boundary and boundary groups configured correctly
- OSD works fine in other sites
- Used BootMedia instead of PxE

Initially I have created the boot media using Dynamic Media. This time I have created Site-based media then tested again.

That worked without giving any error.
So when you have multiple sites, if you are using boot media to boot into the task sequence use Site based media option when creating the boot media.

File security warning C:\Windows\System32\osdsetuphook.exe

You may receive File security warning for C:\Windows\System32\osdsetuphook.exe when running SCCM OSD task sequence.

You most likely will get this message in OSD Results and Branding stage.

In my observation, you receive open file security warning, when the task sequence is set to run ‘Access content directly from a distribution point when needed by the running task sequence’.

If you change this option to ‘Download content locally when needed by running task sequence’, the open file security will go away and the task sequence complete without any msg.

We can address this issue in multiple ways;
- Change the deployment options as mentioned above
- Disable the open file security and then re-enable at the end
- Copy the scripts locally, then launch the scripts using the local paths

task seqeunce failed with error code 0×00000645

I have received this error when i am converting  server edition from one to other.

To resolve task sequence error 0×00000645, make sure you have entered the correct edition (/Set-Edition) with correct client product key.
For full list of client product keys, please visit technet @ https://technet.microsoft.com/en-us/library/jj612867.aspx

How to extend SCCM task sequence error dialog timeout?

By default if a task sequence fails the error msg will be on the screen for 15 min, then the system will reboot. Which means if we are not watching the build progress, we will lose the log files and may need to do re-start the whole build again.

However, using a SMSTSErrorDialogTimeout task sequence variable we can extend the duration of the task sequence error msg timeout.

First create a step in the beginning of your task sequence and on the Set Task Sequence variable step;
Name: Add a desired name
Task Sequence Variable: SMSTSErrorDialogTimeout
Value: Enter the value (in Seconds) how long you want to keep the window open

Now the task sequence error dialog will show for extended duration as below;

That’s it. Next time if the task sequence fails, it will wait for 12 hours before it closes the error msg window.

Server build automation using SCCM task sequence

In this article I will explain about the server operating system deployment task sequence, the advantages of zero-touch operating system task sequence, how the task sequence works, configurable tasks in the task sequence etc…
I wont be detailing on how to create each and every step of the task sequence. I believe every SCCM or SOE designer knows how to create a operating system deployment (OSD) task sequence.

So below is the sample task sequence which we will be using to deploy a server operating system (2008 R2 Std, 2008 R2 Ent, 2008 DataCenter, 2012 R2 Std, 2012 R2 Ess, 2012 R2 DataCenter, etc..).

What is server operating system task sequence?
Server build task sequence is another user driven (not really but…) SCCM task sequence which will be used to automate all the steps involved in building a server with the help of SCCM, MDT, HTA and various scripts.
Because of the automated tasks all the servers built using this method will have same configuration regardless who builds the server.
We can adopt the similar approach for server migrations, without loosing the data.

What are the advantages of build automation using SCCM task sequence?
As like any other automation, the build process simplifies all the steps involved in building a server.
It will reduce the manpower and increase the product quality. The task sequence will reduce bad builds by eliminating the dependency on the engineers. As all the tasks are automated and will take only 2 min of engineer’s time for each build. This will reduce the cost per server build drastically.
Using the OSD task sequence we can apply various types of operating systems to VM’s and as well as to the physical servers.

How is this deployment works?
By default SCCM OSD task sequence with MDT does most of the tasks. To extend the task sequence capabilities further we will use scripts in the background and HTA file in the front end, for the engineer to choose the options.
On initial reboot, the engineer will choose to Pxe boot. As soon as the task sequence initialised, an hta file will be launched, which will look as below;

This HTA file is the key for complete automation. The engineer will choose options as required with in the HTA.
The key points to note on HTA is;
Machine name is mandatory and with minimum length requirements
This field can be customised for length, acceptable characters etc…
Select Operating System type to choose desired OS
We can add more options if required. By default the task sequence will install Server 2008 R2 STD
- Select server roles will only install by selection
If none selected, no server role will be installed
- Select additional software step allows the engineer to select other optional software
- Start OS Deployment button will be greyed out if the server name is not entered as required

Each and every selection runs a separate script to set a custom task sequence variable. This custom task sequence variable will be used to execute the step when running the task sequence.

What other things we can configure?
This is an endless question, however we can configure most of the tasks which you can do with a script.

What is next?
Well, start writing up HLD, finalise with LLD, Develop the solution based on LLD, automate all the tasks then start deploying.

For OS deployments to end user devices, please read this article

Sample SCCM Task Sequence for Windows Server 2008 R2 Deploy

Below is the screenshot for a sample SCCM task sequence for Windows Server 2008 R2 Deploy;

Sample SCCM Task Sequence for Windows Server 2008 R2 Build and Capture

Below is the screenshot for a sample SCCM task sequence for Windows Server 2008 R2 Build and Capture;

Windows could not configure one or more system components SCCM OSD

Windows could not configure one or more system components. To install Window, restart the computer and then restart the installation.

If you are building new model laptop (in my case Dell E7240, 7250,7450 etc) you may have received this message after the applying the drivers and upon the first reboot in SCCM OSD.

The reason for this error is, one of the driver / driver application requires Kernel-Mode Driver Framework (KMDF).

To resolve this issue, you need to find out which driver is causing the problem then remove that driver from the driver package. In my case (for Dells) Intel Dynamic Platform Thermal Framework driver caused the problem issue.
Now, create 2 additional packages, one for Kernel-Mode Driver Framework (KMDF) and another one for offending driver application.
In the task sequence create an application installation step then first add Kernel-Mode Driver Framework (KMDF) then add a restart step. After the restart add the application installation step and add the offending driver package.

This will resolve the Windows could not configure one or more system components. To install Window, restart the computer and then restart the installation error and the SCCM OSD task sequence will continue.

Sample SCCM Task Sequence for Windows 10 Deploy

Below is the screenshot for a sample SCCM task sequence for Windows 10 Deploy;

Sample SCCM Task Sequence for Windows 10 Build and Capture

Below is the screenshot for a sample SCCM task sequence for Windows 10 Build and Capture;

Activate Windows using MAK key using SCCM task sequence

If you have handful of Kiosk or public facing machines in your organisation, then I am sure you will run into windows activation issues.
As these machines hardly talk to the corporate network so they cannot reach KMS server.
To overcome this issue, we need to use MAK key activation.
So to automate this process we can create another task sequence using your existing deploy task sequence then remove answer file (if you have one) at Apply Operating System Image step then modify Apply Windows Settings step;
1. Add MAK key on Apply Windows Settings step

2. Add activation step anywhere after Setup Windows and Configuration Manager step
To active the windows Add a Run Command Line step, then add following command
cscript.exe C:\Windows\System32\Slmgr.vbs /ato

That’s it.
Once the OS deployment is complete, the windows already activated.

Few things to remember;
- If activation step is not added then, the MAK key will be added to the machine. However, it will show 3 days until automatic activation.

- If the task sequence is running from offline media and without internet access, then the step will fail.
To mitigate the task sequence failure select continue on error on the activation step.

Sample SCCM Task Sequence for Windows 7 Deploy with MAK

Below is the screenshot for a sample SCCM task sequence for Windows 7 Deploy with MAK key activation;
Below is the screenshot for a sample SCCM task sequence for Windows 7 Deploy;

Sample SCCM Task Sequence for Windows 7 Build and Capture

Below is the screenshot for a sample SCCM task sequence for Windows 7 Build and Capture;
The machine will restart as soon as displaying “preparing network connections” in WinPE when deploying Operating System deployment using SCCM 2012 task sequence.
This happens mainly when re-imaging machine specially after a motherboard replacement.
Reviewing SMSTS.log (From X:\Windows\Temp\SMSTSlog\) will show the following error msg.
reply has no message header marker
Failed to get client identity (80004005)
failed to request client

If we check the date and time of failed event in the log file, it will have a wrong date and time.
In my test environment it showed as 01/01/2013. Correct the date and time then test.
This time it should work without any issue.

WMI query for computer model

Most of the time it is important to verify the model number of a machine  when creating WMI query in SCCM OSD task sequence.
There are two main methods we can choose to use in WMI query to filter the model.
One is Model which will work for most of the vendors or hardware manufactures.
However if you are using Lenovo, I highly recommend to use the version query, as the model query will be different to the base model of the system. Read this for further information.

So the command line for computer model WMI query is;
WMIC computerproduct get model

Command line for computer model version WMI query is;
WMIC csproduct get version

Window could not parse or process the unattend answer file for pass

While testing Windows 10 deployment using SCCM, after applying the image and drivers on the first reboot I have received;

Window could not parse or process the unattend answer file for pass [specialize].
The settings specified in the answer file cannot be applied.
The error was detected while processing settings for component [Microsoft-Windows-Shell-Setup].

I m not using an answer file for this deployment. The only thing i have added to the Windows 10 deploy task sequence is the product key.
I have re-checked the product key and it was an incorrect key for this version of Windows 10. Once I have corrected the key, the task sequence worked fine.

Note;
We can deploy Windows 10 using SCCM deploy task sequence without a product key and also without an unattended answer file. However the task sequence will prompt for product key while configuring the windows.
To over come the product window popup issue, add the product key to the Apply Windows Settings step in the task sequence.

Product key for Windows 10 Enterprise Technical preview is;
NKJFK-GPHP7-G8C3J-P6JXR-HQRJR

Ref: http://venusingireddy.blogspot.ca/search/label/OSD%20Task%20Sequence

SCCM 2012 Custom reports

$
0
0

SCCM Custom reports

This post provides various SQL queries to generate custom SCCM reports (07/12) for reporting purposes.
All of the queries from this post has tested in my lab. If you see any errors in a report please post a comment so I can fix them.
This page will be updated periodically.
Please note; When you are copying a SQL query from a web browser you need to make sure that the browser is not adding any extra characters.

SCCM Report for all the applications created in SCCM:
This report is for all the applications available in SCCM. Please note this is NOT for an inventory from client devices.
The following report provides;
- Application Name
- Application Vendor and
- Application Version
*********************************************************************
SELECT CI_UniqueID, DisplayName AS [Application Name], Manufacturer AS [Application Vendor], SoftwareVersion AS [Software Version]
FROM dbo.fn_ListLatestApplicationCIs(1033)
*********************************************************************
SCCM Report for all the packages created in SCCM :
This report provides list of packages created in SCCM. This report is not an inventory for installed applications on the client devices.
The report contains;
- Package Name
- Vendor and
- Version
*************************************************************************
SELECT Program.PackageID, Package.Name AS ‘Package Name’, Package.Manufacturer AS Vendor, Package.Version
FROM v_Program AS Program LEFT OUTER JOIN
v_Package AS Package ON Package.PackageID = Program.PackageID
ORDER BY Program.PackageID
*************************************************************************
SCCM Report for Installed versions of Google Earth:
The following report will provide all installed versions of Google Earth along with the version number, user name and machien name.
*****************************************************************************
SELECT DISTINCT sys.Netbios_Name0 AS [Machine Name], sys.User_Name0 AS [User Name],
arp.DisplayName0 AS [MS Project version]
FROM       v_R_System AS sys
INNER JOIN v_Add_Remove_Programs AS arp ON sys.ResourceID = arp.ResourceID
WHERE      (arp.DisplayName0 LIKE ‘%Google Earth%’)
*****************************************************************************

SCCM Report for WSUS location:
Below SQL query will provide WSUS location from the devices.Please read the full article here.
***********************************************
SELECT     v_GS_COMPUTER_SYSTEM.Name0 AS [Machine Name], WSUSLocation_DATA.WUServer00 AS [WSUS Server Name]
FROM         WSUSLocation_DATA CROSS JOIN
v_GS_COMPUTER_SYSTEM
GROUP BY v_GS_COMPUTER_SYSTEM.Name0, WSUSLocation_DATA.WUServer00, WSUSLocation_DATA.WUStatusServer00
************************************************
SCCM Report for all installed versions of Project Professional:
This report will provide all the installed versions of Microsoft Project Professional including Machine names and user names.
The user name is addition to the SCCM out of box report
***********************************************************************************
SELECT DISTINCT sys.Netbios_Name0 AS [Machine Name], sys.User_Name0 AS [User Name],
arp.DisplayName0 AS [MS Project version]
FROM       v_R_System AS sys
INNER JOIN v_Add_Remove_Programs AS arp ON sys.ResourceID = arp.ResourceID
WHERE      (arp.DisplayName0 LIKE ‘%Microsoft Project Professional%’)
************************************************************************************

SCCM Report for all software installed for all computers:
The following report will give you all the installed software’s (applications from the environment) and removing the installed hotfixes, security updates and any other updates. If you want to remove any other product from the report, use DisplayName0 NOT LIKE ‘Product name %’.
All the inventoried software will be grouped using displayname, version and publisher to remove all the duplicate records.
**************************************************************************
SELECT    DisplayName0 AS [Product Name], Version0 AS [Product Version], Publisher0 AS [Publisher Name]
FROM      v_GS_ADD_REMOVE_PROGRAMS
WHERE     (DisplayName0 NOT LIKE ‘Hotfix for %’) AND (DisplayName0 NOT LIKE ‘Security Update for %’) AND (DisplayName0 NOT               LIKE ‘Update %’)
GROUP BY  DisplayName0, Version0, Publisher0
**************************************************************************
SCCM Report for local printers:
Below SCCM report provides all the attached local printer information from a machine.

Collecting local printer inventory involves 2 tasks.

1. Enable Printer Device (Win32_Printer) class in Hardware Inventory classes from \Administration\Overview\Client Settings
2. Run below report to collect the inventoried printer information in a report format
Below report provides all the attached printer information excluding;
- Microsoft XPS Document Writer
- Adobe PDF Converter
- Microsoft Shared Fax Driver
- TP Output Gateway
- pdfFactory
********************************************************************************************************
SELECT  SYS.Netbios_Name0 AS [Computer Name], printer.DriverName0 AS [Printer Name], printer.PortName0 AS [Port Type],
printer.Location0 AS [Device Location]
FROM    v_GS_PRINTER_DEVICE AS printer INNER JOIN
v_R_System AS SYS ON SYS.ResourceID = printer.ResourceID
WHERE   (NOT (printer.DriverName0 LIKE ‘Microsoft XPS Document Writer’)) AND
(NOT (printer.DriverName0 LIKE ‘Adobe PDF Converter’)) AND
(NOT (printer.DriverName0 LIKE ‘Microsoft Shared Fax Driver’)) AND
(NOT (printer.DriverName0 LIKE ‘%TP Output Gateway%’)) AND
(NOT (printer.DriverName0 LIKE ‘%pdfFactory%’))
ORDER BY [Computer Name]
***********************************************************************************************************
SCCM Report workstation architecture:
Previously I have created this report to list all the devices and architecture.
However, the following report will list only workstations (excludes servers) with hostname and device OS architecture type.
********************************************************************************************
SELECT     Name AS [Machine Name], SystemType AS [System Architecture]
FROM         vWorkstationStatus
WHERE     (SystemRole = ‘Workstation’)
********************************************************************************************

SCCM Report CRM versions:
Below report will provide information of;
- Host Name
- Operating System
- CRM Product
- Publisher of the product
- Product Version
- Product Installed date
****************************************************************************************************
SELECT DISTINCT
v_R_System_Valid.Netbios_Name0 AS [Computer Name], v_GS_OPERATING_SYSTEM.Caption0 AS [Operating System],
v_GS_INSTALLED_SOFTWARE_CATEGORIZED.NormalizedName AS [Product Name],
CASE WHEN (v_GS_INSTALLED_SOFTWARE_CATEGORIZED.NormalizedPublisher IS NULL OR
v_GS_INSTALLED_SOFTWARE_CATEGORIZED.NormalizedPublisher = ‘-1′)
THEN ‘Unknown’ ELSE v_GS_INSTALLED_SOFTWARE_CATEGORIZED.NormalizedPublisher END AS Publisher,
CASE WHEN (v_GS_INSTALLED_SOFTWARE_CATEGORIZED.NormalizedVersion IS NULL OR
v_GS_INSTALLED_SOFTWARE_CATEGORIZED.NormalizedVersion = ‘-1′)
THEN ‘Unknown’ ELSE v_GS_INSTALLED_SOFTWARE_CATEGORIZED.NormalizedVersion END AS Version,
CASE WHEN (v_GS_INSTALLED_SOFTWARE_CATEGORIZED.InstallDate0 IS NULL)
THEN ‘Unknown’ ELSE CAST(v_GS_INSTALLED_SOFTWARE_CATEGORIZED.InstallDate0 AS varchar) END AS [Install Date]
FROM         v_GS_INSTALLED_SOFTWARE_CATEGORIZED INNER JOIN
v_R_System_Valid ON v_R_System_Valid.ResourceID = v_GS_INSTALLED_SOFTWARE_CATEGORIZED.ResourceID INNER JOIN
v_GS_OPERATING_SYSTEM ON v_GS_INSTALLED_SOFTWARE_CATEGORIZED.ResourceID = v_GS_OPERATING_SYSTEM.ResourceID
WHERE     (v_GS_OPERATING_SYSTEM.Caption0 LIKE ‘%server%’) AND (v_GS_INSTALLED_SOFTWARE_CATEGORIZED.NormalizedName LIKE ‘%CRM%’)
ORDER BY [Computer Name], [Product Name], Publisher, Version

*************************************************************************************************
SCCM Report for Exchange Server Versions:.
Below report will provide information of;
- Host Name
- Operating System
- Exchange Server Product
- Publisher of the product
- Product Version
- Product Installed date
****************************************************************************************************
SELECT DISTINCT
v_R_System_Valid.Netbios_Name0 AS [Computer Name], v_GS_OPERATING_SYSTEM.Caption0 AS [Operating System],
v_GS_INSTALLED_SOFTWARE_CATEGORIZED.NormalizedName AS [Product Name],
CASE WHEN (v_GS_INSTALLED_SOFTWARE_CATEGORIZED.NormalizedPublisher IS NULL OR
v_GS_INSTALLED_SOFTWARE_CATEGORIZED.NormalizedPublisher = ‘-1′)
THEN ‘Unknown’ ELSE v_GS_INSTALLED_SOFTWARE_CATEGORIZED.NormalizedPublisher END AS Publisher,
CASE WHEN (v_GS_INSTALLED_SOFTWARE_CATEGORIZED.NormalizedVersion IS NULL OR
v_GS_INSTALLED_SOFTWARE_CATEGORIZED.NormalizedVersion = ‘-1′)
THEN ‘Unknown’ ELSE v_GS_INSTALLED_SOFTWARE_CATEGORIZED.NormalizedVersion END AS Version,
CASE WHEN (v_GS_INSTALLED_SOFTWARE_CATEGORIZED.InstallDate0 IS NULL)
THEN ‘Unknown’ ELSE CAST(v_GS_INSTALLED_SOFTWARE_CATEGORIZED.InstallDate0 AS varchar) END AS [Install Date]
FROM         v_GS_INSTALLED_SOFTWARE_CATEGORIZED INNER JOIN
v_R_System_Valid ON v_R_System_Valid.ResourceID = v_GS_INSTALLED_SOFTWARE_CATEGORIZED.ResourceID INNER JOIN
v_GS_OPERATING_SYSTEM ON v_GS_INSTALLED_SOFTWARE_CATEGORIZED.ResourceID = v_GS_OPERATING_SYSTEM.ResourceID
WHERE     (v_GS_OPERATING_SYSTEM.Caption0 LIKE ‘%server%’) AND (v_GS_INSTALLED_SOFTWARE_CATEGORIZED.NormalizedName LIKE N’%exchange%’) AND
(NOT (v_GS_INSTALLED_SOFTWARE_CATEGORIZED.NormalizedName LIKE N’%commvault%’)) AND
(NOT (v_GS_INSTALLED_SOFTWARE_CATEGORIZED.NormalizedName LIKE N’%Signatures%’)) AND
(NOT (v_GS_INSTALLED_SOFTWARE_CATEGORIZED.NormalizedName LIKE N’%updates%’)) AND
(NOT (v_GS_INSTALLED_SOFTWARE_CATEGORIZED.NormalizedName LIKE N’%Plug-in%’)) AND
(NOT (v_GS_INSTALLED_SOFTWARE_CATEGORIZED.NormalizedName LIKE N’%Monitor%’)) AND
(NOT (v_GS_INSTALLED_SOFTWARE_CATEGORIZED.NormalizedName LIKE N’%Connector%’)) AND
(NOT (v_GS_INSTALLED_SOFTWARE_CATEGORIZED.NormalizedName LIKE N’% Language%’))
ORDER BY [Computer Name], [Product Name], Publisher, Version
*************************************************************************************************
SCCM Report for SQL Versions:
Below report will provide information of;
- Host Name
- Operating System
- SQL Product
- Publisher of the product
- Product Version
- Product Installed date
***********************************************************************************
SELECT DISTINCT
v_R_System_Valid.Netbios_Name0 AS [Computer Name], v_GS_OPERATING_SYSTEM.Caption0 AS [Operating System],
v_GS_INSTALLED_SOFTWARE_CATEGORIZED.NormalizedName AS [Product Name],
CASE WHEN (v_GS_INSTALLED_SOFTWARE_CATEGORIZED.NormalizedPublisher IS NULL OR
v_GS_INSTALLED_SOFTWARE_CATEGORIZED.NormalizedPublisher = ‘-1′)
THEN ‘Unknown’ ELSE v_GS_INSTALLED_SOFTWARE_CATEGORIZED.NormalizedPublisher END AS Publisher,
CASE WHEN (v_GS_INSTALLED_SOFTWARE_CATEGORIZED.NormalizedVersion IS NULL OR
v_GS_INSTALLED_SOFTWARE_CATEGORIZED.NormalizedVersion = ‘-1′)
THEN ‘Unknown’ ELSE v_GS_INSTALLED_SOFTWARE_CATEGORIZED.NormalizedVersion END AS Version,
CASE WHEN (v_GS_INSTALLED_SOFTWARE_CATEGORIZED.InstallDate0 IS NULL)
THEN ‘Unknown’ ELSE CAST(v_GS_INSTALLED_SOFTWARE_CATEGORIZED.InstallDate0 AS varchar) END AS [Install Date]
FROM         v_GS_INSTALLED_SOFTWARE_CATEGORIZED INNER JOIN
v_R_System_Valid ON v_R_System_Valid.ResourceID = v_GS_INSTALLED_SOFTWARE_CATEGORIZED.ResourceID INNER JOIN
v_GS_OPERATING_SYSTEM ON v_GS_INSTALLED_SOFTWARE_CATEGORIZED.ResourceID = v_GS_OPERATING_SYSTEM.ResourceID
WHERE     (v_GS_OPERATING_SYSTEM.Caption0 LIKE ‘%server%’) AND (v_GS_INSTALLED_SOFTWARE_CATEGORIZED.NormalizedName LIKE ‘%SQL%’) AND
(v_GS_INSTALLED_SOFTWARE_CATEGORIZED.NormalizedName NOT LIKE ‘%arcserve%’) AND
(v_GS_INSTALLED_SOFTWARE_CATEGORIZED.NormalizedName NOT LIKE ‘%hotfix%’) AND
(v_GS_INSTALLED_SOFTWARE_CATEGORIZED.NormalizedName NOT LIKE ‘%books%’) AND
(v_GS_INSTALLED_SOFTWARE_CATEGORIZED.NormalizedName NOT LIKE ‘%Tools%’) AND
(v_GS_INSTALLED_SOFTWARE_CATEGORIZED.NormalizedName NOT LIKE ‘%Compatibility%’) AND
(v_GS_INSTALLED_SOFTWARE_CATEGORIZED.NormalizedName NOT LIKE ‘%setup support%’)
ORDER BY [Computer Name], [Product Name], Publisher, Version

***********************************************************************************
SCCM Report for list all the tables from SCCM database:
The following query gives all the available tables (including custom hardware inventory classes).
****************************************************
Select distinct table_name,COLUMN_NAME From Information_Schema.columns
where table_name LIKE (‘v_%’)
Order by table_name
****************************************************
SCCM Report for Machine name, MAC address and IPAddress:
*****************************************************************
SELECT     v_RA_System_ResourceNames.Resource_Names0 AS [Resource name], v_RA_System_MACAddresses.MAC_Addresses0 AS [MAC Address],
v_RA_System_IPAddresses.IP_Addresses0 AS [IP Address]
FROM         v_RA_System_MACAddresses INNER JOIN
v_RA_System_ResourceNames ON v_RA_System_MACAddresses.ResourceID = v_RA_System_ResourceNames.ResourceID INNER JOIN
v_RA_System_IPAddresses ON v_RA_System_MACAddresses.ResourceID = v_RA_System_IPAddresses.ResourceID
***************************************************************
SCCM Report for Installed versions of IE:
****************************************************************
Select Distinct
sys.Netbios_Name0,
sys.User_Domain0,
sys.User_Name0,

     arp.Displayname0
FROM v_R_System sys
JOIN  v_Add_Remove_Programs arp ON sys.ResourceID = arp.ResourceID
WHERE ARP.DisplayName0 like ‘%Internet Explorer%’ and (DisplayName0 not like ‘%Security Update%’ and DisplayName0 not like ‘%Update For Windows%’ and DisplayName0 not like ‘Hotfix%’)

*******************************************************************
*****An updated article published here to get all the versions of Internet explorer.*****
SCCM report for Operating System:
Following custom SCCM report provides Machine NetBIOS name, user domain, user name, Operating system (Windows 7)
*********************************************************************************
SELECT Distinct
sys.Netbios_Name0,
sys.User_Domain0,
sys.User_Name0,
os.caption0
FROM
v_R_System sys
INNER JOIN
v_GS_COMPUTER_SYSTEM cs on sys.resourceID = cs.resourceID
INNER JOIN
V_GS_Operating_system os on sys.resourceID = os.resourceID
WHERE
os.caption0 like ‘%Windows 7%’
**********************************************************************************
The os.caption0 can be changed any operating system (%Windows XP% or %Windows 7% ) or all the windows operating systems by %Windows%.

The below SCCM Custom report is useful to identify installed application based on display name in Add-remove programs and generate a report
**********************************************************************************
Select
sys.Netbios_Name0,
sys.User_Domain0,
sys.User_Name0,
sys.Operating_System_Name_and0,
arp.DisplayName0,
ARP.Version0
FROM
v_R_System sys
JOIN v_Add_Remove_Programs arp ON sys.ResourceID = arp.ResourceID
WHERE
Displayname0 like ‘%Application Name%’
*********************************************************************************
Example:
Creating a report for Adobe Reader.
*********************************************************************************
Select
sys.Netbios_Name0,
sys.User_Domain0,
sys.User_Name0,
sys.Operating_System_Name_and0,
arp.DisplayName0,
ARP.Version0
FROM
v_R_System sys
JOIN v_Add_Remove_Programs arp ON sys.ResourceID = arp.ResourceID
WHERE
Displayname0 like ‘%Adobe Reader%’
********************************************************************************
SCCM report for Computer Manufacturer, Model and total number of machines:
  The following query gives details of computer Manufacturer, model and total number of machines in the environment.

*********************************************************************************

SELECT Manufacturer0, Model0, Count(Model0) AS ‘Count’
FROM dbo.v_GS_COMPUTER_SYSTEM
GROUP BY Manufacturer0,Model0
ORDER BY Model0
*********************************************************************************

This query gives all the packages status on all the Distribution Points.

*********************************************************************************
SELECT DPS.PackageID, PCK.Name, PCK.SourceSite,
DPS.ServerNALPath, DPS.InstallStatus
FROM v_PackageStatusDistPointsSumm DPS INNER JOIN v_Package PCK
ON DPS.PackageID = PCK.PackageID
ORDER BY DPS.PackageID
********************************************************************
SCCM Report for all installed applications for a collection:
This report is a simplified version of in build Software 01A – Summary of installed software in a specific collection.
In this report we can get software title, Software version and number of instances installed in that collection.
********************************************************************
SELECT  A.DisplayName0, A.Version0, Count(*) AS ‘Count’

FROM v_GS_ADD_REMOVE_PROGRAMS A, v_GS_COMPUTER_SYSTEM B, v_FullCollectionMembership C

WHERE A.ResourceID = B.ResourceID
AND A.ResourceID = C.ResourceID
AND A.DisplayName0 NOT LIKE ‘Hotfix for %’
AND A.DisplayName0 NOT LIKE ‘Security Update for %’
AND A.DisplayName0 NOT LIKE ‘Update %’
AND CollectionID = @collection

GROUP BY A.DisplayName0, A.Version0
ORDER BY A.DisplayName0
********************************************************************

SCCM report for MachineName Make Model Architecture Username RAM:
Below Report provides;   Machine name,  Manufacturer, Model Architecture, User name and Memory (RAM)size
***********************************************************
SELECT    v_GS_COMPUTER_SYSTEM.Name0 AS [Machine Name],
v_GS_COMPUTER_SYSTEM.Manufacturer0 AS Manufacturer, v_GS_COMPUTER_SYSTEM.Model0 AS Model,
v_GS_COMPUTER_SYSTEM.SystemType0 AS Architecture, v_GS_COMPUTER_SYSTEM.UserName0 AS Username,
          v_GS_PHYSICAL_MEMORY.Capacity0 AS [RAM Size]
FROM      v_GS_COMPUTER_SYSTEM
INNER JOIN v_GS_PHYSICAL_MEMORY ON v_GS_COMPUTER_SYSTEM.ResourceID = v_GS_PHYSICAL_MEMORY.ResourceID
************************************************************

SCCM report for File sharing /Torrent software:
This reporting query is useful to get all installed versions of P2P / file sharing software’s in the environment.
*******************************************************************
Select
SD.Name0,
sys1.User_Name0,
SF.FileName
From v_r_system sys1
join v_gs_softwarefile sf on sf.resourceid=sys1.resourceid
left join v_R_User usr on usr.User_Name0=sys1.User_Name0
left Join v_R_System SD on SD.ResourceId = SF.ResourceId
Where SF.FileName Like ‘%Azureus%’
Or SF.FileName Like ‘%BitComet%’
Or SF.FileName Like ‘%BitLord%’
Or SF.FileName Like ‘%BitTornado%’
Or SF.FileName Like ‘%BitTorrent%’
Or SF.FileName Like ‘%Shareaza%’
Or SF.FileName Like ‘%Utorrent%’
Or SF.FileName Like ‘%eDonkey%’
Or SF.FileName Like ‘%Emule%’
Or SF.FileName Like ‘%Kazaa%’
Or SF.FileName Like ‘%LimeWire%’
Order By SD.Name0, SF.FileName, sys1.User_Name0

*******************************************************
You can add more to it by adding Or SF.FileName Like ‘%<Application name>%’

This report will include Name,  whether the device laptop or desktop,  Serial no, Manufacturer, Model, OS, SP level, last logged on user, total memory and total HDD
****************************************************************
SELECT  distinct
CS.Manufacturer0 as ‘Manufacturer’,
CS.Model0 as ‘model’,
CASE
WHEN ES.ChassisTypes0 in (’3′,’4′,’6′,’7′,’15′) THEN ‘Desktop’
WHEN ES.ChassisTypes0 in (’8′,’9′,’10′,’21′) THEN ‘Laptop’
Else ‘Unknown’
END as ‘Description’,
BIOS.SerialNumber0 as ‘Bios serial’,
CS.name0 as ‘Computer Name’,
RAM.TotalPhysicalMemory0 as ‘Total Memory’,
sum(isnull(LDisk.Size0,’0′)) as ‘Hardrive Size’,
OS.Caption0 as ‘OS’,
CSDVersion0 as ‘Service Pack’,
CS.UserName0 as ‘User’,
CS.domain0 as ‘Domain’
from
v_GS_COMPUTER_SYSTEM CS right join v_GS_PC_BIOS BIOS on BIOS.ResourceID = CS.ResourceID
right join v_GS_SYSTEM SYS on SYS.ResourceID = CS.ResourceID
right join v_GS_OPERATING_SYSTEM OS on OS.ResourceID = CS.ResourceID
right join V_GS_X86_PC_MEMORY RAM on RAM.ResourceID = CS.ResourceID
right join v_GS_Logical_Disk LDisk on LDisk.ResourceID = CS.ResourceID
INNER JOIN dbo.v_GS_SYSTEM_ENCLOSURE ES on SYS.ResourceID = ES.ResourceID
where
LDisk.DriveType0 =3
group by
CS.Manufacturer0,
CS.Model0,
ChassisTypes0,
BIOS.SerialNumber0,
CS.Name0,
RAM.TotalPhysicalMemory0,
OS.Caption0,
CSDVersion0,
CS.Username0,
CS.domain0
**********************************************************************
SCCM report for Computer name and MAC address:
This query is handy when we want to get MAC address for a machine in the environment, especially when we see No task sequence is available error in PXE boot.
***********************************************************************
Select
v_R_System.Netbios_Name0, SYS.User_Name0,
v_RA_System_MACAddresses.MAC_Addresses0
from
v_R_System, v_R_System SYS, v_RA_System_MACaddresses,
v_fullcollectionmembership
where
v_ra_system_macaddresses.resourceid=v_r_system.resourceid
and v_fullcollectionmembership.resourceid=v_ra_system_macaddresses.resourceid
and SYS.resourceid=v_r_system.resourceid
************************************************************************

SCCM report for computer Make Model count:
The following report will display the computer manufacturer, Model and Number of machines in the environment.
*************************************************************************
SELECT
Manufacturer0 AS Manufacturer,
Model0 AS Model,
COUNT (Model0) AS Count
FROM v_GS_COMPUTER_SYSTEM
GROUP BY Model0, Manufacturer0
ORDER BY Manufacturer0, Model0
*************************************************************************

SCCM Report for Server Name and Properties:
Following report provides Server name, Operating System version, manufacturer, Model Memory, Processor type, OS Install data

************************************************************************
SELECT distinct
CS.name0 as ‘Server Name’,
OS.Caption0 as ‘OS’,
CU.Manufacturer0 as ‘Manufacturer’,
CU.Model0 as ‘Model’,
RAM.TotalPhysicalMemory0/1024 as [RAM (MB)],
processor.Name0 as ‘Processor’,
BIOS.ReleaseDate0 as ‘BIOS Manufacture Date’,
OS.InstallDate0 as ‘OS Install Date’
from
v_R_System CS
FULL join v_GS_PC_BIOS BIOS on BIOS.ResourceID = CS.ResourceID
FULL join v_GS_OPERATING_SYSTEM OS on OS.ResourceID = CS.ResourceID
FULL join V_GS_X86_PC_MEMORY RAM on RAM.ResourceID = CS.ResourceID
FULL JOIN v_GS_PROCESSOR Processor on Processor.ResourceID=CS.ResourceID
FULL join v_GS_SYSTEM_ENCLOSURE SE on SE.ResourceID = CS.ResourceID
FULL join v_GS_COMPUTER_SYSTEM CU on CU.ResourceID = CS.ResourceID
WHERE CS.Operating_System_Name_and0 LIKE ‘%nt%server%’ and CS.Client0 = 1
group by
CS.Name0,
OS.Caption0,
CU.Manufacturer0,
CU.Model0,
RAM.TotalPhysicalMemory0,
BIOS.ReleaseDate0,
OS.InstallDate0,
Processor.Name0,
BIOS.ReleaseDate0
Order by CS.Name0
**************************************************************************

SCCM report for Computers in a Specific sub net:
Following SCCM report provide Machine name, IP Subnet, IP Address Default gateway

**********************************************
SELECT Distinct SYS.Name0, IPSUB.IP_Subnets0, NETW.IPSubnet0,
NETW.IPAddress0, NETW.DefaultIPGateway0
FROM  v_RA_System_IPSubnets IPSUB, v_R_System SYS,
v_Network_DATA_Serialized NETW
WHERE SYS.ResourceID = IPSUB.ResourceID AND
SYS.ResourceID = NETW.ResourceID AND
NETW.IPAddress0 IS NOT NULL AND
IP_Subnets0 LIKE @variable
Order by SYS.Name0
On prompt;
Name: variable
SQL:
begin
 if (@__filterwildcard = ”)
   Select Distinct IPSUB.IP_Subnets0 from v_RA_System_IPSubnets IPSUB  order by IPSUB.IP_Subnets0
 else
   Select Distinct IPSUB.IP_Subnets0 from v_RA_System_IPSubnets IPSUB
   WHERE IPSUB.IP_Subnets0 like @__filterwildcard
   order by IPSUB.IP_Subnets0
end
**************************************************
Following report provides machine name, Operating System, Service pack level, Serial number, Model, memory IP address for a specific collection
************************************************************************
select distinct v_R_System_Valid.Netbios_Name0 AS [Computer Name],
v_GS_OPERATING_SYSTEM.Caption0 AS [Operating System],
v_GS_OPERATING_SYSTEM.CSDVersion0 AS [Service Pack Level],
v_GS_SYSTEM_ENCLOSURE_UNIQUE.SerialNumber0 AS [Serial Number],
v_GS_COMPUTER_SYSTEM.Model0 AS [Model],
v_GS_X86_PC_MEMORY.TotalPhysicalMemory0 AS [Memory (KBytes)],
v_RA_System_IPAddresses.IP_Addresses0
from v_R_System_Valid
inner join v_GS_OPERATING_SYSTEM on (v_GS_OPERATING_SYSTEM.ResourceID = v_R_System_Valid.ResourceID)
left join v_GS_SYSTEM_ENCLOSURE_UNIQUE on (v_GS_SYSTEM_ENCLOSURE_UNIQUE.ResourceID = v_R_System_Valid.ResourceID)
inner join v_GS_COMPUTER_SYSTEM on (v_GS_COMPUTER_SYSTEM.ResourceID = v_R_System_Valid.ResourceID)
inner join v_GS_X86_PC_MEMORY on (v_GS_X86_PC_MEMORY.ResourceID = v_R_System_Valid.ResourceID)
inner join v_GS_PROCESSOR on (v_GS_PROCESSOR.ResourceID = v_R_System_Valid.ResourceID)
inner join v_FullCollectionMembership on (v_FullCollectionMembership.ResourceID = v_R_System_Valid.ResourceID)
left join v_Site on (v_FullCollectionMembership.SiteCode = v_Site.SiteCode)
inner join v_GS_LOGICAL_DISK on (v_GS_LOGICAL_DISK.ResourceID = v_R_System_Valid.ResourceID) and v_GS_LOGICAL_DISK.DeviceID0=SUBSTRING(v_GS_OPERATING_SYSTEM.WindowsDirectory0,1,2)
left join v_GS_SYSTEM_CONSOLE_USAGE_MAXGROUP on (v_GS_SYSTEM_CONSOLE_USAGE_MAXGROUP.ResourceID = v_R_System_Valid.ResourceID)
left join v_RA_System_IPAddresses on (v_FullCollectionMembership.ResourceID = v_RA_System_IPAddresses.ResourceID)
Where v_FullCollectionMembership.CollectionID = @COLLID
Order by [Computer Name]
On prompt:
Name: COLLID
SQL statement:
Select CollectionID,Name from v_Collection
********************************************
SCCM report for Server name and Operating System version:
This simple and easy report provides all the server names in the organization and provides the Operating System details.
******************************************************
Select sys.name0,
cs.manufacturer0,
os.caption0
from v_R_System sys
INNER JOIN v_GS_COMPUTER_SYSTEM cs on sys.resourceID = cs.resourceID
INNER JOIN V_GS_Operating_system os on sys.resourceID = os.resourceID
Where os.caption0 like ‘%server%’
******************************************************
SCCM report for Collection names and count of Sub Collections:
Following SCCM custom report provides names of all the collections where they have sub collections and count of the sub collections for each collection.
************************************************************
select top 10000
coll.CollectionID, coll.Name, Count (csc.parentCollectionID) as [Count of subcollections]
from v_collection coll
inner join v_CollectToSubCollect csc on coll.CollectionID = csc.parentCollectionID
group by coll.CollectionID, coll.Name
*************************************************************
SCCM report for Computer make, model and count:
This report provides computer manufacture name, model and number of machines in the environment.
**************************************************************
SELECT     Manufacturer0, Model0, Count(Model0) AS ‘Count’
FROM         dbo.v_GS_COMPUTER_SYSTEM
GROUP BY Manufacturer0,Model0
ORDER BY Model0
***************************************************************
***************************************************************
SELECT     TOP (100) PERCENT DisplayName0, COUNT(DisplayName0) AS Total
FROM         dbo.v_GS_ADD_REMOVE_PROGRAMS
GROUP BY DisplayName0
HAVING      (DisplayName0 LIKE ‘Windows Internet Explorer%’)
***************************************************************
SCCM report for Distribution point last refresh time and last status time:
The following SCCM report provides SCCM package ID, Source site Last refresh time, Active status and last status time;
****************************************************************
SELECT  v_DistributionPoint.PackageID AS [Package ID],
v_DistributionPoint.SourceSite AS [Source Site],
v_DistributionPoint.LastRefreshTime AS [Last Refresh Time],
v_DistributionPoint.IsActive AS Active,
v_DistributionStatus.LastStatusTime AS [Last Status time]
FROM    v_DistributionPoint
CROSS JOIN v_DistributionStatus

****************************************************************

Below is a simple SQL query which provides Program Name, Package Name, Collection Name, Advertisement Name and Advertisement expiration Time. **********************************************************************
SELECT AdvertisementName AS [Advertisement Name], ProgramName AS [Program Name], PackageName AS [PKG Name], CollectionName AS [Collection Name], ExpirationTime AS [Adv Exp Time]
FROM v_AdvertisementInfo **********************************************************************
SCCMReport for Machine name and SMS GUID:
SCCM Report for Machine name and SMS GUID
 *********************************************************************
SELECT     Name0 AS [Machine Name], SMSID0 AS [SMS GUID]
FROM   v_GS_SYSTEM
*********************************************************************  
SCCM Report for PC count  based on manufacturer:
The following SCCM report will provide PC count by grouping the machine manufacturer name then adds a friendly name and target to a particular collection.
Example:
Group all the Virtual machines as VM’s, all the Toshiba machines as Laptops and Hewitt Packard machines as Laptops from All systems collection.
********************************************************************************
SELECT     CASE WHEN Manufacturer0 LIKE ‘VMware, Inc.’ THEN ‘VMs’ WHEN Manufacturer0 LIKE ‘Toshiba’ THEN ‘Laptops’ WHEN Manufacturer0 LIKE ‘Hewlett-Packard’ THEN
                       ’Desktops’ ELSE ‘Null’ END AS [Device Type], v_GS_COMPUTER_SYSTEM.Manufacturer0 AS Manufacturer, COUNT(v_GS_COMPUTER_SYSTEM.Manufacturer0)
                      AS Count
FROM         v_FullCollectionMembership AS FCM INNER JOIN
                      v_GS_COMPUTER_SYSTEM ON FCM.ResourceID = v_GS_COMPUTER_SYSTEM.ResourceID
WHERE     (FCM.CollectionID = ‘SMS00001′)
GROUP BY v_GS_COMPUTER_SYSTEM.Manufacturer0
**********************************************************************************
You need to change the manufacturer details and collection ID where you want run against.
If you want to run for all systems then you don’t need to modify the collection ID.
 This reports provides Machine name, Machine manufacturer, Model, Serial number, AD Site, Last hardware scan, Discovery time, user name and user full name.
********************************************************************
SELECT     sys.Netbios_Name0 AS AssetID, v_GS_COMPUTER_SYSTEM.Manufacturer0 AS Make, v_GS_COMPUTER_SYSTEM.Model0 AS Model,
v_GS_PC_BIOS.SerialNumber0 AS [Serial Number], sys.AD_Site_Name0 AS [AD Site Location], vWorkstationStatus.LastHardwareScan AS [Last Hardware Scan], MAX(v_AgentDiscoveries.AgentTime) AS Discovery_time, sys.User_Name0 AS [User Name], usr.Full_User_Name0 AS [Full User Name]
FROM v_AgentDiscoveries
INNER JOIN v_R_User AS usr ON v_AgentDiscoveries.ResourceId = usr.ResourceID RIGHT OUTER JOIN v_GS_PC_BIOS INNER JOIN       v_R_System_Valid AS sys ON v_GS_PC_BIOS.ResourceID = sys.ResourceID INNER JOIN v_GS_COMPUTER_SYSTEM ON sys.ResourceID = v_GS_COMPUTER_SYSTEM.ResourceID INNER JOIN                vWorkstationStatus ON v_GS_COMPUTER_SYSTEM.ResourceID = vWorkstationStatus.ResourceID ON usr.User_Name0 = sys.User_Name0
GROUP BY sys.Netbios_Name0, sys.User_Name0, sys.AD_Site_Name0, v_GS_PC_BIOS.SerialNumber0, v_GS_COMPUTER_SYSTEM.Manufacturer0,
v_GS_COMPUTER_SYSTEM.Model0, vWorkstationStatus.LastHardwareScan, usr.Full_User_Name0
**********************************************************************
This report will provide machine name and the installed SCCM client version
******************************************************************
SELECT     Netbios_Name0 AS [Machine Name], Client_Version0 AS [Client Version]
FROM         v_R_System
  ******************************************************************
This report provides the Machine Name and when OS deployed to that machine.
************************************************************************
SELECT v_R_System.Name0 AS [Machine Name], v_GS_OPERATING_SYSTEM.InstallDate0 AS [OS Deployed On]
FROM   v_GS_OPERATING_SYSTEM
INNER JOIN
v_R_System ON v_GS_OPERATING_SYSTEM.ResourceID = v_R_System.ResourceID
************************************************************************
SCCM report for a specific application machine name make model:
Below SQL query will provide a installed specific application, Machine Name, Machine Manufacturer and Machine model.
Change the Application name to a desired app name.
**************************************************************************
SELECT     arp.DisplayName0 AS [Application Name], arp.Version0 AS [App Version], v_GS_COMPUTER_SYSTEM.Name0 AS [Machine Name],
                      v_GS_COMPUTER_SYSTEM.Manufacturer0 AS [Manufacturer Name], v_GS_COMPUTER_SYSTEM.Model0 AS [Machine Model]
FROM         v_Add_Remove_Programs AS arp INNER JOIN
                      v_GS_COMPUTER_SYSTEM ON arp.ResourceID = v_GS_COMPUTER_SYSTEM.ResourceID
WHERE     (arp.DisplayName0 LIKE ‘%Firefox%’)
**************************************************************************
SCCM report for App-v client:
The following SCCM report will provide Machine Name, User ID, User domain, App –V client name and Client version excluding the language pack.
*************************************************************************
SELECT     sys.Netbios_Name0 AS [Machine Name], sys.User_Name0 AS [User ID], sys.User_Domain0 AS [User Domain], arp.DisplayName0 AS [App Name], arp.Version0 AS [App Version]
FROM v_R_System AS sys INNER JOIN v_Add_Remove_Programs AS arp ON sys.ResourceID = arp.ResourceID
WHERE
(arp.DisplayName0 = ‘Microsoft Application Virtualization Desktop Client’) OR
(arp.DisplayName0 = ‘Microsoft App-V 5.0 Client UI’) OR
(arp.DisplayName0 = ‘Microsoft Application Virtualization (App-V) Client 5.0 Service Pack 2′) AND
(arp.DisplayName0 NOT LIKE ‘%Microsoft Application Virtualization Client en-US Language Pack x64%’)
****************************************************************************
ref: http://venusingireddy.blogspot.com.au/2013/09/sccm-custom-reports.html

SCCM 2012 R2 various WINPE issues OSD related

$
0
0

Your PC needs to restart. Please hold down the power button. Error Code: 0x0000005D

When you start booting up a VM using WinePE4 boot image on a physical box where “No-Execute Memory Protection”  is enabled in BIOS then you will receive:
“Your PC needs to restart. Please hold down the power button. Error Code: 0x0000005D”
I have installed VMWare Workstation on HP Proliant server and PxE booted the Vmware workstation using WinPE4. As soon the machine powered up I have received “Your PC needs to restart. Please hold down the power button. Error Code: 0x0000005D”
I have another HP Proliant server and I can boot the VM’s without any issues.
After checking in the BIOS and quick Google lead my way to the solution.
The culprit was “No-Execute Memory Protection” setting in the BIOS has enabled.
Once I disable this option, everything started working.

Your pc ran into a problem and needs to restart. We’re just collecting some error info, and then we’ll restart for you. (0% complete) If you’d like to know more, you can search online later for this error: HAL_INITIALIZATION_FAILED

Your pc ran into a problem and needs to restart. We’re just collecting some error info, and then we’ll restart for you. (0% complete)
If you’d like to know more, you can search online later for this error: HAL_INITIALIZATION_FAILED
Using WinPE4 to build a virtual machine under VMWare workstations lower then version 8, you will most likely get above error.
This error is related to hyper-v compatible hardware or you cannot enable hardware virtualization on the hardware where you are running the VM’s.
Solution:
You need to find a machine where you can install VMWare workstation 8. This error MSG will disappear, once you use VMWare workstation 8 or above.
More information can be found @ http://support.microsoft.com/kb/2814803

Media creation failed with error message: ‘The Parameter is incorrect’

When creating boot media in SCCM 2012, you may have received error
Media creation failed with error message: ‘The Parameter is incorrect’
Refer to Create TsMedia.log file to find more details.

If you look in the TsMedia.log file, you can see similar msg;

Failed to find content ID packageID in Content library <SMSPKG$>SCCMContentLib

Solution:
Typically you see above error msg, when the content is not distributed to the DP. if you check the SCCMContentLib folder, you will be missing the package reference which mentioned in TsMedia.log file.

Re-distributing or updating the contents on the DP’s will fix the issue.

TsMedia.log file can be located at
C:\Program Files (x86)\Microsoft Configuration Manager\AdminConsole\AdminUILog
ref: http://venusingireddy.blogspot.com.au/search/label/WinPE

SCCM 2012 R2 Collection queries

$
0
0

SCCM Collection queries

This post provides various WQL queries to generate custom SCCM collections (07/12) to group the machines in a collection.
All of the queries from this post have tested in my lab. If you see any errors in a query please post a comment so I can fix them.
This page will be updated periodically.
Please note; when you are copying a query from a web browser you need to make sure that the browser is not adding any extra characters.

SCCM Collection query for all workstations:
The following WQL query for SCCM will poplulate all the workstaions into one collection.
This query will be useful when
*******************************************************************************
select SMS_R_SYSTEM.ResourceID,SMS_R_SYSTEM.ResourceType,SMS_R_SYSTEM.Name,SMS_R_SYSTEM.SMSUniqueIdentifier,SMS_R_SYSTEM.ResourceDomainORWorkgroup,SMS_R_SYSTEM.Client from SMS_R_System where SMS_R_System.OperatingSystemNameandVersion like “Microsoft Windows NT Workstation%”
*******************************************************************************

This WQL query will create a SCCM collection for all the 64 bit Workstations in the organization.
To create a collection for 32-bit workstations, replace the “x64” with “X32”.
*********************************************************************************
select SMS_R_SYSTEM.ResourceID,SMS_R_SYSTEM.ResourceType,SMS_R_SYSTEM.Name,SMS_R_SYSTEM.SMSUniqueIdentifier,SMS_R_SYSTEM.ResourceDomainORWorkgroup,SMS_R_SYSTEM.Client from SMS_R_System inner join SMS_G_System_SYSTEM on SMS_G_System_SYSTEM.ResourceId = SMS_R_System.ResourceId where SMS_G_System_SYSTEM.SystemType = “X64-based PC”
*********************************************************************************
This WQL query will create a SCCM collection for all the VMWare Workstations in the organization.
To create a collection for specific model workstation, replace the “VMware virtual Platform” with a model name of the machine you want to create a collection.
*********************************************************************************
select SMS_R_SYSTEM.ResourceID,SMS_R_SYSTEM.ResourceType,SMS_R_SYSTEM.Name,SMS_R_SYSTEM.SMSUniqueIdentifier,SMS_R_SYSTEM.ResourceDomainORWorkgroup,SMS_R_SYSTEM.Client from SMS_R_System inner join SMS_G_System_COMPUTER_SYSTEM on SMS_G_System_COMPUTER_SYSTEM.ResourceId = SMS_R_System.ResourceId where SMS_G_System_COMPUTER_SYSTEM.Model like “VMware Virtual Platform”
*********************************************************************************
This query makes a collection of all Windows 7 machines on different domains.
You can rename DOMAIN1 to DOMAIN5 as you needed.
************************************************************
select SMS_R_SYSTEM.ResourceID,SMS_R_SYSTEM.ResourceType,SMS_R_SYSTEM.Name,SMS_R_SYSTEM.SMSUniqueIdentifier,SMS_R_SYSTEM.ResourceDomainORWorkgroup,SMS_R_SYSTEM.Client from SMS_R_System where
(SMS_R_System.ResourceDomainORWorkgroup like “DOMAIN1″ or SMS_R_System.ResourceDomainORWorkgroup like “DOMAIN2″ or SMS_R_System.ResourceDomainORWorkgroup like “DOMAIN3″ or SMS_R_System.ResourceDomainORWorkgroup like “DOMAIN4″ or SMS_R_System.ResourceDomainORWorkgroup like “DOMAIN5″) and SMS_R_System.OperatingSystemNameandVersion like “Microsoft Windows NT Workstation 6.1″
************************************************************ 
SCCM Collection for Windows 7 machines from a OU and multiple domains:
This WQL Query will create a collection for all Windows 7 machines with combination of OU and domains.

*********************************************************
select SMS_R_SYSTEM.ResourceID,SMS_R_SYSTEM.ResourceType,SMS_R_SYSTEM.Name,SMS_R_SYSTEM.SMSUniqueIdentifier,SMS_R_SYSTEM.ResourceDomainORWorkgroup,SMS_R_SYSTEM.Client from SMS_R_System where
(SMS_R_System.SystemOUName like “AD.YOURDOMAIN.COM/OU” or SMS_R_System.ResourceDomainORWorkgroup like “DOMAIN1″ or SMS_R_System.ResourceDomainORWorkgroup like “DOMAIN2″)and SMS_R_System.OperatingSystemNameandVersion like “Microsoft Windows NT Workstation 6.1″

*********************************************************

SCCM Collection for Laptops:

Below WQL query creates a collection for all the laptops in the environment based on the System Enclosure attribute and Chassis type.
*********************************************************
select SMS_R_SYSTEM.ResourceID,SMS_R_SYSTEM.ResourceType,SMS_R_SYSTEM.Name,SMS_R_SYSTEM.SMSUniqueIdentifier,SMS_R_SYSTEM.ResourceDomainORWorkgroup,SMS_R_SYSTEM.Client from SMS_R_System inner join SMS_G_System_SYSTEM_ENCLOSURE on SMS_G_System_SYSTEM_ENCLOSURE.ResourceId = SMS_R_System.ResourceId where SMS_G_System_SYSTEM_ENCLOSURE.ChassisTypes like “8 , 9, 10, 11, 12, 14, 18, 21″
**********************************************************
Below WQL query creates a collection for all the desktops in the environment based on the System Enclosure attribute and Chassis type.
***********************************************************
select SMS_R_SYSTEM.ResourceID,SMS_R_SYSTEM.ResourceType,SMS_R_SYSTEM.Name,SMS_R_SYSTEM.SMSUniqueIdentifier,SMS_R_SYSTEM.ResourceDomainORWorkgroup,SMS_R_SYSTEM.Client from SMS_R_System inner join SMS_G_System_SYSTEM_ENCLOSURE on SMS_G_System_SYSTEM_ENCLOSURE.ResourceID = SMS_R_System.ResourceId where SMS_G_System_SYSTEM_ENCLOSURE.ChassisTypes like “(’3′,’4′,’5′,’6′,’7′,’15′,’16′)”
************************************************************
Below WQL query creates a collection with all inactive machines for 90 days in the environment. The 90 days can be modified as required by editing the last line of the query.
*************************************************************
select SMS_R_SYSTEM.ResourceID,SMS_R_SYSTEM.ResourceType,SMS_R_SYSTEM.Name,SMS_R_SYSTEM.SMSUniqueIdentifier,SMS_R_SYSTEM.ResourceDomainORWorkgroup,SMS_R_SYSTEM.Client from SMS_R_System where SMS_R_System.Name in (select Name from SMS_R_System where ((DATEDIFF(day, SMS_R_SYSTEM.AgentTime, getdate()) >=90) and AgentName = “SMS_AD_SYSTEM_DISCOVERY_AGENT”)) and SMS_R_System.Name in (select Name from SMS_R_System where ((DATEDIFF(day, SMS_R_SYSTEM.AgentTime, getdate()) >=90) and AgentName = “Heartbeat Discovery”))
************************************************************* 
This is an easy WQL query to get the machine details which hasn’t been re-booted for 30 days.
We can change the 30 days at end of the statement to adjust desired days.
This query is targeted only for workstations such as XP, Vista and Windows 7.
*********************************************************
select SMS_R_SYSTEM.ResourceID,SMS_R_SYSTEM.ResourceType,SMS_R_SYSTEM.Name,SMS_R_SYSTEM.SMSUniqueIdentifier,SMS_R_SYSTEM.ResourceDomainORWorkgroup,SMS_R_SYSTEM.Client from SMS_R_System inner join SMS_G_System_OPERATING_SYSTEM on SMS_G_System_OPERATING_SYSTEM.ResourceID = SMS_R_System.ResourceId where (SMS_G_System_OPERATING_SYSTEM.Caption like “%xp%” or SMS_G_System_OPERATING_SYSTEM.Caption like “%vista%” or SMS_G_System_OPERATING_SYSTEM.Caption like “%windows 7%”) and (DateDiff(day, SMS_G_System_OPERATING_SYSTEM.LastBootUpTime, GetDate()) >30)
**********************************************************
The following SCCM Collection query is useful when you have many machines without SCCM Client on the client machines.
Just create a new collection using the below query;
***********************************************************
select R.ResourceID,R.ResourceType,R.Name,R.SMSUniqueIdentifier,R.ResourceDomainORWorkgroup,R.Client from SMS_R_System as r full join SMS_R_System as s1 on s1.ResourceId =   r.ResourceId full join SMS_R_System as s2 on s2.Name = s1.Name where s1.Name   = s2.Name and s1.ResourceId != s2.ResourceId  and R.Client = null
***********************************************************
The following WQL query will add all the machines with duplicate machine name.
***********************************************************
select R.ResourceID,R.ResourceType,R.Name,R.SMSUniqueIdentifier,R.ResourceDomainORWorkgroup,R.Client from SMS_R_System as r full join SMS_R_System as s1 on s1.ResourceId =   r.ResourceId full join SMS_R_System as s2 on s2.Name = s1.Name where s1.Name   = s2.Name and s1.ResourceId != s2.ResourceId  and R.Client = null

****************************************************************
SCCM Collection query computer name:

The following WQL query will add the machines to a collection based on their naming conventions. This query is useful if we want to only some machines to a collection using a query with starting names (ABC-XXXX) or machines named using business unit (HR-XXXXXX).
Change the values ( ABC and DEF ) as your requirements.
*************************************************************************
select SMS_R_SYSTEM.ResourceID,SMS_R_SYSTEM.ResourceType,SMS_R_SYSTEM.Name,SMS_R_SYSTEM.SMSUniqueIdentifier,SMS_R_SYSTEM.ResourceDomainORWorkgroup,SMS_R_SYSTEM.Client from SMS_R_System where SMS_R_System.Name like “%HR%” or SMS_R_System.Name like “%ABC%” or SMS_R_System.Name like “%DEF%”
**************************************************************************

How to become a IT Consultant and start earning 100$/hour

$
0
0

How to become a IT Consultant and start earning 100$/hour

Hello Guys,

I thought it would be a great idea to start about what I have experienced in the last 24 months and moved from 50$/hour to 100$/hour IT consultant.

Yes guys its quite possible and really easy to do.

All you need to is Dream Big and try your level best being focused on what you are most interested in your area of work, so if you like Citrix , learn it to the expert level meaning walk, talk and live in Citrix, and same for vmware or Microsoft products.

you don’t have to a ingenious in order to achieve this, just need to a smart focused and strategic approach.

The easiest way to master any technology is to learn from experts, take a training, and then teach it to others.

You can apply this formula to one technology as vmware or citrix – or you can apply the same formula to multiple technologies at the same time. In this way you chances to achieve your goals will be sooner then later.

I tried it and became successful and thats not all sky is limit ..

This is my first post is this series, very soon I’ll be sharing lots of success stories and how to’s and training, so that anyone who might be interested in becoming an IT Consultant , it will be very very easy shift of career.

In last few years following these techniques 100s of my students who ever totally not in IT, became IT consultants and earning healthy income.

if I can do it and they can do it why can’t you :)

I’ll see you in my next post

Syed Haider

www.facebook.com/canips

WHATSAPP WITHOUT INTERNET SCAM

$
0
0

Since a few days, many WhatsApp users have been broadcasting the message below –

” Celebrating Whatsapp Birthday ! Now Use Whatsapp Without Internet for Lifetime,Just Click below Link to Activate Now!- Click @ http://Whatsapp-Free.cf/ ”

– in the hope of getting WhatsApp without internet. While the WhatsApp app itself uses internet for all transmissions, it is impossible that visiting any link can enable any such offer for you whereby internet will no longer be needed to use WhatsApp.

We have visited the link and concluded that the people behind this scam are doing this for majorly two reasons – Firstly, to auto-share and broadcast this message on all your groups; and Secondly, to collect your data and use it for their profit.

Don’t  be fooled by such messages. In an attempt to gain a very small thing for free, you’re paying a lot more (by giving them your data), and that too, without getting anything in return.

We have informed the domain registrar responsible for .cf TLD domain registrations and they will be taking down the domain at www.whatsapp-free.cf shortly.


ConfigMgr 2012 Application Deployment By Example: User EXE Deployment

$
0
0

Scenario: Deploy an application using the new application deployment capabilities of ConfigMgr 2012.

Criteria:

  • Native install using EXE installer (instead of an MSI based installer)
  • Deploy to all users in a specific AD security group
  • Support uninstallation

The first nuance to the criteria is that we are deploying the application to users. For this to fully work properly, the application and application installer must support per-user installations. This is often not the case for EXE installers, but many do now support this. Without per-user installation support, the application will be available to every user on the system instead of just the user(s) we are deploying to. This may be acceptable, but is not the intent of this example. Accordingly, I have chosen FileZilla which does come in an EXE installer and does support per-user installation.

1. AD Targeting

Identify the users to deploy the application to and create an AD security group if necessary. For this, I will use an existing security group named “Bagginses” that contains Bilbo and Frodo:

SNAGHTML63e2e41

2. Resource Discovery

Ensure that Active Directory User Discovery and Active Directory Group Discovery are enabled and discovering the target users as well as the target group:

image

Once Active Directory Group Discovery runs, it stamps the security group membership on each user object contained in the discovered groups.image

3. Collection Targeting

Create a collection to contain just these users. Here’s the query for my “Bagginses” collection:

image

* Because Delta Discovery is enabled on both of my discovery methods and incremental updates is enabled on my collection, users newly added to the AD security group will automatically be added to the collection within about 15 minutes (5 minutes for delta discovery + 10 minutes for incremental updates). For this example, I created a new user and added them to the Bagginses collection; within less than 10 minutes, this new user was automatically in my collection – no updating or intervention needed. Note that enabling incremental updates on more than 300 collections is *not* recommended; incremental updates is a resource intensive task that will tax your site system if not carefully controlled.

4. Application Discovery

Install the application on a test system to ensure that you know the correct command-line to silently install the application per-user, to discover and test the silent uninstallation string, and to gather information on how to detect if the application is actually installed. Because this is a per-user install, make sure that you perform this test using a non-admin account and temporarily disable UAC so that auto-elevation does not get in the way.

These are three of the key, foundational features of the new application model in 2012: installation, uninstallation, and detection. If we were using an MSI, then no discovery is needed as these are all common for Windows Installers.

4a. Install command-line

Finding the correct switches for FileZilla was somewhat painful for a variety of reasons – poor documentation was the main one – but I finally settled on this for my install command-line:

FileZilla_3.5.3_win32-setup.exe /S /D=%appdata%\FileZilla\FTPClient

/S is for silent

/D is for target installation directory. This is a per-user install so going to the program files directory doesn’t line up with this requirement and would of course require a user account that is a member of the local Administrators group. A couple of other nuances with this option include the fact that the FileZilla installer UI doesn’t like environment variables (like %appdata%) and that the default FileZilla folder isFileZilla FTP Client (with spaces) but this command-line option didn’t like when I put quotes around the parameter so I had to compromise. Note that none of this has to do with Microsoft or ConfigMgr, but is still part of getting the task done and is why discovery and testing are important.

4b. Uninstall Command-line

This one was much easier because the FileZilla installer creates an uninstaller and a shortcut for it in the Start Menu so all I needed to do was use the command-line for the shortcut. This was also reflected in the registry at HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionUninstallFileZilla Client:

C:\Users\abcde\AppData\Roaming\FileZilla\FTPClient\uninstall.exe

One important change is to substitute the %appdata% environment variable for the corresponding part of the above path so that it is not user profile location specific and add the /S to make it silent:

%appdata%\FileZilla\FTPClient\uninstall.exe /S

4c. Detection

There are a variety of ways to detect whether an application is installed and so this may be subjective. For MSIs, this is as easy as querying the Windows Installer DB. For EXE based installers, there are a variety of ways to do it. In this case, I chose to do something similar to querying the Windows Installer DB: querying info displayed in Add/Remove programs (or the equivalent in Win 7). For FileZilla, this is the (user specific) registry key at
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Uninstall\FileZilla Client and the registry value named DisplayVersion under the same key to verify the version.

4d. Testing

At this p
oint, you should thoroughly test the above command-lines and application after installation to ensure it will work as expected.

5. Source File Preparation

Place the installation source files in your source repository, in this case, it’s just one file:FileZilla_3.5.3_win32-setup.exe. This location must be accessible via UNC to the site server where you are creating the application. For my environments, I always create a single, top-level shared folder with all things ConfigMgr available beneath it in a highly organized folder structure (more on that in another blog post).

Note: If the file was downloaded directly from the internet, it’s a good idea to remove any zone information in alternate data streams. This can be done with Explorer by opening the file properties and selecting Unblock, or by using streams.exe from SysInternals.

6. Application creation

Back in the ConfigMgr console, we’ll finally create out application.

– Navigate to Overview –> Application Management –> Applications in the Software Libraryworkspace.

– Choose Create Application from the ribbon bar (or right-click context menu).

– Fill in the information in the Create Application Wizard according to these screenshots customizing as appropriate:

SNAGHTMLa06c5f1 Select Manually specify the application information.
SNAGHTMLa05b3b9 Fill in the fields appropriately.
SNAGHTMLa0621a7 Fill in the fields appropriately.
SNAGHTMLa07b8d7 Create a new Deployment Type by selectingAdd…
SNAGHTMLa0b12b9 Select Script Installer (Native)
SNAGHTMLa0bfe6f Fill in the fields appropriately.
SNAGHTMLa643b80 Provide the UNC path to the installation source files. Fill in the two command lines from the discovery: install and uninstall. Note that although FileZilla is a 32-bit app, we don’t need to run the installer or uninstaller as a 32-bit process on Windows 64-bit systems because this installer is a separate 32-bit process that will place all of the information needed in non-redirected locations. A look at when this is necessary in a future post.
SNAGHTMLa3208ac Add a detection clause so that ConfigMgr can detect previously installed instances, ensure that a new installation completes successfully, ensure that an uninstallation completes successfully, and to reinstall applications that have somehow been remove from a system/user where they are required.
image Based on the discovery, we are going to use this simple detection rule. It’s possible to get very complex here and to support a pseudo self-healing like Windows Installer does; to do so you would add many more d
etections so that the application installer is run again if something is amiss like an executable or other files being missing.
SNAGHTMLa38a613 Fill in the fields appropriately. Ensure you leave it as Install for user.
image Nothing to see here, move along. There has been a lot of discussion on this one and some misleading information (some initially propagated by me, sorry) that you can use application requirements in place of collection targeting. That is a bad practice and not within the design scope. The main purpose of application requirements is to enable the ConfigMgr client agent to choose between multiple deployment types or limit the actual installation based upon some easily queryable and locally available (on the client) parameter. In this case, there’s nothing to add.
SNAGHTMLa3f2f4f No dependencies to add.
image All Done? No, that was just the end of the Create Deployment Type Wizard.
image Back to the Create Application Wizard.
image Now we’re all done.

7. Deployment

Finally, the last administrative step. Select your newly created application in the console and chooseDeploy from the ribbon bar (or the right-click context menu). With application deployment, you are deploying the application, not the deployment type. Deployment types are chosen at deployment run-time by the client based upon the requirements and priority of the deployment types in an application. Here’s the screenshot tour of creating the deployment.

SNAGHTMLa520dcb Choose the collection for step 3.
SNAGHTMLa5334fa Add your content to a DP (or DP group) that is available and accessible to the client systems where this deployment will be applicable.
SNAGHTMLa54d3f7 Choose your intentions. In the spirit of the application model, I am leaving it as Available.
SNAGHTMLa55e555 Change the deployment’s start time if you don’t want it to be immediately available.
SNAGHTMLa569e28 Choose your notification preferences.
SNAGHTMLa5842c0 Choose your alert preferences.
image Finished.

8. User Test Installation

Available, user targeted applications are available in the Application Catalog. This is a very good thing because users do not have to do anything for this brand-new deployment to shown in the Application Catalog as the user policy will be dynamically accessed directly from the MP when the user opens the catalog.

SNAGHTMLa5be610

SNAGHTMLa7300e1

image

Other Notes and Comments

  • UAC is still a factor in this because the installer was run with the user’s credentials. I honestly don’t know if this is an issue when using a Windows Installer based deployment type or not. Another future blog post.
  • Using FileZilla for this example worked well except that the installer automatically detects whether the user is a local admin or not. If they are, it doesn’t do a per-user install and so the detection method I used above doesn’t work. Unfortunately, there is no way to force the per-user install from the command-line. This didn’t become evident to me until I first tested the deployment out. I don’t think there is a good work-around for this except to re-package the installer as an MSI. Fortunately, FileZilla is a simple application so that wouldn’t be a big deal; however, for a more complex app, that could be a big deal. Another solution is to use App-V and virtualize it (subject of another future blog post – I think that’s four so far).
  • I saw irregularities with the Uninstall being properly detected – I’ll need to do some more testing and follow-up with the product group on that.

Thanks to Marty List for reviewing this post for me and adding/correcting a few things!

http://blog.configmgrftw.com/configmgr-2012-application-deployment-by-example-user-exe-deployment/

 

Viewing all 76 articles
Browse latest View live