Beyaz.Net İpucu

Windows Server 2003 Yönetimsel Scriptler

Bir çok geniş bir alanda pek çok yönetimsel işlemi scriptler aracılığıyla otomatize edebiliriz. Örneğin;

  • Kullanıcıları, grupları, organizasyon birimlerini yönetebilir,
  • Bilgisayarların konfigurasyonunu gerçekleştirebilir,
  • Event logları yönetebilir,
  • Klasörleri, dosyaları ve diskleri denetleyebilir, yönetebilir,
  • Performansı, prosesleri ve servisleri monitor edebiliriz..
  • Batch language komutlarını içeren dosyaları çalıştıran command processor. Batch language, sınırlı yeteneklere sahip ancak önceki işletim sistemlerinin bunu desteklemesinden dolayı eski batch dosyalarınızı Windows .NET Server’da kullanmaya devam etmek isteyebilirsiniz. Batch dosyalarının kullanımı konusunu ileriki bölümlerde ele alacağız.
  • Microsoft Visual Basic Scripting Edition (VBScript) veya Jscript komutlarını içeren dosyaları kullanan Windows Scripting Host (WSH). VBScript ve Jscript batch language’in sağladığı tüm özellikleri ve fazlasını sağlayabilmekte. Örnek olarak; VBScript veya Jscript ile yazılmış scriptler Active Directory’de depolanan nesnelerin yönetimi için Active Directory Service Interfaces (ADSI) ile etkileşimde bulunabilirler ve Windows Management Instrumentation araclığıyla sistem kaynaklarına erişebilirler.

İki scripting diline ek olarak WSH iki run-time program sunar. Wscript.exe ve Cscript.exe. VBScript veya Jscript komutları içeren bir WSH scripti oluşturduktan sonra bu scripti çalıştırmak için Wscript veya Cscript programlarından birini kullanırsınız. Wscript scriptleri windows tabanlı bir uygulama gibi, Cscript ise dos tabanlı bir uygulama gibi çalıştırır.

Yöneticiler genellikle, Active Directory içinde yer alan gruplar, kullanıcılar gibi nesneleri yönetebilmek isterler. Aşağıdaki örnek, WSH, VBScript ve ADSI aracılığıyla bir Active Directory organizational unit, grup ve kullanıcıyı nasıl oluşturacağınızı gösteriyor. Script, domain içinde üç adet Active Directory nesnesi oluşturduktan sonra, yeni kullanıcı hesabına bir parola atıyor ve hesabı aktif hale getiriyor ve son olarak kullanıcı hesabını gruba dahil ediyor.

Notepad’i açarak aşağıdaki kodu yazın.

Set oRoot = GetObject("LDAP://rootDSE")

Set oDomain = GetObject("LDAP://" &

oRoot.Get("defaultNamingContext"))

Set oOU=oDomain.Create("organizationalUnit",

"ou=Demo OU")

oOU.Put "Description", "Demonstration OU"

oOU.SetInfo

Set oGroup = oOU.Create("Group", "cn=Demo

Group")

oGroup.Put "sAMAccountName", "DemoGroup"

oGroup.Put "Description", "Demonstration

Group"

oGroup.SetInfo

Set oUser = oOU.Create("User", "cn=Demo User")

oUser.Put "sAMAccountName", "DemoUser"

oUser.Put "Description", "Demonstration User"

oUser.SetInfo

oUser.SetPassword "qW5rty"

oUser.AccountDisabled = False

oUser.SetInfo

oGroup.Add oUser.ADSPath

Save komutu ile dosyayı .vbs uzantısı ile kaydedin.

Bu örnek scripti çalıştırmak için:

  1. Command Promptu çalıştırın.
  2. Scriptin olduğu dizine gelin.
  3. Aşağıdakini yazın:

Wscript Scriptadı.vbs

Scriptadı = Dosyayı .vbs uzantısı ile kaydederken kullandığınız dosya adı.

Notlar:

  • Bu işlemi gerçekleştirebilmek için Administrators grubunun üyesi olmanız veya delegated olmanız gerekiyor.
  • Bu örnekte scripti windows tabanlı olarak çalıştırdık, dos tabanlı çalıştırmak için wscript yerine cscript yazın.

Batch dosyalarının kullanımı

Aynı zamanda batch programları veya scriptler olarakta adlandırılan batch dosyaları ile, rutin veya çok sık gerçekleştirdiğiniz işlemleri (gerçekleştiremeyi) kolaylaştırabilirsiniz. Batch dosyası düz metin halinde bir veya daha çok sayıda komut içeren ve .bat veya .cmd uzantılarından birine sahip dosyalardır. Command promt’ta dosya adını yazdığınızda cmd.exe dosyanın içindeki kodları sırayla işlemeye başlar.

Bir batch dosyasına her türlü komutu dahil edebilirsiniz. For, goto ve if gibi komutlar, batch dosyasındaki komutların belirli şartlara bağlı olarak çalıştırılmasını sağlarlar. Örnek olarak if komutu bir şartın sonucuna bağlı olarak çalıştırmak veya çalıştırmamak için kullanılabilir.

Uygulamalarda genellikle kullanılan hata kodları: eğer bir hata oluşmamışsa 0, eğer bir hata ile karşılaşılmışsa 1 (veya daha yüksek bir değer) dir. Spesifik hata kodlarının anlamları ile ilgili detaylı bilgi için uygulamanın yardım dokumanlarını inceleyin.

Kategorideki Güncel Makaleler