web-dev-qa-db-ja.com

Windows Server2008のバックアップをクリーンアップする方法

プライマリドライブをローカルハードディスクにバックアップしているWindows2008サーバーがあります。

このサーバーはあまり頻繁に変更されないため、価値のある変更が発生した場合にのみ手動で実行します。

これまでに、ディスク上に13個のバックアップを作成しました。私が本当に欲しいのは最後の2つだけだと考えると;どうすればそれらをクリアできますか?

PDATE:明確にするために、この質問はWindowsサーバーのオペレーティングシステムに関するものです。 SQLサーバーではありません。

2
NotMe

確認のためにテストサーバーにWindowsServerバックアップをロードしていますが、次の投稿が役立つはずです。

http://social.technet.Microsoft.com/Forums/en-US/windowsbackup/thread/d5302218-91ce-4f02-9fba-9c91e9027f69

ボリュームシャドウコピーベースのバックアップの場合、wbadminを使用してバックアップの最大サイズを直接設定する方法はありません。 Windows Serverバックアップはバージョン管理をシャドウコピーに依存しているため、MAX DIFF AREAサイズを使用して、バージョンを保存するために割り当てられるスペースの量を制御できます。

さらに、古いバックアップバージョンは、すべての空き領域が使い果たされるまで増大し続けます。WindowsServerバックアップは、古いバージョンのバックアップを自動的に削除して、新しいバックアップ用のスペースを作成します。

ここでこのしきい値を調整します:ボリューム->設定->使用制限-> XXX MB

または、「vssadminsizeize」コマンドラインを使用してシャドウコピーの制限のストレージ量を増やすこともできます。

vssadmin resize shadowstorage /for=<ForVolumeSpec> /on=<OnVolumeSpec> /maxsize=<MaxSizeSpec>

例Vssadminサイズ変更shadowstorage/for = F:/ on = C:/ Maxsize = 900MB

2
Sean Earp

日付で行うのは、Powershellスクリプトから簡単です。

$Days = 30
$TargetFolder = "D:\temp"

$Now = Get-Date
$LastWrite = $Now.AddDays(-$Days)
$Files = get-childitem $TargetFolder -include *.bkf | Where {$_.LastWriteTime -le "$LastWrite"}

foreach ($File in $Files)
{ write-Host "Deleting File $File" -foregroundcolor "Red";
  Remove-Item $File
}

これにより、30日より古いフォルダD:\ temp内のすべての* .bkfファイルが削除されます。

いくつかのヘッドスクラッチを使用すると、これを適応させて、設定された数のファイルのみを保持することができます。 get-childitemからの出力を逆の日付でソートし、最初のn個のファイルをスキップする必要があります。

JR

0
John Rennie