Windows PowerShell Nedir? ve Nasıl kurulur?
Herkese selamlar,Server 2008 ile alakalı yeni bir makale ile yine birlikteyiz.Bu makalede Server 2008’in üzerine ekstra bir özellik(Feature) olarak kurabileceğimiz Windows PowerShell ne olduğu,hangi amaçlarla kullanabilir ve kurulumunu nasıl yapabileceğimiz gibi konulara bakacağız.
Microsoft çıkartmış olduğu ürünler de sürekli olarak komut satırından ziyade grafiksel ara yüze yoğunlaşmıştır.Tabi ki bu, ürünlerde komut satırının olmadığı veya scripting uygulamalarının yapılmadığı anlamına gelmemektedir.Daha önceki ürünlerde Netsh,Windows Script Host(WSH),Windows Management Instrumentation(WMI) gibi komut yazım dilleri bulunmaktaydı.Ancak bunlar belirli bir yere kadar basit konfigürasyonlara destek verebiliyordu.Sunucular üzerinde daha gelişmiş ayarların yapılabilmesi için Microsoft, Windows PowerShell’i çıkardı. Windows PowerShell bir komut satırı uygulamasıdır.Komut satırı kullanıcıları ve script yazarlarına .NET Framework gücünü veren bir ortamıdır.
PowerShell, bu konuda bildiklerimizin üstüne daha fazlasını eklemek,Windows komut satırı ve Windows Script Host(WSH) ortamları içinde oluşturulan scriptleri etkinleştirmede bizi çok sayıda yeni güçlü konseptlerle tanıştırmaktadır.Bu şekilde öğrendiğimiz bilgileri de daha fazla güncelleyebilme imkanı bulmaktayız.Windows PowerShell, IT Profesyonelleri ,programcılar ve Windows Power Shell ile ilgili hiç bir ön bilgiye sahip olmayanlara kullanıcılara yöneliktir.Power Shell’i öğrenmek için scripting’deki ve WMI’daki birazcık ön bilgi yardımcı olmaktadır.Ancak bunun tam tersine,öğrenmek için de daha önceden bir scripting alt yapısına sahip olmak gerekmemektedir.Bu nasıl olur diye düşünür olduğunuzu duyar gibiyim.İlerleyen bölümlerde detaylı bir şekilde açıkladığımız zaman her şey açıklığa kavuşacaktır.
Windows PowerShell’in tutarlılığı en önemli özelliğidir.Örneğin,bir komut girdisi başka bir komutun çıktısı olmaktadır.Böylece tek bir komut içerisinde gerekli bağlayıcıları kullanarak birden fazla yönetimsel işi yerine getirebiliriz.Her bir komut için değişik sıralama yordamlarını öğrenmemize gerek yoktur.PowerShell,ara yüzlerin tutarlı olabilmesi için komutları güçlendiren ve ana özellikleri sağlayan bir framework sunmaktadır.
Windows PowerShell,komut satırı araçları ve COM objelerine erişimi sağlayan interaktif script ortamlarını birleştirmektedir.Aynı zamanda .NET Framework Class Library(FCL) kulla bilmemize olanak sağlar.PowerShell, Windows Command Prompt(CMD) üzerinde interaktif bir ortam sağlayan çoklu komut satırı araçları ile geliştirilmiştir.Yani PowerShell interaktif olabilme yeteneğini komut satırından almaktadır.PowerShell aynı zamanda komut dizimi araçları ve COM otomasyon objeleri kullanımına izin veren Windows Script Host(WSH) üzerinde de geliştirilmiştir.Bu şekilde PowerShell,kullanıcılar,script yazarlarının yeteneklerini geliştirmiş ve sistem yöneticilerinin Windows sistemlerini daha kolay yönetebilmelerini sağlamıştır.
Her ne kadar yönetimsel amaçlı ihtiyaç duymuş olduğumuz komutlar PowerShell ara yüzüne text tabanlı olarak girilse de aslında arka planda obje tabanlı bir yapıya sahiptir.Yani text değil de nesnel tabanlı bir dil’dir.Bundan dolayı bir komutun çıkışı nesnel’dir.Bu nesne çıkışı başka bir komuta girdi olarak yollayabiliyoruz.Sonuç itibariyle Windows PowerShell,diğer komut yazım dillerinde deneyimli olanlar için tanıdık bir arabirim sağlamaktadır.Komutlar arasında data iletme konseptini obje göndermek için genişletmektedir.Metin’den ziyade obje gönderimini etkinleştirmek için komutlar arasında veri gönderme kavramını geliştirir.
Windows PowerShell daha önceden oluşturulmuş yazılı komutlardan çalışan scriptlere geçişi kolaylaştırmaktadır.Aynı zamanda yukarıda da bahsetmiş olduğum gibi kendimiz komutlarımızı oluşturabildiğimiz gibi,kaydedip daha sonradan da erişim sağlayabilmekteyiz.
Windows PowerShell Mimarisi aşağıda görmüş olduğunuz gibidir.
Kaynak:Technet.microsoft.com
Bir çok shell cmd.exe,SH,KSH,CSH ve BASH Unix gibi dilleri içermektedir.Bunların tamamı bir komut çalıştırmak veya yeni işlemdeki hizmet programını çalıştırarak sonucu text halinde sunmaktadır.Yıllar boyunca SED,AWK ve PEARL gibi programlama dilleri bu etkileşimi desteklemektedir.Nasıl KSH’da typeset,Cmd.exe’de Dır gibi temel komutlar varsa diğer dillerde de aynı işi gören fakat farklı isimlere sahip komut dizimleri yer almaktadır.Yani temel’de amaç aynı ama farklı yollar izlenmektedir.Windows PowerShell, diğer programlama ve scripting dillerine nazaran en farklı olanıdır.
Windows PowerShell özellikleri
●Windows PowerShell text’i işlemez bunun yerine .NET platformuna dayalı nesneleri işler.
●Windows PowerShell tutarlı bir arayüz ile,geniş bir yerleşik komut setiyle birlikte anılmaktadır.
●Bütün shell komutları her bir araç için değişik ayrıştırıcılar kullanmak yerine aynı komut ayrıştırıcısını kullanmaktadır.Buda her bir komutu daha kolay bir şekilde kullanabilmemize imkan tanımaktadır.
●Alışkın olduğumuz scripting araçlarını kullanmaktan vazgeçmemize gerek yoktur.Net,SC ve Reg.exe gibi geleneksel windows araçlarını,PowerShell üzerinde kullanabilirsiniz.
●Windows PowerShell bir script dillidir.
●.NET platformu tarafından desteklenmektedir.
●PowerShell,Kolay text’leri daha karışık bir hale getirmeden,komplex görevleri desteklemek için kullanılan bir dildir.
●PowerShell,.Net programlamada kullanılan C# gibi yüksek düzeyli diller ile aynı mantıkla çalışmaktadır.
●Windows PowerShell, bir çok Windows Server uygulamasında çalışmaktadır.Exchange Server 2007,Windows Server 2008,System Center Operations Manager gibi ürünler ilk verilebilecek olan örneklerdir.
Windows PowerShell kurulum öncesi hazırlıklar
PowerShell kurulumunun donanımsal olarak özel bir gereksinim’i bulunmamaktadır. Yazılımsal gereksinimleri ise aşağıdaki gibidir:
●Microsoft .Net Framework 2.0 veya 3.0
●Windows Server 2003 Service Pack 1 veya Service Pack 2
●Windows Server 2008(Opsiyonel)
●Windows Xp Service Pack 2
●Windows Vista
●x86,x64 ve Itanium tabanlı mimariler
Yukarıdaki işletim sistemlerinden herhangi birine Windows PowerShell’i kurabilmekteyiz.Windows Server 2008 dışındaki bütün sistemlere kurabilmek için Windows PowerShell’i download etmemiz gerekmektedir.Ve tabi ki .Net Framework 2.0’ı da kurmamız gerekmektedir.Windows Server 2008 üzerine herhangi ekstra bir kurulum yapmadan Windows PowerShell’i kurabilmekteyiz.Server 2008 dışındaki diğer bütün işletim sistemlerine .Net kurulumu yapıp daha sonrasında PowerShell 1.0 sürümünü kurabilirsiniz.Eğer Windows Server 2008 dışındaki diğer işletim sistemleri üzerine kurulum yapacaksanız aşağıdaki linklerden gerekli olan .Net versiyonu ve Windows PowerShell’i download edebilirsiniz.
.Net Framework’u indirmek için aşağıdaki linki kullanabilirsiniz.
http://www.microsoft.com/downloads/details.aspx?familyid=10cc340b-f857-4a14-83f5-25634c3bf043&displaylang=en
Windows PowerShell 1.0 indirmek için aşağıdaki linki kullanabilirsiniz.
http://www.microsoft.com/windowsserver2003/technologies/management/powershell/download.mspx
Biz Windows Server 2008 üzerine kurulum yapacağımızdan dolayı Windows Server Manager konsolunu kullanacağız.Windows PowerShell Server 2008’in üzerinde opsiyonal olarak sunulan bir feature’dır.
Windows PowerShell kurulumu
1)Windows PowerShell kurulumunu yapabilmek için ilk olarak Server Manager konsoluna giriyoruz.Server Manager konsolunda Features bölümüne giriyoruz.Buradan Add Features diyerek Server 2008 üzerine kurulabilecek olan opsiyonları listeliyoruz.
2)Karşımıza açılan opsiyon listesinde Windows PowerShell’i seçip kurulumu başlatabiliriz.
3)Ve başarılı bir kurulum gerçekleştirdiğimize dair karşımıza gelen ekranı close diyerek kapatabiliriz.
4)Görüldüğü üzere standart bir kurulum olarak gerçekleştirmektedir.Server Manager konsolunda da ayrıca kurulumu doğrulayabiliriz.Features bölümünde Windows PowerShell’in yüklü olduğu gözümüze çarpmaktadır.
Varsayılan olarak PowerShell işletim sisteminin yüklü olduğu yani aşağıdaki resimde yer alan yola kurulmaktadır.
5)Kurduktan sonra PowerShell’i başlatmak için eğer isterseniz Start,All Programs,Windows PowerShell 1.0 menüsünden açabildiğimiz gibi aynı zamanda Start’dan Run’a gelip PowerShell yazarak da erişim sağlayabiliriz.
6)Peki kurulumu gerçekleştirdik ve bizim siyah bir ekran karşıladı.herhangi bir grafiksel ara yüze sahip olmayan PowerShell,aynen isminden anlaşılmış olduğu gibi tamamen komut satırı üzerinden yönetimi sağlanabilen bir konsoldur.
Tabi ki ilk işimiz bu konsol üzerinde yardım almaktır.Hiç bildiğimiz veya yeni yeni öğrenmeye başladığımız bu konsolda kullanabileceğimiz komutlar,parametreler ve bunların yazım tiplerini görüntülemek için temel seçenekleri tercih etmeliyiz.PowerShell’in başlatma seçeneklerini görebilmek içinde Powershell -? Komutunu kullanabiliriz.
Evet arkadaşlarım,bu makalemde elimden geldiği kadarıyla Windows PowerShell’i anlatmaya çalıştım.Windows PowerShell mimarisi ve sahip olduğu özelliklerden bahsettik.Aynı zamanda Server 2008 işletim sistemi üzerine Windows PowerShell kurup ara yüzü ile ufaktan bir tanışma imkanımız oldu.Bir sonraki PowerShell ile alakalı makale serisinde,bu konsol üzerine kullanabileceğimiz cmd-letlere bakacağız.
Hoş çakalın
Kaynak:
Microsoft Offical Course(MO)