1. Ana Sayfa
  2. Microsoft PowerShell
  3. Windows PowerShell – PSProviders – Bölüm 10

Windows PowerShell – PSProviders – Bölüm 10

Windows – PSProviders – Bölüm 10. Bu bölümde biraz karmaşık bir konu olan PSProviders konusunu anlatacağım. Bir önceki bölüm için aşağıdaki linkten faydalanabilirsiniz.

Provider External bir DataStore’u PowerShell üzerinde disk Drive’a benzeten bir adaptördür.

Çünkü birçok Administrator disk Drive’larını komut satırı üzerinden yönetmeye aşinadır.

PS Providers Administrator’lara farklı formlardaki Data Storage’ları alışmış oldukları komutlarla yönetmelerini sağlar.

Bir Provider Datayı hiyerarşik olarak depolanmış şekilde sunar. (Öğeler klasörler ve alt klasörler arasında olan ilişkinin benzerine sahiptir)

Bir teknolojiyi Provider kullanarak yönetmek komut kullanarak yönetmekten daha zordur. Komut isimleri belirli ve anlaşılırdır.

Örneğin Exchange Server üzerinde Mailbox objesini elde etmek için Get-Mailbox komutu kullanılır.

Bunun yerine PSProvider kullanılarak aynı işlem yapılabilseydi komutun aşağıdaki şekilde yazılması gerekirdi.

Get-ChildItem EXCHANGE:\Server2\MailStore\Mailboxes

PSProvider’ın avantajı dinamik olmasıdır. Dinamik kelimesi ile kastedilen şey özetle şu şekildedir.

Bilgisayarlara yüklenen ve oluşturulan disk Drive,klasör,dosya gibi bileşenler her bilgisayara göre değişkendir. Dolayısı ile Microsoft kesin olarak bunları bilemez. Bu amaçla FileSystem PSProvider her bilgisayarın içerdiği bileşenlere dinamik olarak adapte olur.

Örneğin Internet Information Services (IIS) PSProvider kullanılarak da yönetilir. Bu Provider Microsoft ve 3rth Party’lere ait Add-in’lere adapte olabilir. Microsoft her dönem yeni bir Add-in çıkmasından dolayı IIS’i herşeyi ile yönetecek komutları kolay kolay yazamaz. Bu yüzden biraz karmaşık olsa da Provider’dan faydalanılır. Dinamik ve genişleyen teknolojilerde bu yöntemi kullanmak en iyi seçimdir.

Ulaşılabilir olan Provider’ları listelemek için aşağıdaki komut kullanılır.

Get-PSProvider

Resim-1

PowerShell üzerinde Module yüklendikçe bu listeye yeni Provider’lar eklenebilir. Örneğin Active Directory modülü yüklendiğinde listeye aşağıdaki şekilde yeni Provider eklenir.


Resim-2

Provider’lara ait Help görüntülenmek istendiğinde komutu aşağıdaki gibi yazmak yeterli olur.

Help <Provider İsmi>

Provider’a ait Help açıklama ve Provider’ın bağlanacağı Data Store’a ait belirli örnekleri içerir.


Resim-3

Provider’lar ile çalışan komutlar Item ve ItemProperty gibi generic isimlere sahiptirler. Çünkü her Provider ile çalışabilecek şekilde dizayn edilmişlerdir.

Örneğin Active Directory modülü yüklendiğinde AD psProvider’ı kullanarak AD Drive’ına erişmek ve dizini listelemek mümkündür.

Aşağıdaki şekilde olduğu gibi, belirtilen komutları kullanarak dizinde kolaylıkla gezinilebilir.

Numaraları sırası ile belirtirsek,

1.AD Drive’ı tıpkı bir disk Drive’ı gibi AD: yazılarak seçilir.

2.Dir ile seçiler dizin listelenir. (Burada listelenenler Active Directory’e ait Partition’lardır.

3.Yine cd komutu ile ilgili Partition seçilir. (Şekilde domain Partition seçilmiştir)

4.Ardından seçilen dizin listelenir. (Burada listelenenler Organizational Unit’ler ve Container’lardır.)

5.Cd komutu ile bu OU ya da Container’ların dizinine geçilebilir.

6.Son olarak Users Container’ı üzerindedir komutu çalıştırıldığında kullanıcı ve gruplara ait kayıtların listelendiği görülür.


Resim-4

Her Provider bir ya da daha fazla farklı özelliklere sahip olabilir. Provider’ın desteği yoksa diğer Provider’larda çalışan komutlar çalışmayabilir.

Örneğin Registry Provider’ın Transactions özelliği vardır ve sadece bu Provider –UseTransaction parametresini kabul eder.

Temel olarak PS Provider’lar bu şekilde. Bir sonraki makalede PSDrive ile devam edeceğim.

Bu konuyla ilgili sorularınızı https://forum.mshowto.org linkini kullanarak ulaşacağınız forum sayfamızda sorabilirsiniz.

Referanslar

www.mshowto.org

TAGs : powershell, , , , , , powershell ,

Yorum Yap

Yazar Hakkında

Sakarya doğumludur. İstanbul Üniversitesi’nde Matematik/Fen ve Teknoloji öğretmenliğini bitirmiştir. Yüksek lisansını Sakarya Üniversitesi Bilgisayar Mühendisliği’nde yapmıştır. Bilişim sektöründe çeşitli firmalarda sistem ve network sorumlusu olarak çalışmıştır. Bazı kurumlarda sistem ve network üzerine uzmanlık eğitimleri vermiştir. Şu anda Netaş şirketinde kurumsal danışman olarak görev yapmaktadır. Microsoft System Center ürünleri, Powershell ve Azure teknolojileri ile ilgilenmektedir. 2016 yılında Microsoft tarafından Cloud and Datacenter alanında MVP unvanını almıştır.

Yorum Yap