ASP.NET
Network Akademi

Met Hostimg

“Bilgi paylaşıldıkça artar” sloganı ile .NET Platformuna ilişkin birikimlerin paylaşıldığı ASP.NET.TR Topluluğunda sizde “YAZAR” olmak için ; info@asp.net.tr e-mail adresine kendinizi anlatan bir e-mail göndererek başvuruda bulunabilirsiniz.

Powershell Part III

Yenal TIRPANCI
Sistem Uzmanlığı
09.02.2011 12:40:36
Hit : 6636

Active Directory Yönetmek
Active Directory kontrol için tool umuzu indirip kuruyoruz öncelikle.
Active Directory Tool kurulumunun yapılabilmesi için sistem gereksinimleri şunlardır….
Net.Framework 3.5 SP 1
Windows Server 2003 e yüklenecek ise en az Windows Server 2003 SP 2 li olmalıdır.
Gereken Tool u yükledikten sonra Snapin olduğu için PowerShell e tanımlamam gerekmektedir.
Nasıl Tanımlanır birlikte inceleyelim.
Get-PSSnapin
Komutunu Kullanarak yüklü olan bileşenleri mi listeleyebilirim listeden görüldüğü üzere yüklemiş olduğum snapin listemde bulunmamaktadır.Bunun için
Get-PSSnapin –reg
Komutu ile eklemiş olduğum Toolun ismini olduğu gibi alarak ekleyeceğiz.
Name        : Quest.ActiveRoles.ADManagement
PSVersion   : 1.0
Description : This Windows PowerShell snap-in contains cmdlets to manage Active Directory and Quest ActiveRoles Server.
Yukarıdaki şekilde gelen ekrandan
Add-PSSnapin Quest.ActiveRoles.ADManagement
Yukarıdaki komutum ile Snapin eklemiş oldum tekrar powershellimde var olan Snapin leri görmek için tekrardan
Get-PSSnapin komutunu çalıştırdıktan sonra listede toolumu görmekteyim.
Şimdi Active Directory üzerinde komutlarımızı çalıştırmaya başlayabiliriz.
Active Directory Bulunan Bütün Kullanıcıları Listelemek için
Get-QADUser ----Komutu ile Bütün kullanıcıları listelerim istersem çıktı olarakda alabilirim
Get-QADUser | out-file ----Komutu ile dosyaya yada ---- Export-Csv ile Kullanıcıları Export Edebilirim.
Filtreleyerek Kullanıcıları Sorgulamak ise
Get-QADUser –Name “Yenal” --- ile Yenal kullanıcısının olup olmadığını filtreleyebilirim.
Ya da
Get-QADUser -Name “Y*”--- ile Y ile başlayan kullanıcıları listeleyebilmekteyim.
Yukarıdaki örneklerde olduğu gibi aynı şekilde
Get-QADGroup ile Active directory de bulunan grupları listeyebilirken ,çıktı alabilir yada filtreleyerek sorgulayabiliriz.
Get-QADComputer ile Active Directory de Bulunan Pc leri Sorgulayabilir ,yine çıktılarını alabilirim.
Kullanıcılar üzerinde Değişiklikler yapmak yada Toplu Değişiklikler için (UPDATE) işlemi için
Get-QADUser | Set-QADUser –City “İstanbul”
Komutunu Kullandığımda Active Directory Üzerinde bulunan ne kadar kullanıcım var ise hepsini City alanı İSTANBUL olarak değişmiş olacaktır.
ACTIVE DIRECTORY ÜZERİNDE KULLANICI OLUŞTURMAK
New-QADUser –Name ‘Test’ –ParentContainer ‘OU=Deneme,DC=NetworkAcademy,DC=Local’ –SamAccountName ‘Test’ –UserPassword pass
Şeklinde yeni bir kullanıcı oluşturabilmekteyim.
ACTIVE DIRECTORY ÜZERİNDE GRUP OLUŞTURMAK
New-QADGroup –ParentContainer ‘OU=Deneme,DC=NetworkAcademy,DC=Local’ –Name ‘TestGroup’ –SamAccountName ‘TestGroup’
Şeklinde Grup Ekleyebilirim.
ACTIVE DIRECTORY ÜZERİNDE COMPUTER OLUŞTURMAK
New-QADComputer –Name ‘Tester’ –SamAccountName ‘Tester’ –ParentContainer ‘OU=Deneme,DC=NetworkAcademy,DC=Local’
Şeklinde bilgisayar ekleyebilmekteyim.
ACTIVE DIRECTORY ÜZERİNDE KULLANICILARIN ÜYELİKLERİNİ BELİRLEMEK
Oluşturmuş olduğum kullanıcının hangi gruba üye olacağını kullanıcıyı oluştururkende belirleyebiliriz.
Add-QmemberOf
Identity: Kullanıcı Adı ( test adında oluşturmuştuk)
Group[0] : Administrators
Group[1]:Domain Admins
Şeklinde birden fazla gruba ekleyebilirim.
 
Bunun gibi bir çok komutu active directory üzerinde kullanabilmekteyiz.hangi komutlar olduğunu öğrenmek için
Get-Command –Noun Q*
İle görebilirim
İstediğim komut hakkında bilgi almak için ise
Get-Help Set-QADUser –Examples
Yada listelediğimiz komutlar içerisinde hangisini kullanacak isek yardımları ve örnekleri listeyebiliriz.
 
Script Oluşturma Örnek Notepad uygulamalarının kaç tane olduğunu eğer var ise notepad uygulamalarını kapatır.

 

 

$uygulama = (Get-Process | Where-Object {$_.Name -eq "Notepad"}).Count
if($uygulama -gt 0)
{
    Get-Process | Where-Object {$_.Name -eq "Notepad"} | kill
    Write-Host $uygulama "" Uygulama "" Bulundu "" ve "" Kapatıldı
}
else
{
       Write-Host " Uygulama Bulunamadı"
}
Parametreli Uygulama Kapatmak Localdeki Uygulamaları girdiğimiz parametre ye göre sayıp kapatacak bir uygulama.
param ([string]$kontrol="")
$uygulama = (Get-Process | Where-Object {$_.Name -eq "$kontrol"}).Count
$yaz= " $uygulama Bulundu ve kapatıldı"
if($uygulama -gt 0)
{
    Get-Process | Where-Object {$_.Name -eq "Notepad"} | kill
    Write-Host $uygulama "" Uygulama "" Bulundu "" ve "" Kapatıldı
}
else
{
    Write-Host " Uygulama Bulunamadı"
}
  
Remote Makinada Servis Kontrol
param ([string]$ser="")
$kontol=Get-Service -Name $ser -ComputerName dnsserver
if($kontrol -eq "Running")
{
 
  Write-Host Servis Zaten Çalışıyor
   
}
else
{
   (Get-WmiObject win32_Service -Filter "name='$ser'" -computername dnsserver).StartService()
}
 



BU İÇERİĞE YORUMDA BULUNUN


Bu MAKALE'ye yorum yapabilmek için Üye olmalısınız ...!


BU İÇERİĞE YAPILAN YORUMLAR