差分
このページの2つのバージョン間の差分を表示します。
両方とも前のリビジョン 前のリビジョン | |||
バックアップについて [2024/07/22 15:30] – suikou | バックアップについて [Unknown date] (現在) – 削除 - 外部編集 (Unknown date) 127.0.0.1 | ||
---|---|---|---|
行 1: | 行 1: | ||
- | # バックアップについて | ||
- | ## シーケンスデータ | ||
- | |||
- | 2019年以降はm64k:/ | ||
- | |||
- | ``` | ||
- | ssh m32s | ||
- | cd / | ||
- | sudo rsync -av --progress / | ||
- | ``` | ||
- | |||
- | 2020年以降のいくつかはm64g(-> | ||
- | |||
- | ``` | ||
- | ssh m32s | ||
- | cd / | ||
- | sudo rsync -av --progress --exclude ' | ||
- | ``` | ||
- | |||
- | ## crontab一覧 | ||
- | |||
- | ``` | ||
- | $ for i in `qhost|tail -n+4|awk ' | ||
- | :::::::::::::: | ||
- | m208.txt | ||
- | :::::::::::::: | ||
- | 27 11 * * * yoshitake.kazutoshi / | ||
- | :::::::::::::: | ||
- | m256y.txt | ||
- | :::::::::::::: | ||
- | 20 2 1-7 * * root [ " | ||
- | 20 2 1-7 * * root [ " | ||
- | 20 2 1-7 * * root [ " | ||
- | :::::::::::::: | ||
- | m32r.txt | ||
- | :::::::::::::: | ||
- | #33 2 * * * root rsync -av --delete m32s:/m2 /data/ | ||
- | :::::::::::::: | ||
- | m32s.txt | ||
- | :::::::::::::: | ||
- | */10 * * * * yoshitake.kazutoshi cd / | ||
- | 15 9 * * 1 yoshitake.kazutoshi / | ||
- | 1 5 * * * root rsync -a --delete /m2/ / | ||
- | 1 4 * * * root rsync -a --delete m768c:/ | ||
- | 1 14 * * * yoshitake.kazutoshi rsync -a --delete sakura:* / | ||
- | 1 3 * * * yoshitake.kazutoshi rsync -a --delete --exclude '# | ||
- | 1 2 * * 3 root / | ||
- | 1 1 2 * * yoshitake.kazutoshi bash / | ||
- | :::::::::::::: | ||
- | m512p.txt | ||
- | :::::::::::::: | ||
- | 27 11 * * * yoshitake.kazutoshi / | ||
- | :::::::::::::: | ||
- | m768.txt | ||
- | :::::::::::::: | ||
- | 27 11 * * * yoshitake.kazutoshi / | ||
- | |||
- | ``` | ||
- | |||
- | m128mは[[https:// | ||
- | |||
- | ## Hyper-V | ||
- | |||
- | | ||
- | |||
- | | ||
- | |||
- | | ||
- | |||
- | | ||
- | |||
- | | ||
- | |||
- | ### 設定方法 | ||
- | |||
- | D: | ||
- | |||
- | Powershellを管理者権限で開き、```Set-ExecutionPolicy RemoteSigned```を実行。 | ||
- | |||
- | タスクスケジューラでタスクの作成を行い、プログラムとしてpowershell.exeを指定し、引数にhyper-v-back.ps1を指定。「最上位の特権で実行する」にチェックを入れる(管理者権限でないとVMのエクスポートは実行できない)。ユーザーがログインしていなくても実行にもチェック。 | ||
- | |||
- | |||
- | ## www | ||
- | |||
- | | ||
- | |||
- | | ||
- | |||
- | | ||
- | |||
- | dokuwikiのバックアップを起動したい場合は、m768の/ | ||
- | |||
- | ``` | ||
- | docker container run --name test1 --rm -p 8082:80 -v / | ||
- | ``` | ||
- | |||
- | を起動すると、http:// | ||
- | |||
- | ## www さくらサーバでのバックアップ | ||
- | |||
- | | ||
- | |||
- | ``` | ||
- | / | ||
- | |||
- | $ more ~/ | ||
- | # | ||
- | |||
- | find / | ||
- | i=`date " | ||
- | / | ||
- | ``` | ||
- | |||
- | ## m768のwwwバックアップ | ||
- | |||
- | m32s上で毎日バックアップ | ||
- | |||
- | ``` | ||
- | $ more / | ||
- | |||
- | 1 4 * * * root rsync -a --delete m768:/ | ||
- | ``` | ||
- | |||
- | ## 共有フォルダ(/ | ||
- | |||
- | | ||
- | |||
- | ``` | ||
- | 13 1 * * * root rsync -a --delete /m2/ / | ||
- | ``` | ||
- | |||
- | ## 共有フォルダ(/ | ||
- | |||
- | | ||
- | |||
- | ``` | ||
- | 1 3 * * * yoshitake.kazutoshi rsync -a --delete --exclude '# | ||
- | 1 2 * * 3 root / | ||
- | |||
- | #!/bin/bash | ||
- | |||
- | olddir=`ls / | ||
- | mydate=`date ' | ||
- | if [ " | ||
- | rsync -av --link-dest / | ||
- | else | ||
- | rsync -av / | ||
- | fi | ||
- | ``` | ||
- | |||
- | また、synology上で、1日1回バックアップを行い、30日分のバックアップを保持するように設定している。 | ||
- | |||
- | synologyのCloud Syncパッケージで吉武のonedriveとも同期させているが、東大のOneDriveの容量が1TB-> | ||
- | |||
- | ## m32s:/ | ||
- | |||
- | <del> | ||
- | | ||
- | </ | ||
- | |||
- | ## m256yへバックアップ | ||
- | |||
- | ``` | ||
- | m768:/etc m768:/ | ||
- | sakura:www sakura: | ||
- | / | ||
- | ``` | ||
- | をm256yの/ | ||
- | |||
- | |||
- | ## ファイル数の多いディレクトリについて | ||
- | |||
- | ディスク使用量を計算するとき、du -hc, ncduなどのコマンドが戻ってくるのが遅くなるし、ディスクを移すときに時間がかかってしまうので、ファイル数の大きなディレクトリは基本的には | ||
- | |||
- | ``` | ||
- | sudo zip -ry < | ||
- | sudo rm -rf < | ||
- | ``` | ||
- | で一つのzipファイルにまとめてある。 | ||
- | zipならtar.gzと違って、zipinfoコマンドでファイル一覧をインデックスから素早く見られるし、zipの中の1ファイルだけを限定して解凍することも下記のように可能。 | ||
- | |||
- | ``` | ||
- | unzip zipfile.Zip path/ | ||
- | ``` | ||
- | |||
- | ## Hyper-Vバックアップスクリプト | ||
- | |||
- | ``` | ||
- | <### | ||
- | このスクリプトについて: | ||
- | |||
- | 仮想マシンをエクスポートする処理を行います。 | ||
- | (併せて、古いエクスポートを削除します) | ||
- | |||
- | このシェルはタスクスケジューラーによって毎日 AM 2:00 に起動されます。 | ||
- | |||
- | |||
- | STEP1: 仮想マシンをエクスポート | ||
- | STEP2: 古いエクスポートを削除 | ||
- | ###> | ||
- | |||
- | |||
- | |||
- | <### | ||
- | 【STEP 1】 | ||
- | 仮想マシンを下記パスにエクスポートする | ||
- | E: | ||
- | ###> | ||
- | |||
- | ### 日付の取得 | ||
- | $NowDate = Get-Date -Format " | ||
- | |||
- | ### 削除するVMの古さを指定 | ||
- | ### 3日 -> -4320だと3日前のが残っちゃうので、4300 とかちょっと減らしておくのがいいかも。 | ||
- | $DeleteTime = " | ||
- | |||
- | ### エクスポート先のパスを指定 | ||
- | $ExportPath = " | ||
- | |||
- | ### エクスポート対象の仮想マシンの指定 | ||
- | $letterArray = " | ||
- | |||
- | $TragetVM01 = " | ||
- | $TragetVM02 = " | ||
- | $TragetVM03 = " | ||
- | |||
- | ### Export | ||
- | foreach ($TragetVM01 in $letterArray) | ||
- | { | ||
- | ### Exportの成功 or 失敗の判断を STEP2(古いフォルダの削除)でするための変数($CheckCode)を定義 | ||
- | ### 最初に0(=成功)を代入しておく。(失敗を検知したら 1 が代入される) | ||
- | $CheckCode = 0 | ||
- | |||
- | ### コマンドエラー時に Try-Catch の Catch 部分が実行されるように、デフォルトパラメータを Stopに変更 | ||
- | $ErrorActionPreference = " | ||
- | |||
- | Try { | ||
- | ### 仮想マシンのエクスポートを実行 | ||
- | Export-VM -Name $TragetVM01 -Path $ExportPath\$TragetVM01\$NowDate -ErrorVariable ExportError01 | | ||
- | Out-Null | ||
- | }Catch{ | ||
- | ### Export-VM がエラーになったら、エラー内容をファイルに出力して、$CheckCode に 1を代入 | ||
- | ### エラーを このファイルに出力→ $ExportPath\ExportErrorCode-$TragetVM01-$NowDate.txt | ||
- | echo $ExportError01 | | ||
- | Out-File $ExportPath\$TragetVM01\$NowDate.txt | ||
- | |||
- | ### エラーの場合は変数 ' | ||
- | $CheckCode = 1 | ||
- | } | ||
- | Out-Null | ||
- | |||
- | ### Export-VM が例外処理で停止していなければ($CheckCode = 0)、古いフォルダの削除実施 | ||
- | if ( $CheckCode -eq 0 ) { | ||
- | ### 対象フォルダ配下のリストを取得 | ||
- | ### 作成されてから $DeleteTime の値を超過したフォルダ・ファイルを選択/ | ||
- | ### 対象を絶対パスに変換し、削除 | ||
- | Get-ChildItem $ExportPath\$TragetVM01 | | ||
- | Where-Object { | ||
- | $_.CreationTime -lt (Get-Date).AddMinutes($DeleteTime) | ||
- | } | | ||
- | foreach { | ||
- | Remove-Item -Recurse -Force $_.FullName | ||
- | } | ||
- | } | ||
- | } | ||
- | |||
- | ``` |