پاورشل (Powershell) چیست؟ 10 نکته ویندوز سرور 2008 و بالاتر از آن

Windows Server 2008 R2 دنیای عظیمی از قابلیت های مخفی، امکانات و ابزارهایی است که می توانند زندگی یک ITPro را آسان تر کنند. ITProهایی که از Windows Server 2008 R2 استفاده می کنند، این ابزارها را جزو ملزومات اصلی برای کوچ کردن به Windows Server 2012 و یا قدرت بخشیدن به سرورهای فعلی شان میدانند.با این که مایکروسافت به تبلیغ و ترویج قابلیت ها و مزایای Windows Server 2012 مشغول است، هنوز تعداد زیادی از ITProها هستند که می خواهند (و به احتمال زیاد مجبورند) که از محیط Windows Server 2008 استفاده کنند.

دوره های شبکه، برنامه نویسی، مجازی سازی، امنیت، نفوذ و ... با برترین های ایران
سرفصل های این مطلب
  1. Windows PowerShell چیست ؟

برای آن هم دلایل زیادی وجود دارد که مهم ترین آن ها محدودیت بودجه و نیازها است. به همین سادگی می توان فهمید که بسیاری از ITProها عجله ای برای حرکت به سمت Windows Server 2012 را ندارند. یکی دیگر از دلایل این عدم حرکت متخصصین فناوری اطلاعات به سمت Windows Server 2012 این است که Windows Server 2008 R2 همچنان ویژگی ها و قابلیت هایی دارد که کمتر کسی از آن ها خبر دارد و زندگی را به کام متخصصین فناوری اطلاعات شیرین کرده اند.

همچنین پیدا کردن این نکته های نوشته نشده در Windows Server 2012 کمی زمان بر است – درسته که بگم بیشتر آن ها مستندسازی شده اند فقط پیدا کردن آن ها ممکن نیست. به هر حال چند نکته را گردآوری کرده ام که هر ITProای باید در هنگام کار با Windows Server 2008 R2 از آن ها مطلع باشد.


Windows PowerShell چیست ؟

اگرچه بیشتر ITProها درباره Windows PowerShell اطلاعاتی دارند، بسیاری از قدرتی که این ابزار به مدیریت Windows Server 2008 می دهد، خبر ندارند. PowerShell آرایه بزرگی از دستورات و syntaxها را به ارمغان آورده که کارهای سخت و طاقت فرسای روزانه را بسیار آسان می کند. دیگه چی؟ PowerShell یکی از بهترین کمک های اولیه برای حل آسن و پرسرعت مشکلات فنی است. این ها تنها چند دلیل از دلایلی بود که یک ITPro می خواهد که استاد PowerShell و دستورات رفع اشکال شود.

در زیر چند دستور پرکاربرد که در PowerShell اجرا می شوند را آورده ام:

    • پیداکردن سازنده و مدل کامپیوتر:
Get-WmiObject -Class Win32_ComputerSystem


    • اطلاعاتی را درباره BIOS می دهد:
Get-WmiObject -Class Win32_BIOS –ComputerName


    • پیدا کردن username کاربری که login کرده است:
Get-WmiObject -Class Win32_ComputerSystem -Property UserName –ComputerName


    • آدرس های IP اختصاص داده شده به این کامپیوتر را نشان می دهد:
Get-WmiObject -Class Win32_NetworkAdapterConfiguration -Filter IPEnabled=TRUE -ComputerName . | Format-Table -Property IPAddress



    • نصب یک بسته MSI بر روی یک کامپیوتر ریموت:
(Get-WMIObject -ComputerName TARGETMACHINE -List | Where-Object -FilterScript {$_.Name -eq "Win32_Product"}).Install(\MACHINEWHEREMSIRESIDESpathpackage.msi)


    • حذف یک بسته MSI از روی کامپیوتر فعلی:
 (Get-WmiObject -Class Win32_Product -Filter "Name='product_to_remove'" -ComputerName . ).Uninstall()


    • به صورت ریموت یک کامپیوتر را بعد از یک دقیقه خاموش کن:
Start-Sleep 60; Restart-Computer –Force –ComputerName TARGETMACHINE


    • وصل شدن به یک session مربوط به PowerShell (باید از قیل remote management را فعال کنید):
enter-pssession TARGETMACHINE


    • Upgrade و نصب یک بسته نرم افزاری MSI:
(Get-WmiObject -Class Win32_Product -ComputerName . –Filter "Name='name_of_app_to_be_upgraded'").Upgrade(\MACHINEWHEREMSIRESIDESpathupgrade_package.msi)


    • اطلاعات IP دسنگاه فعلی را با جزییات بیشتر نمایش می دهد:
Get-WmiObject -Class Win32_NetworkAdapterConfiguration -Filter IPEnabled=TRUE -ComputerName . | Select-Object -Property [a-z]* -ExcludeProperty IPX*,WINS*


مثال های بالا تنها چند نمونه از کارهایی بود که می توانید با PowerShell انجام دهید. با این وجود همین چند مثال اهمیت PowerShell را برای مدیریت سرورهای local و remote بیان می کند. دیگه چی؟ بسیاری از این دستورات می توانند بر روی کامپیوترهای کلاینت هم برای ساده سازی مدیریت و عیب یابی اجرا شوند.

در آدرس زیر منابع بسیاری برای آشنایی با PowerShell گنجانده شده است: PowerShellMagazine.com


نظرات