Category Archives: Windows Server 2008R2

Pretraga i filtriranje računara u Active Directory pomoću Powershell-a

Često se dešava da nam Active Directory nije potpuno ažuriran u smislu da imamo nekih računara koji se više ne koriste, a nalaze se u različitim organizacionim jedinicama pa bi ih bilo vrlo teško locirati bez PowerShell-a. Jedan od načina je da pronađemo računare na koje je poslednje logovanje bilo pre više od 100 dana i prebacimo ih u jednu organizacionu jedinicu gde ih kasnije možemo brisati.

Prvo ćemo postaviti željeni datum u promenljivu d sa komandom:

$d = [DateTime]::Today.AddDays(-100)

Zatim ćemo iskoristiti komandu koja pretražuje i izlistava računare u AD, Get-ADComputer, a zatim sa filter parametrom izlistati sve računare koji su u statusu enable i kojima je zadnji datum logovanja manji ili jednak od datuma koji smo stavili u promenljivu $d.

Get-ADComputer -filter {(enabled -eq "true") -and 
(lastlogondate -le $d)} -properties Name,LastLogonDate

Nakon toga možemo sve računare prebaciti u novu OU:

Move-ADObject -Targetpath 'ou=Disabled Computers,dc=rajco,dc=me'

Ukoliko hoćemo više detalja o svojstvima računara koje ćemo dobiti u rezultatu možemo koristiti komandu:

Get-ADComputer -filter {(enabled -eq "true") -and (lastlogondate -le $d)} -Properties * |
ft name, lastlogondate, operatingsystem
Get-ADComputer -filter {(enabled -eq "true") -and (lastlogondate -le $d)}`
-Properties * | select Name, LastLogonDate, OperatingSystem | Out-GridView

Evo kako izgledaju rezultati poslednje dve komande respektivno:

PS_AD01

PS_AD02

Ukoliko pretragu želimo da izvršimo prema imenu računara komanda bi izgledala:

Get-ADComputer -Filter "Name -like '*AICABO*'" | ForEach-Object {$_.Name}

Sada se možemo poigrati i pronaći sve željene računare i proveriti veličinu particija i slobodnog prostora:

 $Computers = Get-ADComputer -Filter "Name -Like '*AACABO*'" |
 ForEach-Object {$_.Name}
Get-WMIObject Win32_LogicalDisk -filter “DriveType=3" -computer $computers | `
Select SystemName,DeviceID,VolumeName,@{Name=”size(GB)”;Expression=`
{“{0:N1}” -f($_.size/1gb)}},@{Name=”freespace(GB)”;Expression={“{0:N1}” `
-f($_.freespace/1gb)}} | Out-GridView

PS_AD04

Mogućnosti su velike, pa možete sami da nastavite sa isprobavanjem komandi po vašoj želji i potrebama.

RSAT Tools i Powershell pretraga zaključanih naloga

Iskoristiću ovaj post da objasnim instaliranje i korišćenje RSAT alata, a zatim da dam primer korišćenja Powershell-a preko RSAT-a. RSAT (Remote Server Administration Tools) nam dozvoljava upravljanje rolama i karakteristikama (Roles and Features) koje su instalirane na udaljenom serveru sa operativnim sistemom Windows Server 2008 i 2008R2 (važi i za pojedine role i karakteristike na verziji servera 2008 i 2003). Na primeru koji ću pokazati vidimo koliko je RSAT koristan, ne samo u olakšavanju upravljanja, već i donošenjem novih i poboljšanih komandi.

RSAT je dostupan za obe arhitekture procesora (x86 i x64) a obradićemo verziju za Windows 7 SP1 (mora biti u ediciji Enterprise, Professional ili Ultimate). Bitna stavka je da alat dolazi u vidu ažuriranja i mora se potpuno ukloniti svaka prethodna verzija pre instalacije nove, podrazumeva se da se ne može instalirati na ciljanom serveru. Takođe su nam potrebna administratorska prava na računaru na kom istaliramo alat. Kada završimo instalaciju ostaje nam da u Control Panelu pod opcijom Program and Features dodamo karakteristike i role sa kojim želimo da upravljamo.

RSAT-01

Sada možemo da počnemo sa upravljanjem željenih rola na ciljanom serveru/serverima. Ukoliko ste na klijentskom računaru već logovani kao administrator sa potrebnim pravima na udaljenom serveru onda je dovoljno samo da pokrenete neki od alata. Pošto nije dobra praksa biti logovan na klijentski računar i raditi stalno sa administratorskim pravima onda je potrebno alat pokrenuti kao drugi korisnik i ukucati administratorske kredencijale. Takođe postoji opcija prilikom korišćenja Powershell-a da prilikom izvršavanja same komande obezbedimo kredencijale koji su dovoljni za tu akciju i time izbegnemo rad sa pravima većim od potrebnih.

RSAT-02

Na ovom primeru vidimo da su instalirani svi dostupni alati jer računar nije u produkciji, već u testnom okruženju. Vi ćete naravno izabrati alate za role koje imate instalirane. U svakom trenutku možete dodati i neki koji vam kasnije zatreba. Kao što sam rekao na sledećem primeru ćemo videti kolika je korist od RSAT-a.

Ukoliko dobijete zadatak da proverite sve zaključane naloge u vašem domenu a pri tome imate stotine ili hiljade naloga taj posao ručno bi bio nemoguć, a ako je domain controler na verziji nižoj od Windows Servera 2008 R2 trebaće vam neki PS skript ili ne daj bože VB :). Uz pomoć RSAT alata to možemo uradti sa jednom komandom na sledeći način:

RSAT-03

Search-ADAccount -LockedOut

U prvom redu izlistavamo sve zaključane naloge na domenu.

Search-ADAccount -LockedOut | Unlock-ADAccount

Drugim redom prosleđujemo (pipe) komandu za otključavanje svih naloga. Ukoliko nemamo dovoljna prava ovde možemo dobiti grešku pa je potrebno ponoviti akciju sa odgovarajućim dozvolama. Na kraju ponavljamo prvu komandu da bi se uverili da smo otključali sve naloge. Sve ovo smo radili sa klijentskog računara i pokrenutim Active Directory Module for Powershell, da smo pokrenuli samo Powershell morali bi da importujemo odgovarajući modul sa komandom:

Import-Module ActiveDirectory

Velika verovatnoća je da ne želimo da otključamo sve naloge, već da izaberemo pojedinačno, tada koristimo

RSAT-04

Imamo parametar confirm pa će nam PS tražiti da potvrdimo svaki nalog pojedinačno. Takođe u nastavku vidimo da možemo koristiti select da bi izabrali polja u prikazu koja nas interesuju.

PS C:\Users\Administrator> Search-ADAccount -LockedOut | select Name

Kao što vidimo sada vrlo lako možemo vršiti upravljanje serverima sa lokalnog računara čak i uz korišćenja komandi koje nam ne bi bile dostupne na serveru. Još jedna velika prednost je ukoliko više administratora koristi RDP konekciju ka serverima, a znamo da je, ne računajući terminal servise, ili po novom RDP rolu, broj istovremenih RDP konekcija dve, tako da treći administrator neće moći da pristupi serveru bez da izloguje jednog od prve dvojice ili odlaskom do servera i logovanjem lokalno.

FAQ: Dynamic Memory Windows Server 2008R2 SP1

Postoji određen broj pitanja i nedoumica kod instalacije SP1 za Windows Server 2008R2 i korišćenje dinamičke memorije na Hyper-V roli, pa ćemo neka od najčešćih pokušati da razjasnimo sada. SP1 nam donosi još jednu bitnu odliku pored dinamičke memorije a to je RemoteFX koji poboljšava krajnje korisničko iskustvo preko RDP-a donoseći podršku za 3D baziranom na Directx-u, USB redirekciju… Ovaj put ćemo se baviti isključivo dinamičkom memorijom.

Q: Prilikom kreiranja virtelne mašine nemam opciju za podešavanje dinamičke memorije?
A: Prilikom kreiranja VM preko čarobnjaka neće biti opcije za podešavanje dinamičke memorije, već ćemo tu opciju naći u podešavanjima kreirane VM-e. U verziji servera 2012 imaćemo tu mogućnost pri samom kreiranju.
hyper-vSP1
Q: Uradio sam update servera sa SP1 ali i dalje nemam ništa u polju Memory Demand?
A: Potrebno je VM ažurirati na Win 7/Win Server 2008R2 SP1 verzije da bi koristili ovu opciju.
hyper-vSP1-dynamic_memory
Q: Instalirao sam SP1 na VM ali i dalje mi mašine ne koriste dinamičku memoriju?
A: Kada je instaliran SP1 na host-u potrebno je uraditi ažuriranje integration components koje predstavljaju set drajvera i servisa i u SP1 su unapređeni, a VM mora biti “svesna” toga. Ukoliko koristite Windows Server 2008 SP2 Web ili Standard ediciju možda ćete morati da instalirate i ovaj hotfix (pre toga uradi backup ili snapshot).
Q: Da li SP1 radi isto i na Microsoft Hyper-V Server 2008R2?
A: Da, koriste isti SP pa neće biti problema.
Q: Da li se VM koja je ažurirana sa IC (Integration Components) može koristiti na drugom host-u?
A: Kada je mašina podešena da koristi dinamičku memoriju sa instaliranjem poslednje verzije IC, VM neće moći da radi na hostovima koji nemaju SP1 i ne može se premestiti na takve hostove.
Q: Može li se koristi dinamička memorija na x64 i x86 arhitekturi?
A: Da, može se koristiti na obe verzije.
Q: Šta se dešava ukoliko VM ne podržava dinamičku memoriju?
A: U tom slučaju će VM koristi samo vrednost definisanu kao Startup RAM.
Q: Da li mogu koristiti dinamičku memoriju na Exchange i SQL serverima?
A: Kao što ste videli na prethodnoj slici dinamička memorija se može koristiti na Exchange i SQL serverima, ali pošto znamo kako oni koriste RAM obavezno je postaviti maksimalnu vrednost RAM. Dakle na svakom VM koja podržava dinamučku memoriju nju možemo i koristiti.
Q: Koja je preporučena vrednost za startup RAM memoriju?
A: Za Windows Server 2008 R2 Enterprise/Datacenter, Win7 Ultimate/Enterprise, Windows Server 2008 Enterprise/Datacenter i Windows Vista Ultimate/Enterprise preporuka je da to bude 512MB, a za Windows Server 2003 R2 Enterprise/Datacenter and Windows Server 2003 Enterprise/Datacenter ta vrednost može biti i 256MB.