Win Dir Stat

لینک دانلود

چند وقت پیش سرور اکسچنج ما شروع کرد به پر شدن بیش از حد درایو C .

البته این مشکل می تونه روی هر سرور یا هر سیستمی به صورت کلی پیش بیاد ، اما بررسی و پیدا کردن اینکه کدوم فولدر و کدوم برنامه داره فضای زیادی رو اشغال می کنه، ممکنه کار سخت و زمان گیری باشه.

ابزاری که معرفی می کنم به نام Win Dir Stat ، تمام درایو شما رو بررسی می کنه و بهتون میگه کدوم فولدرها و کدوم نوع فایلها بیشترین فضا رو گرفتن.

از اونجایی که ما دنبال فایل های TMP , LOG بودیم کار ما رو خیلی راحت کرد ، هر چند در نهایت باید دقت بسیار زیادی در پاک کردن فایلهای اضافی بکنید و طبق معمول پیشنهاد میدم بکاپ مناسب رو قبل از این کار داشته باشید.

Win Dir Stat

3 نظر
 نیما شایق

من یک تسک درست کردم که اسکریپ زیر رو بصورت روزانه میکنه تا لاگ های 3 روز قبل رو از اکسچنج 2016 حذف کنه شاید بدرد شما هم بخوره:


Set-Executionpolicy RemoteSigned
$days=3
$IISLogPath="C:\inetpub\logs\LogFiles\"
$ExchangeLoggingPath="C:\Program Files\Microsoft\Exchange Server\V15\Logging\"
$ETLLoggingPath="C:\Program Files\Microsoft\Exchange Server\V15\Bin\Search\Ceres\Diagnostics\ETLTraces\"
$ETLLoggingPath2="C:\Program Files\Microsoft\Exchange Server\V15\Bin\Search\Ceres\Diagnostics\Logs"
Function CleanLogfiles($TargetFolder)
{
    if (Test-Path $TargetFolder) {
        $Now = Get-Date
        $LastWrite = $Now.AddDays(-$days)
        $Files = Get-ChildItem $TargetFolder -Recurse | Where-Object {$_.Name -like "*.log" -or $_.Name -like "*.blg" -or $_.Name -like "*.etl"}  | where {$_.lastWriteTime -le "$lastwrite"}
        foreach ($File in $Files)
            {Write-Host "Deleting file $File" -ForegroundColor "white"; Remove-Item $File.fullname  | out-null}
       }
Else {
    Write-Host "The folder $TargetFolder doesn't exist! Check the folder path!" -ForegroundColor "white"
    }
}
CleanLogfiles($IISLogPath)
CleanLogfiles($ExchangeLoggingPath)
CleanLogfiles($ETLLoggingPath)
CleanLogfiles($ETLLoggingPath2)
$LastWrite = $Now.AddDays(-1)
$Files = Get-ChildItem "C:\Program Files\Microsoft\Exchange Server\V15\Logging\HttpProxy\Ews" -Recurse | Where-Object {$_.Name -like "*.log" -or $_.Name -like "*.blg" -or $_.Name -like "*.etl"}  | where {$_.lastWriteTime -le "$lastwrite"}
        foreach ($File in $Files)
            {Write-Host "Deleting file $File" -ForegroundColor "white"; Remove-Item $File.fullname  | out-null}

علی آقامیری

امروز این اسکریپت رو امتحان کردیم ، بسیار عالی بود . ممنون

 نیما شایق

البته انتهاش رو یک تغییراتی دادم که فایل های ews رو تنها یک روز نگه داره.

نظر شما
برای ارسال نظر باید وارد شوید.
از سرتاسر توسینسو
تنظیمات حریم خصوصی
تائید صرفنظر
×

تو می تونی بهترین نتیجه رو تضمینی با بهترین های ایران بدست بیاری ، پس مقایسه کن و بعد خرید کن : فقط توی جشنواره تابستانه می تونی امروز ارزونتر از فردا خرید کنی ....