All about Cloud & Powershell

Windows 8 Disk İmajlarını (ISO) Powershell ile Yönetmek

Windows 8 ile gelen yeniliklerden bir tanesi de ISO uzantılı image dosyalarını ek bir uygulamaya (daemon tools vs.) gerek kalmadan Windows içerisine mount edebilmeniz yani sürücü gibi kullanabilmeniz. Genellikle işletim sistemi kurulum ve güncelleştirme dosyaları gibi yüksek boyutlu dosyalar ISO uzantısıyla download edilirler. Bu dosyaları extract (ayıkla) ederek kurulum yapabilirsiniz ancak bu hem zaman hem de disk alanı kaybı anlamına gelir. Windows 8 içerisinde ISO dosyasının üzerine sağ tıklayarak Mount demeniz yeterli. Sonrasında C,D,E gibi yeni bir sürücüye daha sahip olabilirsiniz. Bu özelliği zaten Windows 8 ile kullanmaya başladık. Ancak bu özelliği Powershell içerisinden nasıl kullanabiliriz buna bir bakalım!

Öncelikle Disk imajları için Windows 8 içerisinde 3 adet cmdlet bulunur. Bunlar Storage Modülünün altında yer alır.

Zaten Disk imajıyla yapılabilecekler de bunlar. İmajın detaylarını görmek (get-diskimage), mount etmek (mount-diskimage) ve dismount etmek (dismount-diskimage).

Şimdi bunları sırasıyla hızlıca örneklendirelim. Önce bilgisayarımda bulunan iso dosyalarının detaylarını görmek istiyorum. Ne yapmalıyım? Bakalım..

Get-diskimage –imagepath c:BakiOnur en_office_professional_plus_2013_x64_dvd_1123674.iso

Evet yukarıdaki komut bana iso dosyalarımdan seçtiğim bir tanesinin özelliklerini getirir. Ancak sizin de bildiğiniz gibi iso dosyaları çok uzun dosya isimlerine sahiptir ve bunu yazmak zaman alabilir. Bunun yerine bilgisayarımdaki iso dosyalarının her birinin ismini sistem otomatik alıp getirse? Bence hoş olur.

Dir –Recurse –Filter *.iso | Foreach{get-Diskİmage –ImagePath $_.fullname}

Bu sayede bilgisayarımdaki iso dosyalarının hepsini alarak tek tek (foreach) disk-Image cmdlet’i ile birlikte kullandım. Pipeline güzelliğini her komutla yeniden yaşamak paha biçilemez. J

Gördüğünüz gibi dosyanın uzun ismini yazmaktansa fullname değişkeni sayesainde bu işimi de gördüm. Böylece bana tüm iso dosyalarımın özellikleri geldi.

Şimdi istediğim iso dosyalarını Mount etmek zamanı.. Bunun için de Mount-DiskImage cmdlet’ini kullanıyorum.

Dir –Recurse –Filter *.iso | Foreach{Mount-Diskİmage –ImagePath $_.fullname}

Bu komutun ne kadar hızlı çalıştığını gördükten sonra bakalım başarılı olduk mu? Evet “Bilgisayarım”a girerek 2 ISO dosyası Mount edilerek oluşturulmuş 2 sürücü görüyorum (G ve H).

Bir kere de şimdi bakalım bu sürücülerin durumu neymiş..

Dir –Recurse –Filter *.iso | Foreach{get-Diskİmage –ImagePath $_.fullname} | Get-Volume

Ve sırada işim bittikten sonra bu imajları geri sökmek kaldı. Bunu da dismount ile yapmalıyım elbette.

Dir –Recurse –Filter *.iso | Foreach{Mount-Diskİmage –ImagePath $_.fullname}

Ben bu örnekte bilgisayarımda bulunan tüm iso dosyaları için bu işlemi yaptım. Sizler spesifik bir dosya için get, Mount ve Dismount cmdlet’lerini kullanacaksanız o zaman doğrudan işlem yapmak istediğiniz ISO dosyasının yolunu göstererek çalışınız.

Örnek:

Get-DiskImage –Imagepath “iso dosyasının yolu (dosya ismi ve uzantı dahil)”

Mount-DiskImage –ImagePath “iso dosyasının yolu (dosya ismi ve uzantı dahil)”

Dismount-DiskImage –ImagePath “iso dosyasının yolu (dosya ismi ve uzantı dahil)”

Umaırm işinize yarar..

Teşekkürler,

BakiOnur

Yazıyı Paylaş! These icons link to social bookmarking sites where readers can share and discover new web pages.
  • Facebook
  • Google Bookmarks
  • LinkedIn
  • Technorati
  • Twitter
BakiOnur ()

Microsoft Most Valuable Professional (MVP 2009,2010,2011,2012,2013,2014,2015,2016 Current) Towershell.com Founder clouderz.com Founder Microsoft Certified Trainer (10 years in a row, current) Onur has been working in IT arena with more than 15 years of experience specifically in Windows Server, Exchange Server and Powershell and for the past 5 years in Cloud Technologies including Office 365, Azure and so on. He's authored Windows Server books and written more than 400 technical articles published on several communities. Some of his hundreds of Powershell tools and scripts has been published on Microsoft Script Center. Onur is also a 10-year MCT who has delivered more than 10.000 hours of training in Microsoft technologies. He has been to over 70 universities and presented several Microsoft technologies with highlighted topics. He graduated from Okan University Graduate School in Computer Engineering. He lives in London and is currently running his own business at Clouderz Ltd.

Sosyal Medya

Visit Us On TwitterVisit Us On FacebookVisit Us On Linkedin
@BakiOnur 'u Takip Et

MVP Profili

Kategoriler

Arşiv

Soru ve Önerileriniz

[si-contact-form form='1']

Download