Solved

List all servers in Active Directory

Posted on 2010-11-23
11
1,892 Views
Last Modified: 2012-05-10
Need a script to list all servers in Active Directory.  From Windows 2000 Server all the way up to and including Windows Server 2008 R2.  Need to make sure all Editions are included.  e.g. Advanced, Standard, Enterprise, Datacenter and 32-bit and 64-bit versions.

Thanks
0
Comment
Question by:Carl Webster
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 5
  • 4
  • 2
11 Comments
 
LVL 27

Accepted Solution

by:
KenMcF earned 334 total points
ID: 34198621
You can use the quest AD cmdlets

get-qadcomputer | where{$_.operatingsystem -match "Server"} | select name, operatingsystem | export-csv c:\server.csv

or if they are all in the same OU

get-qadcomputer -searchroot "OU=Servers,DC=Domain,DC=Local"


depending on what information you may need to do a wmi query.

$servers = get-qadcomputer -searchroot "OU=Servers,DC=Domain,DC=Local"
Foreach ($Server in $servers){
gwmi -computer $server -class win32_operatingsystem | select name, producttype
}
0
 
LVL 37

Author Comment

by:Carl Webster
ID: 34198707
My problem is I do not know if PS is installed on any server or if I will be allowed to install PS.

I just emailed the customer to find out.  It would be nice if PS is installed or they give me permission to install it.

All I need is the "cn" attribute (according to the test dsquery I ran) which should be the server's hostname.
0
 
LVL 27

Assisted Solution

by:KenMcF
KenMcF earned 334 total points
ID: 34198748
if you just need to CN you can install powershell on a workstation that is a member of the domain.

depending on the number of servers you may need to use the -sizelimit switch

get-qadcomputer -sizelimit 0 | where{$_.operatingsystem -match "Server"} | select DN
0
Office 365 Training for Admins - 7 Day Trial

Learn how to provision tenants, synchronize on-premise Active Directory, implement Single Sign-On, customize Office deployment, and protect your organization with eDiscovery and DLP policies.  Only from Platform Scholar.

 
LVL 41

Assisted Solution

by:Adam Brown
Adam Brown earned 166 total points
ID: 34198751
This will do pretty much the same thing but utilizes the built in AD Powershell Console for 2008 R2 if you have a DC that uses that.
get-adcomputer -filter * -properties operatingsystem | where
{$_.operatingsystem -match "Server"} | select name, operatingsystem > c:\servers.csv

Open in new window

0
 
LVL 27

Expert Comment

by:KenMcF
ID: 34198752
That should be

get-qadcomputer -sizelimit 0 | where{$_.operatingsystem -match "Server"} | select name
0
 
LVL 41

Expert Comment

by:Adam Brown
ID: 34198759
"My problem is I do not know if PS is installed on any server or if I will be allowed to install PS."
Check if you have a Windows 2008 R2 Domain Controller. If you do, you have the MS AD Powershell Console already.
0
 
LVL 37

Author Comment

by:Carl Webster
ID: 34198777
KenMcF, where do I get and how to I install the Quest AD cmdlets?

I have two other questions I posted this morning.  This file of server names will be used by another script to list all local groups on each server and the members of each group including nested groups.
0
 
LVL 27

Expert Comment

by:KenMcF
ID: 34198784
0
 
LVL 37

Author Comment

by:Carl Webster
ID: 34198826
acbrown2010, when I test this on my lab 2008 R2 DC, I get an error saying the term get-adcomputer is not recognized yada yada yada.
0
 
LVL 37

Author Comment

by:Carl Webster
ID: 34198918
acbrown2010, sorry didn't realize I had to do this:

When the Active Directory module is installed, to start it click Start, point to Administrative Tools, and then click Active Directory PowerShell
0
 
LVL 37

Author Comment

by:Carl Webster
ID: 34235352
I wound up just using ADFind to do this since the AD and all DCs were 2000.

0

Featured Post

PeopleSoft Has Never Been Easier

PeopleSoft Adoption Made Smooth & Simple!

On-The-Job Training Is made Intuitive & Easy With WalkMe's On-Screen Guidance Tool.  Claim Your Free WalkMe Account Now

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

This article describes my battle tested process for setting up delegation. I use this process anywhere that I need to setup delegation. In the article I will show how it applies to Active Directory
With User Account Control (UAC) enabled in Windows 7, one needs to open an elevated Command Prompt in order to run scripts under administrative privileges. Although the elevated Command Prompt accomplishes the task, the question How to run as script…
Attackers love to prey on accounts that have privileges. Reducing privileged accounts and protecting privileged accounts therefore is paramount. Users, groups, and service accounts need to be protected to help protect the entire Active Directory …
This video shows how to use Hyena, from SystemTools Software, to update 100 user accounts from an external text file. View in 1080p for best video quality.

717 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question