Bareosでの1週間の鈍化について

タスクは、GUIからバックアップを整理し、大きなおじさんと同じようにするためにやって来ました。 以前は、ボリュームが数百ギガバイト、サイトおよびデータベース、数百のテストサイトに増加するまで、rsnapshotが立ち、すべてが素晴らしく機能していました。 サーバー群が増加し、このすべてのビジネスを管理することが難しくなっています。 利用可能なすべてのソリューションの中で、オープンソースを選択し、最も一般的に使用されるのはバレオに決めました。



Centos 7、raid5 12Tb用のサーバーがありました。 私はインストールを開始し、すぐに誰かがすでにバレオを配置しようとしていたという事実に出会いました。 苦しみ、ゼロからリメイクしないように、デーモンmariadb、bareos-sd、bareos-fd、bareos-dirをオフにしました。



sudo systemctl stop mariadb bareos-dir bareos-sd bareos-fd
      
      





そして、古い構成を削除しました:



 sudo systemctl stop mariadb sudo rm -rf /etc/bareos/* sudo rm -rf /etc/bareos/.* #         mysql -uroot -p -e "DROP DATABASE IF EXISTS 'bareos';"
      
      





ルートパスワードがわからない場合:



mysql rootパスワードをリセットする
 sudo systemctl stop mariadb sudo mysqld_safe --skip-grant-tables & mysql -uroot -e "UPDATE mysql.user SET Password=PASSWORD('__') WHERE User='root';" sudo systemctl restart mariadb
      
      







bareosとmariadbをまだインストールしていない場合。
bareosリポジトリを追加します。



 sudo wget http://download.bareos.org/bareos/release/latest/CentOS_7/bareos.repo -O /etc/yum.repos.d/bareos.repo && sudo sed -i 's/7/\$releasever/g' /etc/yum.repos.d/bareos.repo && sudo sed -i 's/\/1...\//\/latest\//g' /etc/yum.repos.d/bareos.repo
      
      





bareosおよびmariadbパッケージをインストールします。



 sudo yum install -y bareos-client bareos-database-tools bareos-filedaemon bareos-database-mysql bareos bareos-bconsole bareos-database-common bareos-storage bareos-director bareos-common mariadb-server sudo systemctl enable mariadb && sudo systemctl enable bareos-fd && sudo systemctl enable bareos-sd && sudo systemctl enable bareos-dir && sudo systemctl start mariadb sudo mysql_secure_installation
      
      





bareosデータベースを作成します。



 /usr/lib/bareos/scripts/create_bareos_database /usr/lib/bareos/scripts/make_bareos_tables -uroot -p /usr/lib/bareos/scripts/grant_bareos_privileges -uroot -p
      
      





これで、データベースとbareosユーザーができました。 これらのスクリプトは、パスワードなしでユーザーを作成し、bareosのパスワードを指定します。



 mysql -uroot -e "UPDATE mysql.user SET Password=PASSWORD('__') WHERE User='bareos';"
      
      







さて、プリミティブは終了しました。実際のプラグは何でしたか。 Linuxは、膨大な数の単純なピースから構築されることを常に知っていました。 bareosの設定方法を理解するのは難しいようでした。その理由は次のとおりです。 多くのインターネットマニュアルには、前駆バレオの細菌の構成設定が記載されており、3秒以内に何を突き止めるかがわからないように文書が書かれています。 多くのマニュアルにはエラーがありますが、ジョブセクションがストレージデーモンに配置されている理由がまったくわかりませんでした。 バレオとバキュラに関するすべてのドキュメントを吸った後、理解したい場合は、紙に各セクションを描き、それが何をするのか、すべてのパラメーターと悪魔間のつながりについて説明する必要があることに気付きました。



オフとの通信のスキーム。 ドキュメンテーション
画像



それでは、少しずつゆっくり行きましょう。 mariadbとbareos-dirを除くすべての悪魔とその他の機能を忘れてください。 すべての主な機能は、/ etc / bareos /ディレクトリにあるbareos-dir.conf構成に記述されています。 ディレクトリ権限は、ルートグループbareosの所有者である770でなければなりません。 サブディレクトリを使用する場合、ディレクトリ内のファイルの権限は640、ルートグループの所有者はbareosである必要があります。ディレクトリの実行ビットによりディレクトリの内容を表示できることを忘れないでください。したがって、サブディレクトリの権限も770、ルートグループの所有者はbareosです。



/etc/bareos/bareos-dir.conf
#コメントはグリッドで始まり、必須パラメーターはコメント化されていません

ディレクター{#サーバーセクションの説明の開始

Name = agima-dir#このサーバーの名前

#WorkingDirectory = "$ HOME / bareos / bin / working"#これは作業ディレクトリです

#Pid Directory = "$ HOME / bareos / bin / working"#PIDファイルの場所

QueryFile = "/usr/lib/bareos/scripts/query.sql"#メタデータを操作するためのSQLクエリのセット

#Maximum Concurrent Jobs = 10#同時に実行されるタスクの最大数

Password = "password"#このサーバーにアクセスするためのパスワード

#Description =「Main Bareos Director」#サーバーの説明

メッセージ=デーモン#メッセージ生成セクションの名前を示します

#Auditing = yes#サーバーで実行されたアクション(ログイン、タスクの開始、復元など)を記録します。 この別個のパラメーターは、Messagesパラメーターから外れています。

#FD Connect Timeout = 180#クライアント応答を期待する時間

#SD Connect Timeout = 1800#ストレージサーバーからの応答を予想する時間

#Maximum Connections = 30#このサーバーへの同時接続の最大数

#Maximum Console Connections = 30#このサーバーに同時に接続されるコンソールの最大数



#Dir Address = 1.2.3.4 9101#ドメイン名またはIPアドレス、ポートはスペースまたは個別のパラメーターで指定する必要があります



#Dir Addresses = {#複数の特定のドメインやIPアドレスを指定するには

#ip = {addr = 1.2.3.4; ポート= 1205;}

#ipv4 = {addr = 1.2.3.4; ポート= http;}

#ipv6 = {addr = 201:220:222 :: 2; ポート= 1205; }

#ip = {addr = server.example.com}

#}



#Dir Port = 9101#サーバーがリッスンするポート番号

}

#@記号は、他のファイルの挿入(組み込み)を開始します

#ディレクトリから複数のファイルを挿入する場合は、以下の構成を使用できます

#@ |「/etc/bareos/jobs/*.confのfのSh -c」。 エコー@ $ {f}; 完了 '»

#@/etc/bareos/jobs/1.conf



#すべてのDirectorセクションのパラメーターがファイルに示されているわけではありません。より完全なリストは、bareos.orgプログラムの公式Webサイトで入手できます。



サーバーについて説明しましたが、これで起動できます。



 systemctl start bareos-dir
      
      





サーバーはありますが、動作しますが、何もせず、バックアップを置く場所もありません。 bareos-sdデーモンはファイルの配置を担当し、その構成ファイルはbareos-sd.confと呼ばれます。



/etc/bareos/bareos-sd.conf
ストレージ{#ストレージデーモンの説明セクションの先頭

#Absolute Job Timeout = 20#完全なタイムアウトタスク

#Allow Bandwidth Bursting = no#チャネル幅の増加を有効にする

#Client Connect Wait = 1800#コンソールの応答を待つ時間

#デバイス統計の収集= no#デバイス統計の収集

#ジョブ統計の収集= no#タスク統計の収集

#Compatible = no#bacula互換モード

Description = "最初のストレージサーバー"#サーバーの説明

#FD Connect Timeout = 1800#クライアントの応答を予想する時間

#File Device Concurrent Read = no#デバイスからの同時読み取りを有効にします

#ジョブごとの最大帯域幅= 1 k / s#1タスクの最大チャネル幅、速度値k / s、kb / s、m / sまたはmb / s。

#Maximum Concurrent Jobs = 20#同時に実行されるタスクの最大数

#Maximum Network Bu ff er Size = 65536#低速を変更しようとすると、ネットワークバッファーのサイズ(バイト単位)。 場合によっては、速度を上げるために、バッファーのサイズを小さくする価値があります。

メッセージ=標準#メッセージ生成セクションの名前を示します

Name = agima-sd#このストレージサーバーの名前

#Pid Directory = / var / lib / bareos#PIDファイルの場所

#SD Address = 1.2.3.4 9103#ドメイン名またはIPアドレス、ポートはスペースまたは個別のパラメーターで指定する必要があります



#SD Addresses = {#複数の特定のドメインやIPアドレスを指定するには

#ip = {addr = 1.2.3.4; ポート= 1205;}

#ipv4 = {addr = 1.2.3.4; ポート= http;}

#ipv6 = {addr = 201:220:222 :: 2; ポート= 1205; }

#ip = {addr = server.example.com}

#}



#SD接続タイムアウト= 1800#最大接続タイムアウト

#SD Port = 9103#サーバーがリッスンするポート番号

#SD Source Address =#サーバーがクライアントとの通信をリッスンする特定の(別個の)アドレス

#Secure Erase Command = string#パラメーターを使用して、完全に削除するために使用するコマンドを示します

#Statistics Collect Interval = 30#統計を収集する間隔

#Working Directory = / var / lib#作業ディレクトリ

}



ディレクター{#このストレージサーバーへの接続セクションの説明の先頭

Name = agima-dir#私たちに接続できるサーバーの名前を示します

Password = "password1"#接続するパスワード

Description = "Backup server"#サーバーの説明

#Key Encryption Key = password#データ暗号化キー

#ジョブごとの最大帯域幅= 1 k / s#1タスクの最大チャネル幅、速度値k / s、kb / s、m / sまたはmb / s。

#Monitor = no#サーバーへの完全または制限されたアクセスを許可します。 制限付きアクセスでは、サーバーのステータスのみを表示できます。

}



デバイス{#保管場所の説明の開始

常に開く=いいえ。 #常にデバイスを開いたままにします

アーカイブデバイス= / opt / backup#Save Path

#Auto De flaate = out#このパラメーターは、autox flaate-sdモジュールがオンになっている場合にのみ機能します。 値:in-デバイスからの読み取り時のストリーム圧縮、デバイスへの書き込み時の圧縮圧縮、両方の場合とも圧縮。

#自動遅延アルゴリズム= GZIP#GZIP-gzipレベル1–9、LZO、LZFAST、LZ4、LZ4HC

#自動最終レベル= 6#圧縮レベル

#Auto In flaate = in#このパラメーターは、autox flaate-sdモジュールがオンになっている場合にのみ機能します。 値:in-デバイスからの読み取り時のストリーム圧縮、デバイスへの書き込み時の圧縮圧縮、両方の場合とも圧縮。

#Auto Select = yes#このデバイスを自動的に選択

#自動マウント=はい; #デバイスを自動的にマウント

#Block Checksum = yes#CRC32チェックサム検証を有効にし、破損したデータの読み取りも許可します

#Check Labels = yes#非ANSI形式のエントリのラベル検証を有効にします

#投票時に閉じる= no#デバイスを再マウントします

#統計の収集= yes#統計の収集

説明=「プライマリRAIDストレージ」#デバイスの説明

#Device Options = string#デバイスオプションは外部のCephおよびGlusterFSプラグインに使用されます

デバイスタイプ=ファイル#デバイスタイプ:テープカセット。 ファイルフラッシュドライブ、ドライブ、ネットワークドライブ。 GFAPI(GlusterFS); Rados(Ceph Object Store); Fifo読み取り専用または書き込み専用のシーケンシャルアクセスデバイス。

ラベルメディア=はい; #サーバーがブロックにラベルを設定できるようにする/ Bareos set label unlabeled mediaを許可する

ラベルタイプ=設定するプライマリ#ラベル

最大同時ジョブ数= 4#同時タスクの最大数

最大ファイルサイズ= 500 Gb#最大ファイルサイズ

#最大ジョブスプールサイズ=#最大ジョブキューサイズ

#Maximum Network Bu ff er Size = 65536#低速を変更しようとすると、ネットワークバッファーのサイズ(バイト単位)。 速度を上げるには、バッファのサイズを小さくする価値がある場合があります。

最大オープンボリュ​​ーム= 1#オープンボリュ​​ームの最大数

最大オープン待機= 15#デバイスの最大遅延

#Maximum Spool Size =#タスクキューの最大ボリューム

Media Type = File#は、最適なデバイスのタイプを自由に指定できるテキストパラメーターです

#Mount Command = Strname#このデバイスのmountコマンド

#Mount Point = Strname#マウントポイント

名前= AgimaStorage#この保管場所の名前

ランダムアクセス=はい; #はデータへのランダムアクセスのサポートを示し、カセットにはこの機能はありません

リムーバブルメディア= no; #デバイスを切断するかどうかを示します

Mount = Required#このデバイスのマウントが必要かどうか

#Spool Directory = directory#一時ファイルを作成するためのディレクトリ、デフォルトの作業ディレクトリ

#Unmount Command = Strname#unmountコマンド

#ボリューム容量=#ボリュームサイズ

}



メッセージ{

名前=標準#現在の通知の名前

説明=「標準メッセージファイルデーモン」#通知の説明

#Mail Command =#メール送信コマンド、パラメータメール、エラー時メール、成功時メールの前に記述する必要があります

#Mail Command = "/ usr / sbin / bsmtp -h mail.example.com -f \" \(Bareos \)\%r \ "-s \" Bareos:\%t \%e of \%c \% l \ "\%r"



## %% =%パーセント記号

##%c =クライアント名\クライアント名

##%d =ディレクターの名前\サーバー名

##%e =ジョブ終了コード(OK、エラー、...)\完了ステータス

##%h =クライアントアドレス\クライアントホスト

##%i =ジョブID \タスクID

##%j =一意のジョブ名\一意のジョブ名

##%l =ジョブレベル\タスクの優先度

##%n =ジョブ名\タスク名

##%r =受信者\受信者

##%s =時間以来\#このパラメーターの意味を誰かが説明してくれたら嬉しいです

##%t =ジョブタイプ(バックアップなど)\タスクタイプ

##%v =読み取りボリューム名(ディレクター側のみ)\名前付きの読み取りボリューム

##%V =ボリューム名の書き込み(ディレクター側のみ)\名前付きのボリュームが書き込まれます



#Operator Command = string#は、Operatorパラメーターの前に記述する必要があります。 メールコマンドに似ていますが、オペレータに送信します



##メッセージタイプの通知タイプ:

##情報通知メッセージ

##警告通知

##エラーエラー

##どのタスクが停止するかによる致命的なエラー

##サーバーのシャットダウン時にメッセージを終了する

##保存されていない保存されていないファイル

##増分バックアップまたは他のユーザー設定またはアクション中に例外でスローされたスキップされたファイルをスキップしました

##マウントマウント完了

##復元されたファイルの復元されたリスト

##すべての投稿

##接続しようとしたときのみのセキュリティ情報と警告メッセージ

##テープアラートによって生成されたアラートメッセージ

## volmgmtボリューム管理メッセージ

##監査アクティビティレポート



#Append = [address =] message-type [、message-type] *#メッセージがファイルに追加されます。ファイルが存在しない場合は作成されます

director = backup-dir = all#bareosサーバーにメッセージを送信

#Catalog =#カタログデータベースにメッセージを送信する

#Console =#コンソールにメッセージを送信

#File =#メッセージをファイルに送信します。ファイルが存在する場合は上書きされます

#Mail =#指定されたアドレスにメッセージを送信する

#エラー時にメール=#エラー時にメール

#成功時にメール=#成功時にメール

#Operator =#指定されたアドレスにメールを送信します

#Stderr =#メッセージを標準エラー出力に送信

#Stdout =#メッセージを標準出力に送信

#Syslog =#syslogログにメッセージを送信します

}



そこで、ストレージサーバーをセットアップし、サーバーに接続して、ファイルの最後に追加します。



/etc/bareos/bareos-dir.conf
ストレージ{

Address = 127.0.0.1#接続しているアドレス

Allow Compression = yes#圧縮を許可するかどうか

#Auth Type = MD5#認証方法なし|クリア| MD5

#Collect Statistics = yes#統計を収集するかどうか

Description = "プライマリストレージ"#現在のセクションの説明

デバイス= FirstStorage#使用されたデバイス、値はデバイスセクションの名前パラメーターと等しい

Enabled = yes#このストレージサーバーが有効かどうか

#ジョブごとの最大帯域幅= 1 k / s#1タスクの最大チャネル幅、速度値k / s、kb / s、m / sまたはmb / s。

#Maximum Concurrent Jobs = 1#同時タスクの最大数

#Maximum Concurrent Read Jobs = 0#リーダー上の同時タスクの最大数

Media Type = File#はテキストパラメーターで、ここで最適なデバイスのタイプを自由に指定できます

Name = agima-sd#このセクションの名前

パスワード= password1#ストレージサーバーに接続するためのパスワード

#Port = 9103#接続するポート

}



カタログ{

DBアドレス= localhost#データベースネットワークアドレス

DB Driver = mysql#DBMS postgresqlを選択| mysql | sqlite

DB名= bareos#データベース名

DBパスワード= "123"#DBMSユーザーパスワード

DB Port = 3306#DBMSが機能するポート

#DB Socket = string#ソケットを使用する場合のデータベースソケットへのパス

DBユーザー= bareos#ユーザーサブDBMS

Description = "bareosのカタログメタデータ"#セクションの説明

バッチ挿入を無効にする= no#複数の挿入を許可します

#Exit On Fatal = no#エラー時にプログラムを閉じる

#Idle Timeout = 30#データベースとの通信のタイムアウト

#Inc Connections = 1#無料接続が終了した場合、このパラメーターで指定された量を追加できます

#Max Connections = 5#接続の最大数

#Min Connections = 1#最小接続数

Name = agima-meta#現在のセクションの名前

Reconnect = yes#接続が切断された場合、データベースに再接続します

#Validate Timeout = 120#データベースが機能するかどうかを確認する時間

}





サーバーを再起動し、ストレージを開始します。



 sudo systemctl restart bareos-dir sudo systemctl start bareos-sd
      
      





それらの間に接続がない場合は、ファイアウォールを構成します。



これで、サーバーとバックアップを保存する場所ができました。 サーバーは実行されていますが、バックアップを実行するユーザーはいません。 バックアップを行うクライアントをセットアップします。 クライアントはbareos-fdデーモンであり、その構成ファイルはbareos-fd.confと呼ばれ、最も簡単です:



/etc/bareos/bareos-fd.conf
クライアント{

#Absolute Job Timeout = 20#完全なタイムアウトタスク

#帯域幅バーストを許可= yes#チャンネル幅の増加を許可

#Allowed Job Command =#このクライアントに許可されているコマンドのタイプ:backup create backups; ファイルの復元を復元します。 ファイル検証を検証します。 許可されたチームの推定チェック。 runscript実行スクリプト

#Allowed Script Dir =#クライアントがスクリプトを実行できるディレクトリ

#Compatible = no#bacula互換モード

Description = "サーバーexample.comの最初のクライアント"#クライアントの説明

#FD Address = 1.2.3.4 9102#ドメイン名またはIPアドレス、ポートはスペースまたは個別のパラメーターで指定する必要があります

#FD Addresses = {#複数の特定のドメインやIPアドレスを指定するには

#ip = {addr = 1.2.3.4; ポート= 1205;}

#ipv4 = {addr = 1.2.3.4; ポート= http;}

#ipv6 = {addr = 201:220:222 :: 2; ポート= 1205; }

#ip = {addr = server.example.com}

#}

#FD Port = 9102#クライアントがリッスンするポート番号

#FD Source Address =#クライアントがストレージサーバーと通信するためにリッスンする特定の(別個の)アドレス

#ジョブごとの最大帯域幅= 1 k / s#1タスクの最大チャネル幅、速度値k / s、kb / s、m / sまたはmb / s。

#Maximum Concurrent Jobs = 20#同時に実行されるタスクの最大数

#Maximum Network Bu ff er Size = 65536#低速を変更しようとすると、ネットワークバッファーのサイズ(バイト単位)。 場合によっては、速度を上げるために、バッファーのサイズを小さくする価値があります。

メッセージ=標準#メッセージ生成セクションの名前を示します

Name = agima-client#このクライアントの名前

#Pid Directory = / var / lib / bareos#PIDファイルを保存するディレクトリ

#Scripts Directory = directory#スクリプトが保存されるディレクトリ

#SD Connect Timeout = 1800#ストレージサーバーへの接続のタイムアウト

#Secure Erase Command = string#消去コマンド

#Working Directory = / var / lib / bareos#作業ディレクトリ

}



ディレクター{

#Address = 1.2.3.4#接続先のアドレス

#Allowed Job Command =#サーバーで許可されるコマンドのタイプ:バックアップのバックアップ作成。 ファイルの復元を復元します。 ファイル検証を検証します。 許可されたチームの推定チェック。 runscript実行スクリプト

#Allowed Script Dir = "/ etc / bareos"#サーバーがスクリプトを実行できるディレクトリ

#Allowed Script Dir = "/ path / that / is / also / allowed"#

Description = "一般的なバックアップサーバー"#サーバーの説明

#ジョブごとの最大帯域幅= 1 k / s#1タスクの最大チャネル幅、速度値k / s、kb / s、m / sまたはmb / s。

#Monitor = no#サーバーへの完全または制限されたアクセスを許可します。 制限付きアクセスでは、サーバーのステータスのみを表示できます。

Name = backup-dir#接続できるサーバーの名前

パスワード= Md5password#md5で暗号化されたクライアントに接続するためのパスワード

}



メッセージ{

名前=標準#現在の通知の名前

説明=「標準メッセージファイルデーモン」#通知の説明

#Mail Command =#メール送信コマンド、パラメータメール、エラー時メール、成功時メールの前に記述する必要があります

#Mail Command = "/ usr / sbin / bsmtp -h mail.example.com -f \" \(Bareos \)\%r \ "-s \" Bareos:\%t \%e of \%c \% l \ "\%r"



## %% =%パーセント記号

##%c =クライアント名\クライアント名

##%d =ディレクターの名前\サーバー名

##%e =ジョブ終了コード(OK、エラー、...)\完了ステータス

##%h =クライアントアドレス\クライアントホスト

##%i =ジョブID \タスクID

##%j =一意のジョブ名\一意のジョブ名

##%l =ジョブレベル\タスクの優先度

##%n =ジョブ名\タスク名

##%r =受信者\受信者

##%s =時間以来\#このパラメーターの意味を誰かが説明してくれたら嬉しいです

##%t =ジョブタイプ(バックアップなど)\タスクタイプ

##%v =読み取りボリューム名(ディレクター側のみ)\名前付きの読み取りボリューム

##%V =ボリューム名の書き込み(ディレクター側のみ)\名前付きのボリュームが書き込まれます



#Operator Command = string#は、Operatorパラメーターの前に記述する必要があります。 メールコマンドに似ていますが、オペレータに送信します



##メッセージタイプの通知タイプ:

##情報通知メッセージ

##警告通知

##エラーエラー

##どのタスクが停止するかによる致命的なエラー

##サーバーのシャットダウン時にメッセージを終了する

##保存されていない保存されていないファイル

##増分バックアップまたは他のユーザー設定またはアクション中に例外でスローされたスキップされたファイルをスキップしました

##マウントマウント完了

##復元されたファイルの復元されたリスト

##すべての投稿

##接続しようとしたときのみのセキュリティ情報と警告メッセージ

##テープアラートによって生成されたアラートメッセージ

## volmgmtボリューム管理メッセージ

##監査アクティビティレポート



#Append = [address =] message-type [、message-type] *#メッセージがファイルに追加されます。ファイルが存在しない場合は作成されます

director = backup-dir = all#bareosサーバーにメッセージを送信

#Catalog =#カタログデータベースにメッセージを送信する

#Console =#コンソールにメッセージを送信

#File =#メッセージをファイルに送信します。ファイルが存在する場合は上書きされます

#Mail =#指定されたアドレスにメッセージを送信する

#エラー時にメール=#エラー時にメール

#成功時にメール=#成功時にメール

#Operator =#指定されたアドレスにメールを送信します

#Stderr =#メッセージを標準エラー出力に送信

#Stdout =#メッセージを標準出力に送信

#Syslog =#syslogログにメッセージを送信します

}



万歳、クライアントについて説明し、サーバーに接続して、bareos-dir.confファイルの最後に挿入します。



/etc/bareos/bareos-dir.conf
クライアント{

#Allow Client Connect = yes#クライアントからの着信接続を許可

#Auth Type = MD5#Authorization typeなし|クリア| MD5

#Auto Prune = no #

#Catalog = resource-name #

#Description = string #

#Enabled = yes #

#FD Address = string #

#FD Password = password #

#FD Port = 9102 #

#File Retention = 5184000 #

#Hard Quota = 0 # ,

#Job Retention = 15552000 #

#Maximum Bandwidth Per Job = 1 k/s # 1 , k/s, kb/s, m/s or mb/s.

#Maximum Concurrent Jobs = 1 #

#Name = agima-client #

#Passive = no # ,

#Quota Include Failed Jobs = yes #

#Soft Quota = 0 # ,

}





クライアントを起動し、サーバーを再起動します。通常どおり、ファイアウォールの設定を忘れないでください。



 sudo systemctl restart bareos-dir sudo systemctl start bareos-fd
      
      





これですべてができましたが、バックアップはまだ行われていません。実装のタスクとスケジュールを追加します。



展開する
Pool {

#Action On Purge = Truncate #

Auto Prune = yes #

Catalog = resource-name #

Catalog Files = yes #

Description = string #

#File Retention = time #

#Job Retention = time #

Label Format = «backup-» #

#Label Type = ANSI|IBM|Bareos #

#Maximum Blocksize = positive-integer # 63B

Maximum Volume Bytes = Size64 # ( )

Maximum Volume Files = positive-integer #

Maximum Volume Jobs = positive-integer #

Maximum Volumes = positive-integer #

Name = agima-pool #

Pool Type = Strname # Backup, *Archive, *Cloned, *Migration, *Copy, *Save

Purge Oldest Volume = yes #

Recycle = yes # ,

Recycle Current Volume = yes #

Recycle Oldest Volume = yes #

Recycle Pool = resource-name # ,

Scratch Pool = resource-name # Scratch —

Storage = ResourceList #

Use Catalog = yes #

Volume Retention = 31536000 #

Volume Use Duration = 7 days #

}



FileSet { #

Description = string #

#Enable VSS = yes # Windows

Name = agima-site#

# Exclude { #

# Options {

# AutoExclude = yes # Windows. .

# fstype=ext2 # . ext2, jfs, ntfs, proc, reiserfs, xfs, usbdevfs, sysfs, smbfs, iso9660

# sparse=yes # raw 32

# onefs=yes # 1

# signature=MD5 # SHA1 .

# recurse=yes #

# noatime=yes #

# mtimeonly=yes # st_mtime. st_ctime.

# keepatime=yes #

# checkfilechanges=yes #

# aclsupport=yes #

# xattrsupport=yes #

# ignore case=yes #

# DriveType=Windows-drive-type # Windows: removable, fixed, remote, cdrom, ramdisk

# hfsplussupport=yes # apple



# size=

#- — Select file in range size — size. #

#<size — Select files smaller than size. #

#>size — Select files bigger than size. #

#size — Select files which are within 1 % of size. # ± 1%



# verify=

#i compare the inodes #

#p compare the permission bits #

#n compare the number of links #

#u compare the user id #

#g compare the group id #

#s compare the size #

#a compare the access time #

#m compare the modification time (st_mtime) #

#c compare the change time (st_ctime) #

#d report file size decreases #

#5 compare the MD5 signature # MD5

#1 compare the SHA1 signature # SHA1

#A Only for Accurate option, it allows to always backup the file # Accurate ( , / )



# compression=GZIP5 # GZIP1-9|LZO|LZFAST|LZ4|LZ4HC

# }

# File = "|sh -c 'df -l | grep \"^/dev/hd[ab]\" | grep -v \".*/tmp\" | awk \"{print \$6}\"'"

# File = /

# File = /usr

# }

Ignore File Set Changes = no # , . yes .

# Include { #

# Options {

# File = /

# File = /usr

# Exclude Dir Containing = .nobackup #

# }

}



Schedule {

Description = string #

Enabled = yes #

Name = MonthlyCycle #

Run = Level=Full Pool=Monthly 1st sun at 2:05

Run = Level=Differential 2nd-5th sun at 2:05

Run = Level=Incremental Pool=Daily mon-sat at 2:05

# jan | feb | mar | apr | may | jun | jul | aug | sep | oct | nov | dec | january | february |… | december | monthly

# sun | mon | tue | wed | thu | fri | sat | sunday | monday | tuesday | wednesday | thursday | friday | saturday | daily

# 1st | 2nd | 3rd | 4th | 5th | first | second | third | fourth | fifth | last

# «at 00:00»

# w00 | w01 |… w52 | w53

# "-"

}



Job {

Accurate = yes # , ,

Add Prefix = string #

Add Suffix = string #

Allow Duplicate Jobs = yes #

Allow Higher Duplicates = yes # ,

Allow Mixed Priority = no # ,

Base = ResourceList # , , . .

Bootstrap = directory # ,



#%% — %

#%c —

#%d —

#%e — (OK, Error, Fatal Error, Canceled, Differences, Unknown term code)

#%i —

#%j —

#%l —

#%n —

#%s — (?)

#%t —

#%v —



Cancel Lower Level Duplicates = yes # ,

Cancel Queued Duplicates = yes # ,

Cancel Running Duplicates = yes # ,

Catalog = agima-meta #

Client = agima-client #

Client Run After Job = RunscriptShort #

Client Run Before Job = RunscriptShort #

Description = string #

Differential Backup Pool = agima-pool #

Differential Max Runtime = time #

Enabled = yes #

File Set = agima-site #

Full Backup Pool = agima-pool #

Full Max Runtime = time #

Incremental Backup Pool = agima-pool #

#Incremental Max Runtime = time #

#Job Defs = resource-name # .

#Job To Verify = resource-name #

Level = BackupLevel # : VirtualFull | Full | Incremental | Differential, InitCatalog | Catalog | VolumeToCatalog | DiskToCatalog , Restore.

Max Concurrent Copies = 100 #

Max Diff Interval = time # ,

Max Full Interval = time # ,

Max Run Time = time #

Max Start Delay = time #

Max Virtual Full Interval = time # ,

Max Wait Time = time #

Maximum Bandwidth = k/s # , k/s, kb/s, m/s or mb/s.

Maximum Concurrent Jobs = 1 #

Maxrun Sched Time = time # (Max Start Delay + Max Run Time)

Messages = standard required #

Name = agima-site required #

#Next Pool = resource-name #

Pool = agima-pool #

Prefer Mounted Volumes = yes #

Prefix Links = no # « »

Priority = 10 # . 1-255

Prune Files = no #

Prune Jobs = no #

Prune Volumes = no #

Purge Migration Job = no #

Regex Where = string #

Replace = Always # always — , ifnewer — , never — , ifolder —

Rerun Failed Levels = yes #

Reschedule Interval = 1800 #

Reschedule On Error = yes #

Reschedule Times = 5 #

Run = «Nightly-backup level=%l since=\»%s\" storage=DDS-4" # , ,

Run Script {

Command = «echo test» #

Runs When = After # Never | Before | After | Always | AfterVSS

Runs On Failure = yes #

Runs On Client = no #

Runs On Success = yes #

}

Schedule = MonthlyCycle #

Storage = ResourceList #

Strip Prefix = string #

Type = JobType # Backup , Restore , Verify , Migrate , Admin , Copy

#Virtual Full Backup Pool = resource-name #

Where = directory #

Write Bootstrap = directory #

Write Verify List = directory #

}



Messages {

Name = Standard #

Description = «Standard messages file daemon» #

#Mail Command = # email, Mail, Mail On Error, Mail On Success

#Mail Command = "/usr/sbin/bsmtp -h mail.example.com -f \"\(Bareos\) \%r\" -s \«Bareos: \%t \%e of \%c \%l\» \%r"



##%% = %

##%c = Client's name \

##%d = Director's name \

##%e = Job Exit code (OK, Error, ...) \

##%h = Client address \

##%i = Job Id \

##%j = Unique Job name \

##%l = Job level \

##%n = Job name \

##%r = Recipients \

##%s = Since time \ #

##%t = Job type (eg Backup, ...) \

##%v = Read Volume name (Only on director side) \

##%V = Write Volume name (Only on director side) \



#Operator Command = string # Operator. Mail Command,



## message-type:

##info

##warning

##error

##fatal -

##terminate

##notsaved

##skipped ,

##mount

##restored

##all

##security info warning

##alert tape alerts

##volmgmt

##audit



#Append = [ address = ] message-type [, message-type ]* # ,

director = backup-dir = all # bareos

#Catalog = #

#Console = #

#File = # ,

#Mail = #

#Mail On Error = # email

#Mail On Success = # email

#Operator = # email

#Stderr = #

#Stdout = #

#Syslog = # Syslog

}



, . .



All Articles