FSBACKUP - file system backup and synchronization utility.
- THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY WARRANTIES *
For english documentation type 'perldoc fsbackip.pl'
FSBACKUP - ÓÉÓÔÅÍÁ ÉÎËÒÅÍÅÎÔÁÌØÎÏÇÏ ÒÅÚÅÒ×ÎÏÇÏ ËÏÐÉÒÏ×ÁÎÉÑ É ÓÉÎÈÒÏÎÉÚÁÃÉÉ æó.
http://www.opennet.ru/dev/fsbackup/
ðÏ ×ÓÅÍ ×ÏÐÒÏÓÁÍ ÏÂÒÁÝÁÊÔÅÓØ Ë Á×ÔÏÒÕ: Maxim Chirkov <mc@tyumen.ru>
óïäåòöáîéå:
îÁÚÎÁÞÅÎÉÅ.
ëÏÍÐÌÅËÔ ÐÏÓÔÁ×ËÉ.
÷ÙÐÏÌÎÑÅÍÙÅ ÆÕÎËÃÉÉ.
õÓÔÁÎÏ×ËÁ.
æÁÊÌ ËÏÎÆÉÇÕÒÁÃÉÉ.
÷ÏÓÓÔÁÎÏ×ÌÅÎÉÅ ÄÁÎÎÙÈ.
÷ÉÄÙ ÂÜËÁÐÁ.
ôÉÐÙ ÈÒÁÎÉÌÉÝÁ ÄÌÑ ÁÒÈÉ×Á ÂÜËÁÐÁ.
ûÉÆÒÏ×ÁÎÉÅ ÂÜËÁÐÁ.
âÌÁÇÏÄÁÒÎÏÓÔÉ.
îÁÚÎÁÞÅÎÉÅ:
óÉÓÔÅÍÁ fsbackup ÂÙÌÁ ÓÏÚÄÁÎÁ ÄÌÑ ÏÂÅÓÐÅÞÅÎÉÑ ÒÅÚÅÒ×ÎÏÇÏ ËÏÐÉÒÏ×ÁÎÉÑ ÓÅÒ×ÅÒÏ× ÒÁÚÎÏÇÏ ÍÁÓÛÔÁÂÁ ÎÁ ÓÐÅÃÉÁÌØÎÏ ÏÔ×ÅÄÅÎÎÏÍ ÓÅÒ×ÅÒÅ ÂÜËÁÐÁ.
äÏÓÔÏÉÎÓÔ×ÁÍÉ ÍÅÔÏÄÁ ÒÅÚÅÒ×ÎÏÇÏ ËÏÐÉÒÏ×ÁÎÉÑ ÎÁ ÓÐÅÃÉÁÌØÎÏ ÏÔ×ÅÄÅÎÎÏÍ ÓÅÒ×ÅÒÅ, Ó ÉÓÐÏÌØÚÏ×ÁÎÉÅÍ fsbackup, Ñ×ÌÑÅÔÓÑ:
- ×ÙÓÏËÁÑ ÐÒÏÉÚ×ÏÄÉÔÅÌØÎÏÓÔØ (ÓËÏÒÏÓÔØ ÐÅÒÅÄÁÞÉ ÐÏ 100íÂÉÔ ÓÅÔÉ ÎÁÍÎÏÇÏ ×ÙÛÅ ÓËÏÒÏÓÔÉ ÚÁÐÉÓÉ ÎÁ ÌÅÎÔÏÞÎÙÊ ÎÁËÏÐÉÔÅÌØ), ÎÉÚËÁÑ ÓÅÂÅÓÔÏÉÍÏÓÔØ (ÃÅÎÁ í ÎÁ ÓÏ×ÒÅÍÅÎÎÙÈ ÖÅÓÔËÉÈ IDE ÄÉÓËÁÈ ÄÏÓÔÁÔÏÞÎÏ ÎÉÚËÁÑ);
- ÎÁÄÅÖÎÏÓÔØ (×ÏÚÍÏÖÎÏÓÔØ ÐÁÒÁÌÌÅÌØÎÏÇÏ ÈÒÁÎÅÎÉÑ ÎÅÓËÏÌØËÉÈ ÒÅÚÅÒ×ÎÙÈ ËÏÐÉÊ ÚÁ ÒÁÚÎÙÅ ÍÏÍÅÎÔÙ ×ÒÅÍÅÎÉ);
- ÂÅÚÏÐÁÓÎÏÓÔØ (ÐÒÉÍÅÎÅÎÉÅ PGP ÛÉÆÒÏ×ÁÎÉÑ ÒÅÚÅÒ×ÎÙÈ ËÏÐÉÊ ÐÅÒÅÄ ÚÁÐÉÓØÀ ÎÁ ÂÜËÁÐ ÓÅÒ×ÅÒ);
- Á×ÔÏÎÏÍÎÏÓÔØ (ÏÄÉÎ ÒÁÚ ÎÁÓÔÒÏÉ× ÓÉÓÔÅÍÕ ÂÜËÁÐ ÂÕÄÅÔ ÐÒÏÉÚ×ÏÄÉÔÓÑ Á×ÔÏÍÁÔÉÞÅÓËÉ, ÎÅ ÎÕÖÎÏ ÏÂÓÌÕÖÉ×ÁÔØ ÓÔÒÉÍÍÅÒ),
- ×ÏÚÍÏÖÎÏÓÔØ ÓÏÈÒÁÎÅÎÉÑ ÔÏÌØËÏ ÉÚÍÅÎÅÎÎÙÈ Ó ÐÏÓÌÅÄÎÅÇÏ ÂÜËÁÐÁ ÄÁÎÎÙÈ, ÂÅÚ ÚÁÔÒÁÔ ÎÁ ËÏÐÉÒÏ×ÁÎÉÑ ÎÅ ÉÚÍÅÎÉ×ÛÅÊÓÑ ÉÎÆÏÒÍÁÃÉÉ.
- ÐÒÏÓÔÏÔÁ ÎÁÓÔÒÏÊËÉ É ÕÓÔÁÎÏ×ËÉ (ËÁË ÐÒÁ×ÉÌÏ ÓÉÓÔÅÍÁ ÓÐÏÓÏÂÎÁ ÆÕÎËÃÉÏÎÉÒÏ×ÁÔØ ÓÒÁÚÕ ÐÏÓÌÅ ÚÁÐÕÓËÁ ÉÎÓÔÁÌÌÑÃÉÏÎÎÏÇÏ ÓËÒÉÐÔÁ)
- ÐÒÏÓÔÏÔÁ ×ÏÓÓÔÁÎÏ×ÌÅÎÉÑ (ÏÔËÒÙÔÙÊ ÆÏÒÍÁÔ ÄÌÑ ÈÒÁÎÅÎÉÑ ÒÅÚÅÒ×ÎÙÈ ËÏÐÉÊ (tar), ÐÏÚ×ÏÌÑÅÔ ×ÏÓÓÔÁÎÏ×ÉÔØ ÄÁÎÎÙÅ ÂÅÚ ÉÓÐÏÌØÚÏ×ÁÎÉÑ ×ÈÏÄÑÝÉÈ × ËÏÍÐÌÅËÔ ÕÔÉÌÉÔ ×ÏÓÓÔÁÎÏ×ÌÅÎÉÑ).
- ÇÉÂËÏÓÔØ ÚÁÄÁÎÉÑ ÍÁÓÏË ÄÌÑ ÐÏÍÅÝÅÎÉÑ ÆÁÊÌÏ× É ËÁÔÁÌÏÇÏ× × ÁÒÈÉ×.
- ÐÏÄÄÅÒÖËÁ ÂÜËÁÐÁ ÂÁÚ ÄÁÎÎÙÈ ÈÒÁÎÉÍÙÈ × MySQL É PostgreSQL.
fsbackup ÍÏÖÅÔ ×ÙÐÏÌÎÑÔØ ÓÏÚÄÁÎÉÅ ËÁË ÐÏÌÎÏÇÏ ÏÂÒÁÚÁ ÓÅÒ×ÅÒÁ, ÔÁË É ÒÅÚÅÒ×ÎÙÈ ËÏÐÉÊ ÏÓÎÏ×ÎÙÈ ÐÏÄÓÉÓÔÅÍ, ÉÓËÌÀÞÁÑ ÏÐÅÒÁÃÉÏÎÎÕÀ ÓÉÓÔÅÍÕ. ÷ ÓÌÕÞÁÅ ÐÏÌÎÏÇÏ ÂÜËÁÐÁ, ÐÏÌÎÏÅ ×ÏÓÓÔÁÎÏ×ÌÅÎÉÅ ÒÁÂÏÔÏÓÐÏÓÏÂÎÏÓÔÉ ÐÒÏÉÓÈÏÄÉÔ × ÔÅÞÅÎÉÉ ÎÅÓËÏÌØËÉÈ ÄÅÓÑÔËÏ× ÍÉÎÕÔ, × ÓÌÕÞÁÅ ÞÁÓÔÉÞÎÏÇÏ ÂÜËÁÐÁ ÄÌÑ ×ÏÓÓÔÁÎÏ×ÌÅÎÉÑ ÔÒÅÂÕÅÔÓÑ ÎÅÓËÏÌØËÏ ÞÁÓÏ×.
÷ ÏÔÌÉÞÉÅ ÏÔ ÍÎÏÇÉÈ ÓÉÓÔÅÍ Á×ÔÏÍÁÔÉÞÅÓËÏÇÏ ÒÅÚÅÒ×ÎÏÇÏ ËÏÐÉÒÏ×ÁÎÉÑ, × fsbackup ÐÒÉÍÅÎÑÅÔÓÑ ÇÉÂËÁÑ ÓÉÓÔÅÍÁ ÐÏÓÔÒÏÅÎÉÑ ÍÁÓÏË (Ó ÉÓÐÏÌØÚÏ×ÁÎÉÅÍ regex) ÄÌÑ ÐÒÉÎÑÔÉÑ ÒÅÛÅÎÉÑ Ï ÐÏÍÅÝÅÎÉÉ ÆÁÊÌÏ× × ÂÜËÁÐ.
ëÏÍÐÌÅËÔ ÐÏÓÔÁ×ËÉ:
create_backup.sh
óËÒÉÐÔ ÄÌÑ ÐÅÒÉÏÄÉÞÅÓËÏÇÏ ÚÁÐÕÓËÁ ×ÓÅÊ ÐÏÄÓÉÓÔÅÍÙ ÒÅÚÅÒ×ÎÏÇÏ
ËÏÐÉÒÏ×ÁÎÉÑ ÉÚ crontab.
install.pl
óËÒÉÐÔ ÄÌÑ ÕÓÔÁÎÏ×ËÉ ÐÒÏÇÒÁÍÍÙ É ×ÓÅÈ ÎÅÄÏÓÔÁÀÝÉÈ Perl ÍÏÄÕÌÅÊ.
fsbackup.pl
ïÓÎÏ×ÎÏÊ ÓËÒÉÐÔ ÄÌÑ ÂÜËÁÐÁ É ÓÉÎÈÒÏÎÉÚÁÃÉÉ.
cfg_example
ðÒÉÍÅÒ ÆÁÊÌÁ ËÏÎÆÉÇÕÒÁÃÉÉ É ÄÏËÕÍÅÎÔÁÃÉÑ ÐÏ ×ÓÅÍ ËÏÎÆÉÇÕÒÁÃÉÏÎÎÙÍ
ÄÉÒÅËÔÉ×ÁÍ.
cache/
ïÂÒÁÚ ÄÉÒÅËÔÏÒÉÉ ÄÌÑ ÐÏÍÅÝÅÎÉÑ ×ÒÅÍÅÎÎÙÈ ÈÜÛÅÊ.
sys_backup/
ïÂÒÁÚ ÄÉÒÅËÔÏÒÉÉ ÄÌÑ ÐÏÍÅÝÅÎÉÑ ÂÜËÁÐÏ× ÓÏÚÄÁÎÎÙÈ sysbackup.sh.
modules/
Perl ÍÏÄÕÌÉ ËÏÔÏÒÙÅ ÔÒÅÂÕÀÔÓÑ ÄÌÑ ÆÕÎËÃÉÏÎÉÒÏ×ÁÎÉÑ fsbackup.pl.
scripts/
äÉÒÅËÔÏÒÉÑ ÓÏ ×ÓÐÏÍÏÇÁÔÅÌØÎÙÍÉ ÓËÒÉÐÔÁÍÉ.
scripts/mysql_backup.sh
scripts/pgsql_backup.sh
óËÒÉÐÔÙ ÄÌÑ ÓÏÚÄÁÎÉÑ ÐÏÌÎÏÇÏ É ÞÁÓÔÉÞÎÏÇÏ ÂÜËÁÐÁ ÂÁÚÙ ÄÁÎÎÙÈ
ÈÒÁÎÉÍÏÊ × PostgreSQL ÉÌÉ MySQL.
ðÏÄÄÅÒÖÉ×ÁÀÔÓÑ ÒÅÖÉÍÙ ÒÁÂÏÔÙ:
1. ÐÏÌÎÙÊ ÂÜËÁÐ ×ÓÅÈ ÂÁÚ É ÓÔÒÕËÔÕÒ;
2. ÐÏÌÎÙÊ ÂÜËÁÐ ÓÔÒÕËÔÕÒ ×ÓÅÈ ÂÁÚ + ÂÜËÁÐ ÄÁÎÎÙÈ × ÉÚÂÒÁÎÎÙÈ ÂÁÚÁÈ/ÔÁÂÌÉÃÁÈ;
3. ÐÏÌÎÙÊ ÂÜËÁÐ ÓÔÒÕËÔÕÒ ×ÓÅÈ ÂÁÚ + ÂÜËÁÐ ÄÁÎÎÙÈ ×Ï ×ÓÅÈ ÂÁÚÁÈ,
ËÒÏÍÅ ÉÚÂÒÁÎÎÙÈ ÂÁÚ/ÔÁÂÌÉÃ;
scripts/sysbackup.sh
óËÒÉÐÔ ÄÌÑ ÓÏÈÒÁÎÅÎÉÑ ÓÐÉÓËÁ ×ÓÅÈ ÕÓÔÁÎÏ×ÌÅÎÎÙÈ × ÓÉÓÔÅÍÅ ÐÁËÅÔÏ×
ÄÌÑ FreeBSD É Linux, ÄÌÑ Linux ÉÓÐÏÌØÚÕÀÝÉÈ rpm - ÓÏÈÒÁÎÅÎÉÅ ÆÁÊÌÏ×
ËÏÎÆÉÇÕÒÁÃÉÉ ×ÓÅÈ ÕÓÔÁÎÏ×ÌÅÎÎÙÈ × ÓÉÓÔÅÍÅ ÐÁËÅÔÏ×.
scripts/sysrestore.sh
óËÒÉÐÔ ÄÌÑ Á×ÔÏÍÁÔÉÞÅÓËÏÊ ÕÓÔÁÎÏ×ËÉ ×ÓÅÈ ÐÁËÅÔÏ×, ÓÐÉÓÏË ËÏÔÏÒÙÈ
ÂÙÌ ÓÏÈÒÁÎÅÎ ÓËÒÉÐÔÏÍ sysbackup.sh, × Ó×ÅÖÅ-ÕÓÔÁÎÏ×ÌÅÎÎÏÊ ÓÉÓÔÅÍÅ.
scripts/fsrestore.sh
óËÒÉÐÔ ÄÌÑ ×ÏÓÓÔÁÎÏ×ÌÅÎÉÑ ÄÁÎÎÙÈ ÉÚ ÉÎËÒÅÍÅÎÔÁÌØÎÏÇÏ ÂÜËÁÐÁ.
÷ÙÐÏÌÎÑÅÍÙÅ ÆÕÎËÃÉÉ:
- 2 ÍÅÔÏÄÁ ×ÙÞÉÓÌÅÎÉÑ ËÏÎÔÒÏÌØÎÙÈ ÓÕÍÍ: timesize - ÐÏ ÁÔÒÉÂÕÔÁÍ (ÄÁÔÁ, ×ÒÅÍÑ, ÒÁÚÍÅÒ, ÐÒÁ×Á ÄÏÓÔÕÐÁ...) md5 - ÐÏ ÓÏÄÅÒÖÉÍÏÍÕ ÆÁÊÌÁ.
- 4 ×ÉÄÁ ÂÜËÁÐÁ:
backup - ÉÎËÒÅÍÅÎÔÁÌØÎÙÊ ÂÜËÁÐ × ÁÒÈÉ× (Ô.Å. ËÏÐÉÒÕÀÔÓÑ ÔÏÌØËÏ
ÉÚÍÅÎÉ×ÛÉÅÓÑ Ó ÍÏÍÅÎÔÁ ÐÏÓÌÅÄÎÅÇÏ ÂÜËÁÐÁ ÆÁÊÌÙ). full_backup - ÐÏÌÎÙÊ ÂÜËÁÐ × ÁÒÈÉ×, ÂÅÚ ÈÜÛÁ (Ô.Å. ×ÓÅÇÄÁ ËÏÐÉÒÕÀÔÓÑ
×ÓÅ ÆÁÊÌÙ). sync - ÓÉÎÈÒÏÎÉÚÁÃÉÑ ÄÅÒÅ×Á. hash - ÔÏÌØËÏ ÇÅÎÅÒÁÃÉÑ ÈÜÛÁ, ÂÅÚ ÐÏÍÅÝÅÎÉÑ ÆÁÊÌÏ× × ÁÒÈÉ× (ÍÏÖÅÔ
ÉÓÐÏÌØÚÏ×ÁÔØÓÑ ÄÌÑ ÏÐÒÅÄÅÌÅÎÉÑ ËÁËÉÅ ÆÁÊÌÙ ÂÙÌÉ ÉÚÍÅÎÅÎÙ)
- 3 ÔÉÐÁ ÈÒÁÎÉÌÉÝÁ ÂÜËÁÐÁ: local - ÈÒÁÎÅÎÉÅ ÂÜËÁÐÁ × ÌÏËÁÌØÎÏÊ ÆÁÊÌÏ×ÏÊ ÓÉÓÔÅÍÅ. remote_ssh - ËÏÐÉÒÏ×ÁÎÉÅ ÂÜËÁÐÁ ÎÁ ÕÄÁÌÅÎÎÕÀ ÍÁÛÉÎÕ Ó ÉÓÐÏÌØÚÏ×ÁÎÉÅÍ SSH remote_ftp - ËÏÐÉÒÏ×ÁÎÉÅ ÂÜËÁÐÁ ÎÁ ÕÄÁÌÅÎÎÕÀ ÍÁÛÉÎÕ ÐÏ FTP.
- 8 ×ÓÔÒÏÅÎÎÙÈ ÏÐÅÒÁÔÏÒÏ× (ÍÏÖÎÏ ÉÓÐÏÌØÚÏ×ÁÔØ regex) ÄÌÑ ÏÐÉÓÁÎÉÑ
ÐÏÍÅÝÁÅÍÙÈ × ÂÜËÁÐ (ÉÌÉ ÉÇÎÏÒÉÒÕÅÍÙÈ ÄÌÑ ÐÏÍÅÝÅÎÉÑ × ÂÜËÁÐ) ÆÁÊÌÏ×:
/dir[/file] - ÐÕÔØ Ë ÆÁÊÌÕ/ÄÉÒÅËÔÏÒÉÉ ÄÌÑ ÂÜËÁÐÁ. !/dir[/file] - ÏÔÒÉÃÁÎÉÅ ÐÕÔÉ, ÎÅ ÐÏÍÅÝÁÔØ × ÂÜËÁÐ (ÎÅ ÍÁÓËÁ, Á ÒÅÁÌØÎÙÊ ÐÕÔØ). # - ËÏÍÍÅÎÔÁÒÉÊ =~ - ÍÁÓËÁ ÄÌÑ ÆÁÊÌÁ ÉÌÉ ÄÉÒÅËÔÏÒÉÉ, Á ÎÅ ÁÂÓÏÌÀÔÎÙÊ ÐÕÔØ. ðÅÒ×ÙÊ ÉÌÉ ×ÔÏÒÏÊ ÓÉÍ×ÏÌ. f~ - ÍÁÓËÁ ÄÌÑ ÆÁÊÌÁ. ðÅÒ×ÙÊ ÉÌÉ ×ÔÏÒÏÊ ÓÉÍ×ÏÌ. d~ - ÍÁÓËÁ ÄÌÑ ÄÉÒÅËÔÏÒÉÉ. ðÅÒ×ÙÊ ÉÌÉ ×ÔÏÒÏÊ ÓÉÍ×ÏÌ. =! - "îå" ÍÁÓËÁ ÄÌÑ ÆÁÊÌÁ ÉÌÉ ÄÉÒÅËÔÏÒÉÉ, Á ÎÅ ÁÂÓÏÌÀÔÎÙÊ ÐÕÔØ. ðÅÒ×ÙÊ ÉÌÉ ×ÔÏÒÏÊ ÓÉÍ×ÏÌ. f! - "îå" ÍÁÓËÁ ÄÌÑ ÆÁÊÌÁ. ðÅÒ×ÙÊ ÉÌÉ ×ÔÏÒÏÊ ÓÉÍ×ÏÌ. d! - "îå" ÍÁÓËÁ ÄÌÑ ÄÉÒÅËÔÏÒÉÉ. ðÅÒ×ÙÊ ÉÌÉ ×ÔÏÒÏÊ ÓÉÍ×ÏÌ. ïÇÒÁÎÉÞÅÎ ÐÏ ×ÒÅÍÅÎÉ ÓÏÚÄÁÎÉÑ É ÒÁÚÍÅÒÕ
- ÷ÏÚÍÏÖÎÏÓÔØ ÛÉÆÒÏ×ÁÎÉÑ ÂÜËÁÐÁ Ó ÐÏÍÏÝØÀ PGP.
- çÉÂËÏÅ ÚÁÄÁÎÉÅ ÕÒÏ×ÎÑ ÉÎËÒÅÍÅÎÔÁÌØÎÏÓÔÉ. îÁÐÒÉÍÅÒ, ÐÒÉ = 7 - 6 ÒÁÚ ÂÕÄÕÔ ÐÏÍÅÝÁÔØÓÑ ÔÏÌØËÏ ÉÚÍÅÎÅÎÉÑ, ÎÁ 7 ÒÁÚ ÂÜËÁÐ ÂÕÄÅÔ ÏÂßÅÄÉÎÅÎ × ÏÄÉÎ ÆÁÊÌ.
- óËÒÉÐÔ ÄÌÑ ÓÏÈÒÁÎÅÎÉÑ ÓÐÉÓËÁ ×ÓÅÈ ÕÓÔÁÎÏ×ÌÅÎÎÙÈ × ÓÉÓÔÅÍÅ ÐÁËÅÔÏ× ÄÌÑ FreeBSD É Linux.
- óËÒÉÐÔÙ ÄÌÑ ÓÏÚÄÁÎÉÑ ÐÏÌÎÏÇÏ É ÞÁÓÔÉÞÎÏÇÏ ÂÜËÁÐÁ ÂÁÚÙ ÄÁÎÎÙÈ
ÈÒÁÎÉÍÏÊ × PostgreSQL ÉÌÉ MySQL. ðÏÄÄÅÒÖÉ×ÁÀÔÓÑ ÒÅÖÉÍÙ ÒÁÂÏÔÙ:
- ÐÏÌÎÙÊ ÂÜËÁÐ ×ÓÅÈ ÂÁÚ É ÓÔÒÕËÔÕÒ;
- ÐÏÌÎÙÊ ÂÜËÁÐ ÓÔÒÕËÔÕÒ ×ÓÅÈ ÂÁÚ + ÂÜËÁÐ ÄÁÎÎÙÈ × ÉÚÂÒÁÎÎÙÈ ÂÁÚÁÈ;
- ÐÏÌÎÙÊ ÂÜËÁÐ ÓÔÒÕËÔÕÒ ×ÓÅÈ ÂÁÚ + ÂÜËÁÐ ÄÁÎÎÙÈ ×Ï ×ÓÅÈ ÂÁÚÁÈ, ËÒÏÍÅ ÉÚÂÒÁÎÎÙÈ ÂÁÚ;
õÓÔÁÎÏ×ËÁ:
äÌÑ ÕÓÔÁÎÏ×ËÉ ÄÏÓÔÁÔÏÞÎÏ ÚÁÐÕÓÔÉÔØ ÓËÒÉÐÔ ./install.pl ðÒÏÇÒÁÍÍÁ Á×ÔÏÍÁÔÉÞÅÓËÉ ÓËÏÐÉÒÕÅÔÓÑ × ÚÁÄÁÎÎÙÊ ÄÉÒÅËÔÉ×ÏÊ --prefix ËÁÔÁÌÏÇ, ÐÏ ÕÍÏÌÞÁÎÉÀ ÕÓÔÁÎÏ×ËÁ ÐÒÏÉÚ×ÏÄÉÔÓÑ × ËÁÔÁÌÏÇ /usr/local/fsbackup.
ðÏÓÌÅ ÕÓÔÁÎÏ×ËÉ ÄÏÓÔÁÔÏÞÎÏ ÐÅÒÅÉÍÅÎÏ×ÁÔØ É ÏÔÒÅÄÁËÔÉÒÏ×ÁÔØ ÆÁÊÌ ËÏÎÆÉÇÕÒÁÃÉÉ
cfg_example, ÓÌÅÄÕÑ ÐÒÉ×ÅÄÅÎÎÙÍ ×ÎÕÔÒÉ cfg_example ÉÎÓÔÒÕËÃÉÑÍ.
úÁÔÅÍ, ÏÔÒÅÄÁËÔÉÒÕÊÔÅ ÓËÒÉÐÔ ÚÁÐÕÓËÁ "create_backup.sh", ÐÒÉ ÎÅÏÂÈÏÄÉÍÏÓÔÉ
ÉÚÍÅÎÉÔÅ ÐÕÔØ Ë ÈÒÁÎÉÌÉÝÕ ÂÜËÁÐÁ É ÎÁÚ×ÁÎÉÅ ÓÐÉÓÏË ÉÓÐÏÌØÚÕÅÍÙÈ ÆÁÊÌÏ×
ËÏÎÆÉÇÕÒÁÃÉÉ.
áËÔÉ×ÉÒÕÊÔÅ ÐÅÒÉÏÄÉÞÅÓËÉÊ ÚÁÐÕÓË ÐÏÄÓÉÓÔÅÍÁ ÂÜËÁÐÁ × crontab:
18 4 * * * /usr/local/fsbackup/create_backup.sh| mail -s"`name -n` backup report" root
ðÒÉ ÉÓÐÏÌØÚÏ×ÁÎÉÉ ÂÜËÁÐÁ SQL ÓÅÒ×ÅÒÁ ÉÌÉ ÓÉÓÔÅÍÙ ÏÔÒÅÄÁËÔÉÒÕÊÔÅ ÓËÒÉÐÔÙ
× ÄÉÒÅËÔÏÒÉÉ ./scripts (mysql_backup.sh, pgsql_backup.sh, sysbackup.sh).
îÁÐÒÉÍÅÒ:
>su
# ./install.pl
# cd /usr/local/fsbackup
# vi cfg_example
# mv cfg_example server_backup.conf
# vi create_backup.sh
# crontab -e
# cd scripts
# vi sysbackup.sh
# vi pgsql_backup.sh
# exit
>
æÁÊÌ ËÏÎÆÉÇÕÒÁÃÉÉ:
ðÏÄÒÏÂÎÏÅ ÏÐÉÓÁÎÉÅ ×ÓÅÈ ÐÁÒÁÍÅÔÒÏ× ÆÁÊÌÁ ËÏÎÆÉÇÕÒÁÃÉÉ ÓÍÏÔÒÉÔÅ × ÆÁÊÌÅ cfg_example.
÷ÎÉÍÁÎÉÅ, ÐÒÉ ÏÐÉÓÁÎÉÉ ÄÉÒÅËÔÏÒÉÊ ÄÌÑ ÂÜËÁÐÁ ÎÅÌØÚÑ ÕËÁÚÙ×ÁÔØ ÐÕÔØ Ë ÓÉÍ×ÏÌÉÞÅÓËÏÊ ÓÓÙÌËÅ, ÔÏÌØËÏ ÐÏÌÎÙÊ ÐÕÔØ Ë ÒÅÁÌØÎÏÊ ÄÉÒÅËÔÏÒÉÉ. îÁÐÒÉÍÅÒ, ÅÓÌÉ ÕËÁÚÁÎÏ /home, Á ÜÔÏ ÓÉÍ×ÏÌÉÞÅÓËÁÑ ÓÓÙÌËÁ ÎÁ /usr/home, ÔÏ × ÂÜËÁÐ ÂÕÄÅÔ ÐÏÍÅÝÅÎÙ ÄÁÎÎÙÅ Ï ÓÉÍ×ÏÌÉÞÅÓËÏÊ ÓÓÙÌËÅ, Á ÎÅ ÓÏÄÅÒÖÁÎÉÅ ÄÉÒÅËÔÏÒÉÉ.
òÅËÏÍÅÎÄÕÅÔÓÑ, ÏÐÉÓÁÔØ ÂÜËÁÐ ÒÁÚÎÙÈ ÕÞÁÓÔËÏ× ÆÁÊÌÏ×ÏÊ ÓÉÓÔÅÍÙ × ÎÅÓËÏÌØËÉÈ ÆÁÊÌÁÈ ËÏÎÆÉÇÕÒÁÃÉÉ. îÁÐÒÉÍÅÒ, ÍÎÏÊ ÉÓÐÏÌØÚÕÅÔÓÑ ÓÌÅÄÕÀÝÉÅ ÎÅÓËÏÌØËÏ ÆÁÊÌÏ× ËÏÎÆÉÇÕÒÁÃÉÉ:
server_etc.conf - ÏÐÉÓÙ×ÁÅÔ ÓÏÚÄÁÎÉÅ ÂÜËÁÐÁ ÄÉÒÅËÔÏÒÉÉ /etc É ÓÅËÒÅÔÎÙÈ
ÄÁÎÎÙÈ Ó ÉÓÐÏÌØÚÏ×ÁÎÉÅÍ PGP ÛÉÆÒÏ×ÁÎÉÑ; server_local.conf - ÂÜËÁÐ /usr/local, ÚÁ ÉÓËÌÀÞÅÎÉÅÍ ×ÒÅÍÅÎÎÙÈ ÆÁÊÌÏ×,
ÂÜËÁÐ âä.
server_home.conf - ÂÜËÁÐ ÄÉÒÅËÔÏÒÉÊ ÐÏÌØÚÏ×ÁÔÅÌÅÊ (/home ÉÌÉ /usr/home)
÷ÎÉÍÁÎÉÅ, ÄÉÒÅËÔÏÒÉÉ ÄÌÑ ÓÏÈÒÁÎÅÎÉÑ ÂÜËÁÐÁ × ËÁÖÄÏÍ ËÏÎÆÉÇÕÒÁÃÉÏÎÎÏÍ ÆÁÊÌÅ ÄÏÌÖÎÙ ÏÔÌÉÞÁÔØÓÑ ($cfg_remote_path, $cfg_local_path), ÓÏÈÒÁÎÅÎÉÅ × ÏÄÎÏÊ É ÔÏÊ ÖÅ ÄÉÒÅËÔÏÒÉÉ ÎÅÓËÏÌØËÉÈ, ÏÐÉÓÁÎÎÙÈ ÒÁÚÎÙÍÉ .conf ÆÁÊÌÁÍÉ, ÂÜËÁÐÏ× ÎÅ ÄÏÐÕÓÔÉÍÏ.
÷ÏÓÓÔÁÎÏ×ÌÅÎÉÅ ÄÁÎÎÙÈ:
ðÏÌÎÁÑ ÒÅÚÅÒ×ÎÁÑ ËÏÐÉÑ ÍÏÖÅÔ ÂÙÔØ ×ÏÓÓÔÁÎÏ×ÌÅÎÁ × ËÏÒÏÔËÉÊ ÐÒÏÍÅÖÕÔÏË ×ÒÅÍÅÎÉ ÂÅÚ ÉÓÐÏÌØÚÏ×ÁÎÉÑ ÄÏÐÏÌÎÉÔÅÌØÎÙÈ, ×ÈÏÄÑÝÉÈ × ËÏÍÐÌÅËÔ fsbackup ÕÔÉÌÉÔ. îÁÐÒÉÍÅÒ, ÅÓÌÉ ÁÒÈÉ× ÂÜËÁÐÁ ÓÏÈÒÁÎÅÎ × ÄÉÒÅËÔÏÒÉÉ /mnt/full_backup, ÄÌÑ ÐÏÌÎÏÇÏ ×ÏÓÓÔÁÎÏ×ÌÅÎÉÑ ÄÏÓÔÁÔÏÞÎÏ ÎÁÂÒÁÔØ:
# cd /
# tar xzf /mnt/full_backup/full_backup.tar.gz
# sh /mnt/full_backup/full_backup.dir
äÌÑ ÐÏÌÎÏÇÏ ×ÏÓÓÔÁÎÏ×ÌÅÎÉÑ ÄÁÎÎÙÈ ÉÚ ÉÎËÒÅÍÅÎÔÁÌØÎÏÇÏ ÂÜËÁÐÁ ÍÏÖÅÔ ÉÓÐÏÌØÚÏ×ÁÔØÓÑ ÓËÒÉÐÔ scripts/fsrestore.sh, ÄÌÑ ×ÏÓÓÔÁÎÏ×ÌÅÎÉÑ ÐÒÏÓÔÏ ÏÔÒÅÄÁËÔÉÒÕÊÔÅ ÐÕÔÉ ×ÎÕÔÒÉ ÓËÒÉÐÔÁ É ÚÁÐÕÓÔÉÔÅ ÅÇÏ.
÷ ÓÌÕÞÁÅ ÞÁÓÔÉÞÎÏÇÏ ÂÜËÁÐÁ ÆÁÊÌÏ×ÏÊ ÓÉÓÔÅÍÙ, ÂÅÚ ÂÜËÁÐÁ ÆÁÊÌÏ× ÏÐÅÒÁÃÉÏÎÎÙÊ ÓÉÓÔÅÍÙ, ×ÏÓÓÔÁÎÏ×ÉÔØ ÉÓÈÏÄÎÙÊ ÎÁÂÏÒ ÕÓÔÁÎÏ×ÌÅÎÎÙÈ × ÍÏÍÅÎÔ ÂÜËÁÐÁ ÐÁËÅÔÏ× (ÄÏÌÖÅÎ ÂÙÔØ ÒÁÚÒÅÛÅÎ ÚÁÐÕÓË scripts/sysbackup.sh × create_backup.sh) ÐÏÍÏÖÅÔ ÓËÒÉÐÔ scripts/sysrestore.sh. ðÏÓÌÅ ÕÓÔÁÎÏ×ËÉ ïó, ÓËÒÉÐÔ Á×ÔÏÍÁÔÉÞÅÓËÉ ÕÓÔÁÎÏ×ÉÔ ÎÅÄÏÓÔÁÀÝÉÅ ÐÁËÅÔÙ ÄÌÑ FreeBSD É Linux.
ðÒÉ ÂÜËÁÐÅ ÄÁÎÎÙÈ Ó SQL ÓÅÒ×ÅÒÁ PostgreSQL ÉÌÉ Mysql, ×ÏÓÓÔÁÎÏ×ÌÅÎÉÅ ÐÒÏÉÚ×ÏÄÉÔÓÑ ËÏÍÁÎÄÁÍÉ: psql -d template1 -f sqlbackupfile ÉÌÉ mysql < sqlbackupfile.
ôÁËÉÍ ÏÂÒÁÚÏÍ ÍÏÖÎÏ ÐÒÉ×ÅÓÔÉ ÔÉÐÏ×ÏÊ ÐÒÏÃÅÓÓ ÐÏÌÎÏÇÏ ×ÏÓÓÔÁÎÏ×ÌÅÎÉÑ ÓÉÓÔÅÍÙ:
- ÂÁÚÏ×ÁÑ ÕÓÔÁÎÏ×ËÁ ïó (ÂÅÚ ÄÏÐÏÌÎÉÔÅÌØÎÙÈ ÐÁËÅÔÏ×)
- ÍÏÎÔÉÒÏ×ÁÎÉÅ ÄÉÓËÁ Ó ÂÜËÁÐÏÍ.
- ÒÅÄÁËÔÉÒÏ×ÁÎÉÅ ÐÕÔÅÊ É ÚÁÐÕÓË scripts/sysrestore.sh ÄÌÑ ÕÓÔÁÎÏ×ËÉ ÎÕÖÎÙÈ ÐÁËÅÔÏ×.
- ÒÅÄÁËÔÉÒÏ×ÁÎÉÅ ÐÕÔÅÊ É ÚÁÐÕÓË scripts/fsrestore.sh
- ÚÁÐÕÓË SQL ÓÅÒ×ÅÒÁ É ×ÏÓÓÔÁÎÏ×ÌÅÎÉÅ ÂÁÚ.
îÁÚÎÁÞÅÎÉÅ ÆÁÊÌÏ× ÐÒÉ ÉÎËÒÅÍÅÎÔÁÌØÎÏÍ ÂÜËÁÐÅ (ÄÌÑ ÎÅ ÉÎËÒÅÍÅÎÔÁÌØÎÏÇÏ - ÆÏÒÍÁÔ
"ÉÍÑ.ext"):
ÉÍÑ-×ÒÅÍÑ-ÔÏÍ.tar.gz ÁÒÈÉ× - ÂÜËÁÐÁ
(ÉÍÑ_ÂÜËÁÐÁ-YYYY.MM.DD.HH.MM.SS-ÎÏÍÅÒ_ÔÏÍÁ.tar.gz).
ÉÍÑ-×ÒÅÍÑ.del ÓÐÉÓÏË ÕÄÁÌÅÎÎÙÈ Ó ÍÏÍÅÎÔÁ ÐÒÅÄÙÄÕÝÅÇÏ ÂÜËÁÐÁ ÆÁÊÌÏ×
ÉÍÑ-×ÒÅÍÑ.hash ÈÜÛ ÔÁÂÌÉÃÁ Ó ËÏÎÔÒÏÌØÎÙÍÉ ÓÕÍÍÁÍÉ. ÉÍÑ-×ÒÅÍÑ.list ÓÐÉÓÏË ÆÁÊÌÏ× × ÁÒÈÉ×Å. ÉÍÑ-×ÒÅÍÑ.dir ËÏÍÁÎÄÙ ÄÌÑ ×ÏÓÓÔÁÎÏ×ÌÅÎÉÑ ÐÒÁ× ÄÏÓÔÕÐÁ É ÐÕÓÔÙÈ ÄÉÒÅËÔÏÒÉÊ.
÷ÉÄÙ ÂÜËÁÐÁ:
÷ÉÄ ÂÜËÁÐÁ × ÆÁÊÌÅ ËÏÎÆÉÇÕÒÁÃÉÉ ÏÐÒÅÄÅÌÑÅÔÓÑ ÐÁÒÁÍÅÔÒÏÍ $cfg_backup_style:
backup - ÉÎËÒÅÍÅÎÔÁÌØÎÙÊ ÂÜËÁÐ × ÁÒÈÉ×. ëÏÐÉÒÕÀÔÓÑ ÔÏÌØËÏ
ÉÚÍÅÎÉ×ÛÉÅÓÑ Ó ÍÏÍÅÎÔÁ ÐÏÓÌÅÄÎÅÇÏ ÂÜËÁÐÁ ÆÁÊÌÙ, ÕÒÏ×ÅÎØ
ÉÎËÒÅÍÅÎÔÁÌØÎÏÓÔÉ ÚÁÄÁÅÔÓÑ ÐÁÒÁÍÅÔÒÏÍ $cfg_increment_level,
ÐÁÒÁÍÅÔÒ ÏÐÒÅÄÅÌÑÅÔ ÞÅÒÅÚ ËÁËÏÇÏ ÞÉÓÌÁ ÉÔÅÒÁÃÉÊ ÆÁÊÌÙ Ó
ÉÎËÒÅÍÅÎÔÁÌØÎÙÍÉ ËÏÐÉÑÍÉ ÂÕÄÕÔ ÏÂßÅÄÉÎÅÎÙ × ÏÄÉÎ ÆÁÊÌ. îÁÐÒÉÍÅÒ,
ÐÒÉ $cfg_increment_level = 7 - 6 ÒÁÚ ÂÕÄÕÔ ÐÏÍÅÝÁÔØÓÑ ÔÏÌØËÏ
ÉÚÍÅÎÅÎÉÑ, ÎÁ 7 ÒÁÚ ÂÜËÁÐ ÂÕÄÅÔ ÏÂßÅÄÉÎÅÎ × ÏÄÉÎ ÆÁÊÌ.
0 - ÓËÏÌØËÏ ÕÇÏÄÎÏ ÒÁÚ, ÂÅÚ ÏÂßÅÄÉÎÅÎÉÑ. äÏÓÔÏÉÎÓÔ×Á - ×ÏÚÍÏÖÎÏÓÔØ
ÏÔÓÌÅÄÉÔØ ÉÚÍÅÎÅÎÉÑ (É ×ÏÓÓÔÁÎÏ×ÉÔØ ÄÁÎÎÙÅ) ÎÁ ÌÀÂÏÊ ÍÏÍÅÎÔ ÓÏ
×ÒÅÍÅÎÉ ÐÅÒ×ÏÊ ÉÔÅÒÁÃÉÉ, × ÁÒÈÉ× ËÏÐÉÒÕÀÔÓÑ ÔÏÌØËÏ ÉÚÍÅÎÅÎÎÙÅ É
ÎÏ×ÙÅ ÄÁÎÎÙÅ, ÞÔÏ ÚÎÁÞÉÔÅÌØÎÏ ÜËÏÎÏÍÉÔ ÔÒÁÆÉË É ÍÅÓÔÏ ÎÁ ÄÉÓËÅ.
ðÏÄÈÏÄÉÔ ÄÌÑ ÅÖÅÄÎÅ×ÎÏÇÏ ÂÜËÁÐÁ ÄÉÎÁÍÉÞÎÏ ÍÅÎÑÀÝÅÊÓÑ ÉÌÉ ËÒÉÔÉÞÎÏÊ
Ë ÐÏÔÅÒÅ ÉÎÆÏÒÍÁÃÉÉ.
full_backup - ÐÏÌÎÙÊ ÂÜËÁÐ × ÁÒÈÉ×, ÂÅÚ ÈÜÛÁ. ÷ ÂÜËÁÐ ×ÓÅÇÄÁ ÐÏÍÅÝÁÀÔÓÑ
×ÓÅ ÆÁÊÌÙ ÏÔÍÅÞÅÎÎÙÅ × ÆÁÊÌÅ ËÏÎÆÉÇÕÒÁÃÉÉ ÄÌÑ ÒÅÚÅÒ×ÎÏÇÏ
ËÏÐÉÒÏ×ÁÎÉÑ). îÁ ÓÅÒ×ÅÒÅ ÇÄÅ ÓÏÈÒÁÎÑÅÔÓÑ ÂÜËÁÐ ÒÅËÏÍÅÎÄÕÅÔÓÑ
ÐÒÏ×ÏÄÉÔØ ×ÔÏÒÉÞÎÏÅ ÒÅÚÅÒ×ÉÒÏ×ÁÎÉÅ, ÎÁÐÒÉÍÅÒ, × crontab ÒÁÚ
× ÎÅÄÅÌÀ ÄÕÂÌÉÒÏ×ÁÔØ ÂÜËÁÐ × ÄÒÕÇÕÀ ÄÉÒÅËÔÏÒÉÀ. îÅÄÏÓÔÁÔËÉ -
ÏÇÒÏÍÎÙÊ ÔÒÁÆÉË ÄÌÑ ËÏÐÉÒÏ×ÁÎÉÑ ÂÜËÁÐÁ ÐÏ ÓÅÔÉ É ×ÙÓÏËÉÅ
ÔÒÅÂÏ×ÁÎÉÑ Ë ÏÂßÅÍÕ ÈÒÁÎÉÌÉÝÁ ÂÜËÁÐÁ. äÏÓÔÏÉÎÓÔ×Ï - ÜËÏÎÏÍÉÑ
ÐÒÏÃÅÓÓÏÒÎÙÈ ÒÅÓÕÒÓÏ× É ÐÁÍÑÔÉ ÎÁ ÓÏÚÄÁÎÉÅ É ÐÏÄÄÅÒÖÉ×ÁÎÉÅ ÈÜÛÁ.
ðÒÅËÒÁÓÎÏ ÐÏÄÈÏÄÉÔ ÄÌÑ ÂÜËÁÐÁ ÍÁÌÏÍÏÝÎÙÈ ÍÁÛÉÎ Ó ÏÇÒÁÎÉÞÅÎÎÙÍÉ
ÒÅÓÕÒÓÁÍÉ ÉÌÉ ÐÒÉ ÓÔÁÔÉÞÎÏÓÔÉ ÒÅÚÅÒ×ÉÒÕÅÍÙÈ ÄÁÎÎÙÈ (ÎÁÐÒÉÍÅÒ,
ÂÜËÁÐ ×ÙÎÏÓÎÙÈ ÒÕÔÅÒÏ× ÒÁÚ × ÍÅÓÑÃ).
sync - ÓÉÎÈÒÏÎÉÚÁÃÉÑ ÄÅÒÅ×Á (ÔÏÌØËÏ ÄÌÑ ÔÉÐÁ ÈÒÁÎÉÌÉÝÁ ssh ÉÌÉ local).
ðÏÞÔÉ ÔÏ ÖÅ, ÞÔÏ É full_backup ÉÌÉ backup (× ÚÁ×ÉÓÉÍÏÓÔÉ ÏÔ ÚÁÄÁÎÉÑ
ËÌÀÞÁ -c ÐÒÉ ÚÁÐÕÓËÅ fsbackup.pl), ÚÁ ÉÓËÌÀÞÅÎÉÅÍ ÔÏÇÏ, ÞÔÏ ËÏÐÉÑ
ÎÅ ÈÒÁÎÉÔÓÑ × ÁÒÈÉ×Å, Á ÏÂÌÁÓÔØ ÆÁÊÌÏ×ÏÊ ÓÉÓÔÅÍÙ ÏÔÍÅÞÅÎÎÁÑ ÄÌÑ
ÂÜËÁÐÁ ÐÏÌÎÏÓÔØÀ ×ÏÓÓÏÚÄÁÅÔÓÑ × ÚÁÄÁÎÎÏÊ ÄÉÒÅËÔÏÒÉÉ ÎÁ ÂÜËÁÐ ÓÅÒ×ÅÒÅ.
ðÒÅÄÎÁÚÎÁÞÅÎÏ ÄÌÑ ÐÁÒÁÌÌÅÌØÎÏÇÏ ÈÒÁÎÅÎÉÑ (ÓÉÎÈÒÏÎÉÚÁÃÉÉ ÄÅÒÅ×Á)
ÉÓÈÏÄÎÙÈ ÔÅËÓÔÏ×, ÓÏÄÅÒÖÉÍÏÇÏ web-ÓÅÒ×ÅÒÁ, ÓÉÎÈÒÏÎÉÚÁÃÉÉ ÐÒÏÅËÔÏ×
Ó ÒÁÂÏÞÅÊ ÍÁÛÉÎÙ ÒÁÚÒÁÂÏÔÞÉËÁ ÎÁ ÓÅÒ×ÅÒ É Ô.Ä.
hash - ÔÏÌØËÏ ÇÅÎÅÒÁÃÉÑ ÈÜÛÁ, ÂÅÚ ÐÏÍÅÝÅÎÉÑ ÆÁÊÌÏ× × ÁÒÈÉ× (ÏÐÃÉÑ -h).
íÏÖÅÔ ÐÒÉÍÅÎÑÔØÓÑ ÄÌÑ ÐÏÍÅÔËÉ ÐÏÍÅÝÅÎÉÑ ÆÁÊÌÏ× × ÂÜËÁÐ, ÂÅÚ
ÆÉÚÉÞÅÓËÏÇÏ ÉÈ ÐÅÒÅÍÅÝÅÎÉÑ, ÄÌÑ ÏÔÓÌÅÖÉ×ÁÎÉÑ ÉÚÍÅÎÅÎÉÊ × ÆÁÊÌÏ×ÏÊ
ÓÉÓÔÅÍÅ ÄÌÑ ÏÂÎÁÒÕÖÅÎÉÑ ÐÏÄÍÅÎÙ ÆÁÊÌÏ× ÚÌÏÕÍÙÛÌÅÎÎÉËÁÍÉ É Ô.Ä.
óËÒÉÐÔ fsbackup.pl, ÐÏÄÄÅÒÖÉ×ÁÅÔ ÒÑÄ ËÌÀÞÅÊ ÚÁÄÁ×ÁÅÍÙÈ × ËÏÍÁÎÄÎÏÊ ÓÔÒÏËÅ:
fsbackup.pl [-n|-f|-h|-c] ÆÁÊÌ_ËÏÎÆÉÇÕÒÁÃÉÉ
-n - ÓÏÚÄÁÅÍ ÎÏ×ÙÊ ÁÒÈÉ× ÎÅÚÁ×ÉÓÉÍÏ ÏÔ ÓÏÓÔÏÑÎÉÑ ÈÜÛÁ.
-f - full_backup - ÐÏÌÎÙÊ ÂÜËÁÐ × ÁÒÈÉ×, ÂÅÚ ÈÜÛÁ.
-h - hash - ÔÏÌØËÏ ÇÅÎÅÒÁÃÉÑ ÈÜÛÁ, ÂÅÚ ÐÏÍÅÝÅÎÉÑ ÆÁÊÌÏ× × ÁÒÈÉ×.
-c - clean - ÏÞÉÓÔËÁ ÈÒÁÎÉÌÉÝÁ Ó ÉÎËÒÅÍÅÎÔÁÌØÎÙÍ ÂÜËÁÐÏÍ É ÓÏÚÄÁÎÉÅ
ÎÏ×ÏÇÏ ÂÜËÁÐÁ.
ôÉÐÙ ÈÒÁÎÉÌÉÝÁ ÄÌÑ ÁÒÈÉ×Á ÂÜËÁÐÁ:
ïÐÒÅÄÅÌÅÎÉÅ ÔÉÐÁ ÈÒÁÎÉÌÉÝÁ ÄÌÑ ÂÜËÁÐÁ ÏÐÒÅÄÅÌÑÅÔÓÑ × ÆÁÊÌÅ ËÏÎÆÉÇÕÒÁÃÉÉ ÐÅÒÅÍÅÎÎÏÊ $cfg_type. ðÏÄÄÅÒÖÉ×ÁÅÔÓÑ 3 ÔÉÐÁ ÈÒÁÎÉÌÉÝ: local, remote_ssh É remote_ftp.
- local - ÓÏÈÒÁÎÅÎÉÅ ÂÜËÁÐÁ × ÌÏËÁÌØÎÏÊ ÆÁÊÌÏ×ÏÊ ÓÉÓÔÅÍÅ. ëÏÎÆÉÇÕÒÁÃÉÑ: $cfg_type="local"; $cfg_local_path="/var/backup"; # ðÕÔØ Ë ÈÒÁÎÉÌÉÝÕ.
- remote_ssh - ÓÏÈÒÁÎÅÎÉÅ ÂÜËÁÐÁ ÎÁ ÕÄÁÌÅÎÎÏÍ ËÏÍÐØÀÔÅÒÅ, ÄÁÎÎÙÅ ÐÅÒÅÄÁÀÔÓÑ ÞÅÒÅÚ ÛÉÆÒÏ×ÁÎÎÏÅ ÓÏÅÄÉÎÅÎÉÅ ÏÒÇÁÎÉÚÏ×ÁÎÎÏÅ Ó ÉÓÐÏÌØÚÏ×ÁÎÉÅÍ SSH. îÁ ÓÉÓÔÅÍÅ Ó ËÏÔÏÒÏÊ ÐÒÏÉÚ×ÏÄÉÔÓÑ ÂÜËÁÐ ÄÏÌÖÅÎ ÂÙÔØ ÕÓÔÁÎÏ×ÌÅÎ ssh ËÌÉÅÎÔ, ÎÁ ÕÄÁÌÅÎÎÏÍ - ssh ÓÅÒ×ÅÒ. íÅÔÏÄ remote_ssh Ñ×ÌÑÅÔÓÑ ÎÁÉÂÏÌÅÅ ÚÁÝÉÝÅÎÎÙÍ, ÎÏ É ÄÏÓÔÁÔÏÞÎÏ ÒÅÓÕÒÓÏÅÍËÉÍ. ðÒÅÄ×ÁÒÉÔÅÌØÎÏ ÎÅÏÂÈÏÄÉÍÏ ÎÁÓÔÒÏÉÔØ ÄÏÓÔÕÐ ÂÜËÁÐ ËÌÉÅÎÔÁ ÎÁ ÓÅÒ×ÅÒ Ó ÉÓÐÏÌØÚÏ×ÁÎÉÅÍ ÛÉÆÒÏ×ÁÎÎÙÈ ËÌÀÞÅÊ, ÂÅÚ ××ÏÄÁ ÐÁÒÏÌÑ. üÔÏ ÄÅÌÁÅÔÓÑ ÓÌÅÄÕÀÝÉÍ ÏÂÒÁÚÏÍ:
ðÒÉÍÅÍ: ÌÏËÁÌØÎÁÑ ÍÁÛÉÎÁ - ÍÁÛÉÎÁ Ó ËÏÔÏÒÏÊ ÂÕÄÅÔ ÐÒÏÉÚ×ÏÄÉÔØÓÑ ÂÜËÁÐ É
ÎÁ ËÏÔÏÒÏÊ ÂÕÄÅÍ ÚÁÐÕÓËÁÔØ ÓËÒÉÐÔ fsbackup.pl. õÄÁÌÅÎÎÁÑ ÍÁÛÉÎÁ - ÍÁÛÉÎÁ
ÎÁ ËÏÔÏÒÕÀ ÂÕÄÕÔ ËÏÐÉÒÏ×ÁÔØÓÑ ÆÁÊÌÙ Ó ÂÜËÁÐÏÍ.
úÁÐÕÓËÁÅÍ ÎÁ ÌÏËÁÌØÎÏÊ ÍÁÛÉÎÅ ÐÒÏÇÒÁÍÍÕ ssh-keygen, ÎÁ ×ÓÅ ÚÁÄÁ×ÁÅÍÙÅ
×ÏÐÒÏÓÙ ÐÒÉÎÉÍÁÅÍ ÚÎÁÞÅÎÉÑ ÐÏ ÕÍÏÌÞÁÎÉÀ (ÐÏÌÅ passphrase ÏÓÔÁ×ÌÑÅÍ
ÐÕÓÔÙÍ). äÁÌÅÅ, ÚÁÐÕÓËÁÅÍ ÐÒÏÇÒÁÍÍÕ ssh-copy-id user@remotehost, ÇÄÅ
user - ÐÏÌØÚÏ×ÁÔÅÌØ ÕÄÁÌÅÎÎÏÊ ÍÁÛÉÎÙ remotehost - ÁÄÒÅÓ ÕÄÁÌÅÎÎÏÊ ÍÁÛÉÎÙ,
( ÉÌÉ ×ÒÕÞÎÕÀ, ÎÁ ÕÄÁÌÅÎÎÏÊ ÍÁÛÉÎÅ × ÄÉÒÅËÔÏÒÉÉ ~/.ssh, ÓÏÚÄÁÅÍ ÆÁÊÌ
authorized_keys, ËÕÄÁ ËÏÐÉÒÕÅÍ ÓÏÄÅÒÖÉÍÏÅ ÆÁÊÌÁ identity.pub Ó ÌÏËÁÌØÎÏÊ
ÍÁÛÉÎÙ). äÌÑ Õ×ÅÌÉÞÅÎÉÑ ÂÅÚÏÐÁÓÎÏÓÔÉ × ÆÁÊÌ ~/.ssh/authorized_keys ÎÁ
ÕÄÁÌÅÎÎÏÊ ÍÁÛÉÎÅ ÄÏÂÁ×ÌÑÅÍ ÐÅÒÅÄ ËÌÀÞÏÍ (ÒÁÚÄÅÌÉ× ÐÒÏÂÅÌÏÍ) ÓÔÒÏËÕ
from="localhost", ÇÄÅ localhost - ÁÄÒÅÓ ÌÏËÁÌØÎÏÊ ÍÁÛÉÎÙ
(from="localhost" 1024 23 1343.....).
ëÏÎÆÉÇÕÒÁÃÉÑ:
$cfg_type="remote_ssh";
$cfg_remote_host="server.remote.ru"; # óÅÒ×ÅÒ ÎÁ ËÏÔÏÒÙÊ ÂÕÄÅÔ ËÏÐÉÒÏ×ÁÔØÓÑ ÂÜËÁÐ.
$cfg_remote_login="backup_login"; # ìÏÇÉÎ ÐÏÄ ËÏÔÏÒÙÍ ÂÕÄÅÔ ÓÏÈÒÁÎÑÔÓÑ ÂÜËÁÐ.
$cfg_remote_path="/home/backup_login/backup"; # äÉÒÅËÔÏÒÉÑ ËÕÄÁ ÄÏÌÖÎÙ ÐÏÍÅÝÁÔØÓÑ ÆÁÊÌÙ ÂÜËÁÐÁ, ÄÉÒÅËÔÏÒÉÑ ÄÏÌÖÎÁ ÐÒÉÓÕÔÓÔ×Ï×ÁÔØ.
- remote_ftp - ÓÏÈÒÁÎÅÎÉÅ ÂÜËÁÐÁ ÎÁ ÕÄÁÌÅÎÎÏÍ ËÏÍÐØÀÔÅÒÅ, ÄÁÎÎÙÅ ÐÅÒÅÄÁÀÔÓÑ ÐÏ ÐÒÏÔÏËÏÌÕ ftp, ÎÁ ÕÄÁÌÅÎÎÏÍ ÈÏÓÔÅ ÄÏÌÖÅÎ ÂÙÔØ ÚÁÐÕÝÅÎ ftp ÓÅÒ×ÅÒ. ôÁË ËÁË ÐÁÒÏÌØ ÈÒÁÎÉÔÓÑ × ÆÁÊÌÅ ËÏÎÆÉÇÕÒÁÃÉÉ × ÏÔËÒÙÔÏÍ ×ÉÄÅ, ÖÅÌÁÔÅÌØÎÏ ÏÇÒÁÎÉÞÉÔØ ÄÏÓÔÕÐ Ë ÈÏÓÔÕ Ë ÕÄÁÌÅÎÎÏÍÕ ÈÏÓÔÕ ÞÅÒÅÚ tcpwrapper ÉÌÉ firewall, Á ÔÁË ÖÅ ÏÇÒÁÎÉÞÉÔØ ×ÈÏÄ ÐÏÌØÚÏ×ÁÔÅÌÑ, ÐÏÄ ËÏÔÏÒÙÍ ÂÕÄÅÔ ÈÒÁÎÉÔØÓÑ ÂÜËÁÐ, ÔÏÌØËÏ ÞÅÒÅÚ chroot ftp. ðÏÌÏÖÉÔÅÌØÎÙÍÉ ÓÔÏÒÏÎÁÍÉ ËÏÐÉÒÏ×ÁÎÉÑ ÐÏ ftp, Ñ×ÌÑÅÔÓÑ ×ÙÓÏËÁÑ ÐÒÏÉÚ×ÏÄÉÔÅÌØÎÏÓÔØ ÚÁËÁÞËÉ É ÎÅÂÏÌØÛÁÑ ÎÁÇÒÕÚËÁ ÎÁ CPU.
ëÏÎÆÉÇÕÒÁÃÉÑ:
$cfg_type="remote_ftp";
$cfg_remote_host="server.remote.ru"; # óÅÒ×ÅÒ ÎÁ ËÏÔÏÒÙÊ ÂÕÄÅÔ ËÏÐÉÒÏ×ÁÔØÓÑ ÂÜËÁÐ.
$cfg_remote_password="Test1234"; # ÐÁÒÏÌØ ÄÌÑ ×ÈÏÄÁ ÐÏ ftp.
$cfg_remote_login="backup_login"; # ìÏÇÉÎ ÐÏÄ ËÏÔÏÒÙÍ ÂÕÄÅÔ ÓÏÈÒÁÎÑÔÓÑ ÂÜËÁÐ.
$cfg_remote_path="/home/backup_login/backup"; # äÉÒÅËÔÏÒÉÑ ËÕÄÁ ÄÏÌÖÎÙ ÐÏÍÅÝÁÔØÓÑ ÆÁÊÌÙ ÂÜËÁÐÁ, ÄÉÒÅËÔÏÒÉÑ ÄÏÌÖÎÁ ÐÒÉÓÕÔÓÔ×Ï×ÁÔØ.
$cfg_remote_ftp_mode=0; # Active (0) ÉÌÉ Passive (1) ÓÏÅÄÉÎÅÎÉÅ.
ûÉÆÒÏ×ÁÎÉÅ ÂÜËÁÐÁ:
äÌÑ ÛÉÆÒÏ×ÁÎÉÑ ÂÜËÁÐÁ × ÓÉÓÔÅÍÅ ÄÏÌÖÎÁ ÂÙÔØ ÕÓÔÁÎÏ×ÌÅÎÁ ÐÒÏÇÒÁÍÍÁ PGP ÛÉÆÒÏ×ÁÎÉÑ GnuPG: http://www.gnupg.org (ÒÅËÏÍÅÎÄÕÅÔÓÑ) ÉÌÉ PGP: http://www.pgpi.org
äÁÌÅÅ:
ìÏËÁÌØÎÁÑ ÍÁÛÉÎÁ - ÍÁÛÉÎÁ ÎÁ ËÏÔÏÒÏÊ ÐÒÏÉÚ×ÏÄÉÔÓÑ ÒÅÚÅÒ×ÎÏÅ ËÏÐÉÒÏ×ÁÎÉÅ. õÄÁÌÅÎÎÁÑ ÍÁÛÉÎÁ - ÍÁÛÉÎÁ ËÕÄÁ ÓÏÈÒÁÎÑÅÔÓÑ ÁÒÈÉ× ÂÜËÁÐÁ.
òÅËÏÍÅÎÄÁÃÉÉ ÐÏ ÒÁÂÏÔÅ Ó PGP ÐÒÏÇÒÁÍÍÁÍÉ ÄÌÑ ÓÏÚÄÁÎÉÑ ÛÉÆÒÏ×ÁÎÎÏÇÏ ÂÜËÁÐÁ (ÄÌÑ pgp2.6, pgp5.0, gnupg):
äÌÑ ÓÏÚÄÁÎÉÑ ÐÕÂÌÉÞÎÏÇÏ É ÓÅËÒÅÔÎÏÇÏ ËÌÀÞÅÊ ÎÁÂÅÒÉÔÅ (ÎÁ ÕÄÁÌÅÎÎÏÊ ÍÁÛÉÎÅ):
pgp2.6> pgp -kg
pgp5.0> pgpk -g
gnupg> gpg --gen-key # ÅÓÌÉ ÇÅÎÅÒÁÃÉÑ ËÌÀÞÁ ÚÁÎÉÍÁÅÔ ÓÌÉÛËÏÍ ÍÎÏÇÏ ×ÒÅÍÅÎÉ
×ÏÓÐÏÌØÚÕÊÔÅÓØ ËÌÀÞÏÍ gpg --quick-random
üËÓÐÏÒÔÉÒÕÊÔÅ ÓÏÚÄÁÎÎÙÊ ÐÕÂÌÉÞÎÙÊ ËÌÀÞ × ÆÁÊÌ (ÎÁ ÕÄÁÌÅÎÎÏÊ ÍÁÛÉÎÅ): pgp2.6> pgp -akx <UserID> <ÆÁÊÌ ËÕÄÁ ÂÕÄÅÔ ÚÁÐÉÓÁÎ ËÌÀÞ> pgp5.0> pgpk -ax <UserID> <ÆÁÊÌ ËÕÄÁ ÂÕÄÅÔ ÚÁÐÉÓÁÎ ËÌÀÞ> gnupg> gpg --export -a <UserID> > <ÆÁÊÌ ËÕÄÁ ÂÕÄÅÔ ÚÁÐÉÓÁÎ ËÌÀÞ>
úÁÔÅÍ, ÄÏÂÁ×ÔÅ ÓÏÚÄÁÎÎÙÊ ÐÕÂÌÉÞÎÙÊ ËÌÀÞ (ÎÁ ÌÏËÁÌØÎÏÊ ÍÁÛÉÎÅ): pgp2.6>pgp -ka <ÆÁÊÌ Ó ËÌÀÞÏÍ Ó ÕÄÁÌÅÎÎÏÊ ÍÁÛÉÎÙ> pgp5.0>pgpk -a <ÆÁÊÌ Ó ËÌÀÞÏÍ Ó ÕÄÁÌÅÎÎÏÊ ÍÁÛÉÎÙ> gnupg>gpg --import <ÆÁÊÌ ËÕÄÁ ÂÕÄÅÔ ÚÁÐÉÓÁÎ ËÌÀÞ> # äÌÑ pgupg ÎÅÏÂÈÏÄÉÍÏ ÚÁ×ÅÒÉÔØ ËÌÀÞ (gpg --gen-key ÎÁ ÌÏËÌØÎÏÊ ÍÁÛÉÎÅ ÎÅ ÚÁÂÕÄÔÅ): gnupg>gpg --sign-key <ÉÍÑ ËÌÀÞÁ>
äÌÑ ÒÁÓÛÉÆÒÏ×ËÉ ÎÅÏÂÈÏÄÉÍÏ ÚÁÐÕÓÔÉÔØ (ÎÁ ÕÄÁÌÅÎÎÏÊ ÍÁÛÉÎÅ): pgp2.6>cat encrypted.tar.gz | pgp -f -z'ÐÁÒÏÌØ' > ÒÁÓÛÉÆÒÏ×ÁÎÎÙÊ.tar.gz pgp5.0>cat encrypted.tar.gz | pgpv -f -z'ÐÁÒÏÌØ' > ÒÁÓÛÉÆÒÏ×ÁÎÎÙÊ.tar.gz gnupg>cat encrypted.tar.gz | gpg --decrypt > ÒÁÓÛÉÆÒÏ×ÁÎÎÙÊ.tar.gz
äÌÑ ÛÉÆÒÏ×ÁÎÉÑ ÉÓÐÏÌØÚÕÅÔÓÑ (ÎÁ ÌÏËÁÌØÎÏÊ ÍÁÛÉÎÅ): pgp2.6>cat input| pgp -ef userid > output pgp5.0>cat input| pgpe -f userid > output gnupg>cat input| gpg -e -r userid > output
âÌÁÇÏÄÁÒÎÏÓÔÉ:
Alex Sokoloff. <sokoloff@mail.ru>
- ðÒÅÄÌÏÖÅÎÉÅ Ï ××ÅÄÅÎÉÉ ÕÒÏ×ÎÅÊ ÇÏ×ÏÒÌÉ×ÏÓÔÉ (verbose mode).
- éÚÍÅÎÉÔØ ÚÁÐÕÓË ÐÒÏÇÒÁÍÍÙ (××ÅÓÔÉ ÐÒÏ×ÅÒËÕ ÎÁ ÄÌÉÎÕ ÐÉÓØÍÁ), ×ÙÎÅÓÔÉ ÅÅ × ÆÁÊÌ fsbackup.cron.
- îÁÐÉÓÁÌ ÎÅÂÏÌØÛÏÊ ÓËÒÉÐÔ fsfind.pl ÄÌÑ ÐÏÉÓËÁ ÆÁÊÌÁ × ÁÒÈÉ×ÁÈ ÏÎ ÐÒÏÓÍÁÔÒÉ×ÁÅÔ ÆÁÊÌÙ list × ÄÉÒÅËÔÏÒÉÉ Ó ÁÒÈÉ×ÁÍÉ. íÏÖÅÔ ËÏÍÕ-ÔÏ ÂÕÄÅÔ ÐÏÌÅÚÅÎ. òÁÂÏÔÁÅÔ Ó ÌÏËÁÌØÎÙÍÉ ÁÒÈÉ×ÁÍÉ.
- ÓËÒÉÐÔ ÄÌÑ ÂÜËÁÐÁ Interbase ÂÁÚ.
Oleg S. Gints <oleg@cec.amur.elektra.ru>:
- ðÒÅÄÌÏÖÅÎÉÅ ÐÏ ××ÅÄÅÎÉÀ ÄÏÐÏÌÎÉÔÅÌØÎÏÇÏ ÒÅÚÅÒ×ÉÒÏ×ÁÎÉÑ ÐÒÉ ÉÓÐÏÌØÚÏ×ÁÎÉÉ ÉÎËÒÅÍÅÎÔÁÌØÎÏÇÏ ÂÜËÁÐÁ.
- ïÂÎÁÒÕÖÅÎÉÅ ÏÛÉÂËÉ × mysql_backup.sh (ÄÌÑ ×ÁÒÉÁÎÔÁ ÐÏÌÎÏÇÏ ÁÒÈÉ×Á ÐÒÏÐÕÝÅÎ ËÌÀÞ --all-databases)
- óÏÏÂÝÅÎÉÅ Ï ÎÅÐÒÁ×ÉÌØÎÏÍ ÏÐÒÅÄÅÌÅÎÉÉ ÕÒÏ×ÎÑ ÉÎËÒÅÍÅÎÔÁÌØÎÏÓÔÉ ÄÌÑ ÌÏËÁÌØÎÏÇÏ ÂÜËÁÐÁ.
- úÁÍÅÞÁÎÉÅ Ï ÏÔÓÕÔÓÔ×ÉÉ ÌÉÄÉÒÕÀÝÉÈ ÎÕÌÅÊ × ÎÏ×ÏÍ ÆÏÒÍÁÔÅ ÉÍÅÎÏ×ÁÎÉÑ ÆÁÊÌÏ× × ÂÜËÁÐÅ.
îÏÓËÏ× éÌØÑ <phantom@highway.ru>, óÅÒÇÅÊ âÁÕËÉÎ <teq@highway.ru>:
- éÄÅÑ ÒÁÚÂÉ×ËÉ ÓÌÉÛËÏÍ ÂÏÌØÛÉÈ ÆÁÊÌÏ× ÎÁ ÎÅÓËÏÌØËÏ ÞÁÓÔÅÊ, ÐÒÅÄÌÏÖÅÎÉÑ É ÐÁÔÞÉ ÐÏ ÓÏÚÄÁÎÉÑ ÁÒÈÉ×Ï× ÚÁÎÉÍÁÀÝÉÈ ÎÅÓËÏÌØËÏ çÂ.
Aleksey Kuznetsov <ahk@spb.edu>
- óÏÏÂÝÅÎÉÅ Ï ÐÒÏÐÕÓËÅ ËÌÀÞÁ --all-databases × mysql_backup.sh
Pavel Stoliarov <admin@tzto.infopac.ru>
- éÓÐÒÁ×ÌÅÎÉÅ ÏÛÉÂËÉ ÐÒÉ×ÏÄÑÝÅÊ Ë ÎÅËÏÒÒÅËÔÎÏÊ ÒÁÂÏÔÅ ÐÒÉ ÌÏËÁÌØÎÏÍ ÂÜËÁÐÅ.
- ðÒÅÄÌÏÖÅÎÉÅ ÐÏ ÓÏÈÒÁÎÅÎÉÀ ÓÔÁÒÙÈ ÂÜËÁÐÏ× ÐÏÓÌÅ ÉÎËÒÅÍÅÎÔÁ.
Alexandr Zhukov <sacha@ic.vrn.ru>
- úÁÍÅÞÁÎÉÅ ÐÏ ÎÅÐÒÁ×ÉÌØÎÏÊ ÒÁÂÏÔÅ ÐÒÁ×ÉÌÁ ÄÌÑ ÉÓËÌÀÞÅÎÉÑ ÄÉÒÅËÔÏÒÉÉ ÉÚ ÂÜËÁÐÁ.
Zherdev Anatoly <tolyar@mx.ru>
- ðÁÔÞ É ÉÄÅÑ ××ÅÄÅÎÉÑ ÄÉÒÅËÔÉ×Ù $cfg_stopdir_prune, ÄÌÑ ÏÔËÌÀÞÅÎÉÑ ÒÅËÕÒÓÉ×ÎÏÇÏ ÐÒÏÓÍÏÔÒÁ ÄÉÒÅËÔÏÒÉÊ, ÚÁÐÒÅÝÁÅÍÙÈ ÄÌÑ ÐÏÍÅÝÅÎÉÑ × ÂÜËÁÐ.
Priamikov Alexei <apriam@info.novsu.ac.ru>
- ïÂÎÁÒÕÖÅÎÉÅ ÏÛÉÂËÉ × fsrestore.sh
Valeriy Zavolodko <vals@pa.ktts.kharkov.ua>
- óÏÏÂÝÅÎÉÅ Ï ÎÅÄÏÒÁÂÏÔËÅ ÐÒÉ ÕÓÔÁÎÏ×ËÅ $cfg_root_path ÏÔÌÉÞÎÙÈ ÏÔ "/".
