Computer >> कंप्यूटर >  >> प्रणाली >> Windows Server

पावरशेल:फ्री डिस्क स्पेस और डिस्क उपयोग की जांच करें

इस लेख में हम आपको दिखाएंगे कि पावरशेल का उपयोग करके स्थानीय या दूरस्थ विंडोज होस्ट पर मुफ्त डिस्क स्थान और डिस्क उपयोग की जांच कैसे करें। साथ ही, इस बात पर विचार करें कि खाली स्थान सीमा पार होने पर व्यवस्थापक को पॉप-अप अधिसूचना या ईमेल के साथ कैसे सूचित किया जाए।

WMI और PowerShell के साथ विंडोज़ पर डिस्क मुक्त स्थान की जांच कैसे करें?

आप Win32_logicDisk . का उपयोग करके विंडोज़ में अपने लॉजिकल ड्राइव के बारे में जानकारी प्राप्त कर सकते हैं WMI वर्ग।

नीचे दिया गया कमांड आपके कंप्यूटर पर लॉजिकल ड्राइव के बारे में सभी जानकारी प्रदर्शित करेगा:

Get-WmiObject -Class Win32_LogicalDisk

यदि आप नए पावरशेल कोर 7.x का उपयोग कर रहे हैं, तो ध्यान दें कि इस पावरशेल संस्करण में डब्लूएमआई समर्थित नहीं है (चूंकि पावरशेल कोर नेट कोर पर आधारित है)। यदि आप Get-WmiObject कमांड को चलाने का प्रयास करते हैं, तो आपको निम्न त्रुटि दिखाई देगी:The term 'Get-WmiObject' is not recognized as a name of a cmdlet, function, script file, or executable program . WMI के बजाय CIM का उपयोग करें, उदाहरण के लिए:

Get-CimInstance win32_logicaldisk

पावरशेल:फ्री डिस्क स्पेस और डिस्क उपयोग की जांच करें

फ्रीस्पेस संपत्ति में प्रत्येक ड्राइव पर छोड़े गए बाइट्स में खाली स्थान की मात्रा होती है। इसे और अधिक सुविधाजनक बनाने के लिए, आप इसे जीबी में परिवर्तित कर सकते हैं और प्रत्येक तार्किक डिस्क पर खाली स्थान की मात्रा को% में प्रदर्शित कर सकते हैं (जैसे कि खाली स्थान का कुल डिस्क आकार के अनुपात के रूप में)। आप निम्न पावरशेल स्क्रिप्ट का उपयोग कर सकते हैं:

Get-WmiObject -Class Win32_LogicalDisk |
Select-Object -Property DeviceID, VolumeName, @{Label='FreeSpace (Gb)'; expression={($_.FreeSpace/1GB).ToString('F2')}},
@{Label='Total (Gb)'; expression={($_.Size/1GB).ToString('F2')}},
@{label='FreePercent'; expression={[Math]::Round(($_.freespace / $_.size) * 100, 2)}}|ft

पावरशेल:फ्री डिस्क स्पेस और डिस्क उपयोग की जांच करें

स्क्रिप्ट तार्किक ड्राइव, उनके आकार और खाली स्थान प्रतिशत की सूची प्रदर्शित करती है।

PowerShell Core में इस स्क्रिप्ट का उपयोग करने के लिए, बस Get-WmiObject . को बदलें Get-CimInstance . के साथ .

यदि आप केवल डिस्क पर खाली स्थान के बारे में जानकारी प्रदर्शित नहीं करना चाहते हैं, लेकिन इसके बजाय कुछ कार्रवाई करें (ई-मेल भेजें या पॉपअप संदेश दिखाएं) यदि निर्दिष्ट सीमा से कम खाली स्थान है, तो आप इसका उपयोग कर सकते हैं नीचे दी गई पॉवरशेल स्क्रिप्ट:

$percentWarning = 20
$percentCritcal = 5
$ListDisk = Get-WmiObject -Class Win32_LogicalDisk
Foreach($Disk in $ListDisk){
if ($Disk.size -ne $NULL) {
$DiskFreeSpace = ($Disk.freespace/1GB).ToString('F2')
$DiskFreeSpacePercent = [Math]::Round(($Disk.freespace/$Disk.size) * 100, 2)
if($DiskFreeSpacePercent -lt $percentWarning){
$Message= "Warning!"
if($DiskFreeSpacePercent -lt $percentCritcal){
$Message= "Alert!"
}
$wshell = New-Object -ComObject Wscript.Shell
$Output = $wshell.Popup("Disk $($Disk.DeviceID) has only $DiskFreeSpace GB of free space left",0,$Message,48)
}
}
}

पावरशेल:फ्री डिस्क स्पेस और डिस्क उपयोग की जांच करें

यह स्क्रिप्ट डिस्क पर छोड़े गए खाली स्थान के थ्रेशोल्ड मान सेट करती है - 5% और 20%। यदि किसी भी डिस्क पर खाली स्थान की मात्रा निर्दिष्ट मानों से कम है, तो एक मोडल सूचना विंडो प्रदर्शित होती है। आप इसे एक पॉप-अप सूचना के रूप में दिखा सकते हैं या तुरंत डिस्क क्लीनअप टूल चला सकते हैं (cleanmgr.exe )।

यदि आप समस्या के व्यवस्थापक को ईमेल करना चाहते हैं, तो आप Send-MailMessage के साथ एक SMTP सर्वर के माध्यम से एक ईमेल भेज सकते हैं (यह एक्सचेंज होस्ट या कोई अन्य SMTP सेवा हो सकती है, यहां तक ​​कि अंतर्निहित Windows सर्वर SMTP भूमिका भी करेगा) सीएमडीलेट:

Send-MailMessage -To “srv_admin@woshub.com” -From “$env:computername@woshub.com” -Subject “Insufficient disk space on server $env:computername” -Body “Disk $($Disk.DeviceID) has only $DiskFreeSpace GB left” -Credential (Get-Credential) -SmtpServer smtp.woshub.com -Port 587

इस उदाहरण में, आपको SMTP होस्ट से अंतःक्रियात्मक रूप से कनेक्ट करने के लिए क्रेडेंशियल दर्ज करने की आवश्यकता है। आप अपने एसएमटीपी होस्ट को बिना प्रमाणीकरण के विश्वसनीय होस्ट से संदेश स्वीकार करने के लिए कॉन्फ़िगर कर सकते हैं, या फ़ाइल में सहेजे गए क्रेडेंशियल्स का उपयोग करके एसएमटीपी प्रमाणीकरण को कॉन्फ़िगर कर सकते हैं (ईमेल भेजने के लिए प्रबंधित सेवा खातों का उपयोग करना संभव नहीं है)।

आप टास्क शेड्यूलर का उपयोग करके नियमित रूप से पावरशेल स्क्रिप्ट चला सकते हैं या इसे विंडोज सेवा के रूप में कॉन्फ़िगर किया जा सकता है। अगर इस विंडोज होस्ट पर पर्याप्त खाली जगह नहीं है, तो व्यवस्थापक को एक सूचना मिलेगी।

PowerShell के माध्यम से दूरस्थ Windows होस्ट से निःशुल्क डिस्क स्थान प्राप्त करें

Invoke-Command cmdlet का उपयोग PS स्क्रिप्ट चलाने के लिए दूरस्थ कंप्यूटर पर शेष खाली स्थान की जाँच करने के लिए किया जा सकता है।

Invoke-Command -ComputerName srv01,srv02,srv03 -FilePath "C:\PS\checkfreespace.ps1"

यदि आप जिन सर्वरों पर खाली स्थान की मात्रा की जांच करना चाहते हैं, वे आपके डोमेन में हैं, तो आप Get-ADComputer cmdlet का उपयोग करके सक्रिय निर्देशिका से उनकी सूची प्राप्त कर सकते हैं और प्रत्येक होस्ट के विरुद्ध स्क्रिप्ट चला सकते हैं:

$computers = (Get-ADComputer -Filter 'operatingsystem -like "*Windows Server*" -and enabled -eq "true"').Name
Invoke-Command -ComputerName $computers -FilePath "C:\PS\checkfreespace.ps1" -ErrorAction SilentlyContinue

दूरस्थ कंप्यूटर से WMI डेटा प्राप्त करने के लिए आप RemoteWMI का भी उपयोग कर सकते हैं:

Get-WmiObject -Class Win32_logicalDisk -ComputerName srv01,srv02,srv03

यह मार्गदर्शिका डिस्क स्थान की निगरानी के लिए सबसे आसान स्व-निर्मित समाधान का वर्णन करती है। यदि आपके पास बहुत सारे मेजबान हैं जिन पर निगरानी रखने की आवश्यकता है, तो एक पूर्ण-विशेषताओं वाली निगरानी प्रणाली (जैसे ज़ैबिक्स, आईसिंगा, पीआरटीजी, नागियोस, आदि) का उपयोग करना बेहतर है।


  1. मैक पर डिस्क स्थान खाली कैसे करें

    मैक तेजी से प्रसंस्करण और एसएसडी ड्राइव के साथ उपयोग करने के लिए एक अद्भुत उपकरण है। लेकिन चूंकि आपके स्टॉक SSD डिवाइस में केवल 128GB की जगह है, इसलिए आपको अक्सर आपकी स्टार्टअप डिस्क लगभग भर चुकी है जैसी चेतावनियाँ मिल सकती हैं। इसलिए, अपने मैक को साफ-सुथरा रखना और डिस्क स्थान बनाए रखना आवश्यक है।

  1. Windows 10, 7, 8 में डिस्क स्थान कैसे खाली करें

    भले ही आपकी हार्ड डिस्क का आकार कितना भी हो, जल्दी या बाद में, ड्राइव का खाली स्थान डेटा से भर जाएगा और आपको एक संदेश मिलेगा कि हार्ड डिस्क स्थान समाप्त हो रहा है। यदि आप हार्ड डिस्क के साथ फंस गए हैं और कुछ स्थान पुनः प्राप्त करना चाहते हैं, तो आप सही जगह पर आए हैं। हमने विंडोज 10, 8 और 7 में डिस्क

  1. लिनक्स में डिस्क स्थान की जांच और प्रबंधन कैसे करें

    डिस्क स्थान का प्रबंधन कंप्यूटर उपयोगकर्ताओं के लिए प्रमुख चिंताओं में से एक है, भले ही वे जिस प्लेटफॉर्म का उपयोग करते हैं। खासकर अगर आप सिस्टम एडमिनिस्ट्रेटर हैं, तो आपका काम ऑफलाइन और ऑनलाइन सिस्टम की सेहत पर नजर रखना है। चूंकि कम डिस्क स्थान लिनक्स पर अपडेट में बाधा डाल सकता है, जिससे अन्य गंभीर