a venit timpul pentru bekapinga din nou 🙂 Ieri realizat, Am uitat să fac orice backup și toate fișierele sunt de fapt pe 2 mașini. Dame are încă opțiunea de a reține. Deoarece testul de mașină nu are nevoie de mult sistem de recuperare din plastic, așa că am apelat la vechiul meu scenariu în care există o funcție primitivă. În general, este extrem de urât și funcționalitățile sale Lupșa cunoscute spun doar feriți-vă 1 Arhiva separat că acest cod este destul de static cu aceste repetari. Затова реших да го пренапиша, като този път не го надрасквма за 10 minute. В новата си версия вече се подържат 10 стари backup файла. Което си една добра цифра.

#!/bin/bash

#path to tar command
TAR="$(which tar) cvzf"

function backup {

#path to beckup folder
cd $1

#remove oldest archive
rm -r *.10.tgz
sleep 3 #time for removing

#move old archives, we will save 10 old files
for i in {9..1}
do
let "n=$i+1"
mv "www.$i.tgz" "www.$n.tgz"
mv "mysql.$i.tgz" "mysql.$n.tgz"
mv "cron.$i.tgz" "cron.$n.tgz"
done

#and move the newest : )
mv www.tgz www.1.tgz
mv mysql.tgz mysql.1.tgz
mv cron.tgz cron.1.tgz

#path to first folder
$TAR www.tgz /var/www/
sleep 2
#path to second folder
$TAR mysql.tgz /var/lib/mysql/
sleep 2
}

#call backup function with folder path arg
backup /media/backup1
sleep 2
backup /media/backup2

#E0F

В общи линии нещата са ясни. Имам 2 монтирани дяла за бекъп в /media и в тях се наливат новите архиви като преди това се преименуват старите. Структурата на имената е очевидна и при ls команда ориентира е интуитивен.

Consolidată prin Zemanta

Azi am vorbi despre durerile în jurul unui singur server cu Suhosin patch-uri și de modul în care Debian afacere Sqeeze cu ea. Acum începem o mică distanță. Când instalați php în sistemul de ambalare Debian (stabil pentru alții nu pot spune cum încă) trebuie să instalați și Suhosin mod de a-l. Am avut probleme cu un anumit sistem MAH-cadru scris în php și a luat decizia de cardinal în loc să facă depana sistemul și din spate de rapoarte pentru dezvoltatori pentru a pierde patch-uri de securitate și, astfel, salvați-am probleme. În general, pot spune cu îndrăzneală că aceasta a fost una dintre deciziile cele mai stupide am luat vreodată. La început, modul de eliminare php5-Suhosin repornire server web și o oops postare – patch-o este încă încărcat. După un scurt studiu găsit, că pachetul este compilat și direct în trece la trap cod, ceea ce înseamnă că nu excludere sau de îndepărtare, cu excepția cazului recompilați codul din nou fără patch-uri. Care va rezolva drapna și recompilati la pachetul deb. Făcut mai devreme a spus face apt-get php5 sursă mă trage acest cod sursă, razpaketirva și etc. Aici ideea mea ideală pentru a elimina sursa pachetului pentru a elimina plasturele și compila-l înapoi la pachetul Debian, plus una din două mici optimizări în compilare. a declarat terminat – elimina patch-uri inutile de debian / patch-uri / suhosin.patch L-am scos de la joc în debian / patch-uri / serie. Până în prezent, totul în mod clar și fără probleme. Apoi rulați pentru a compila pachet debuild și așa cum am așteptat, am suflat compilare din cauza antete lipsă. În mod natural va exista nici o penurie – Sunt încă cu netinstall debian. fix rapid prostie rula din nou compilare, la un moment dat doar leșin din nou, că, cu o eroare de ciudat în Zend / zend_stream.h sau .c nu amintesc exact (dacă mă pot ocupa mai târziu pentru a verifica exact ce fișier și linia tunat). Dupa ce unele îndoielii ceea ce se întâmplă și de ce dracu 'se poate vuietul miezului Zend – în cazul în care ar fi trebuit să bubuie din orice motiv și un pic de studiu mai constată că această problemă este semne relativ rare și nu multe din ea. Bănuiesc că unul dintre patch-uri din sursa a fost greșit, dar nu am nici nervi pentru a verifica it. Hmmmmm ciudat super-ciudat. Aproape am decis să compila php pură, dar am decis să încerc oglinzi dotdeb acolo pentru a vedea ce se întâmplă. Acolo compilare a murit din cauza unor dependențe ciudate, dar ferite de probleme în corpul principal. Care la rândul său, este de înțeles că le au 30-40 patch-uri care au fost în ambalaj stabil. După mai multe încercări nereușite de lungi și m-am saturat si inchis, pachetul meu de vanilie si compila-l cu opțiuni de aproape debian-ski cu ideea de a rescrie sistemul meu actual și instalarea unor noi pachete din alimentatorul se poate comporta pachet instalat din depozit (probabil, o altă diferențiată nu este o soluție rezonabilă). Așa cum mă așteptam, fără nici o instalare patch-uri a mers fără probleme. Acesta este rezultatul dosarul meu config.nice:

#! /bin/sh
#
# Created by configure

CFLAGS='-g -O2 -fPIC -Wall -fsigned-char -fno-strict-aliasing   -gstabs' \
CXXFLAGS='-g -O2' \
'./configure' \
'--with-apxs2=/usr/bin/apxs2' \
'--prefix=/usr/local/php5' \
'--disable-cgi' \
'--with-config-file-path=/etc/php5/apache2' \
'--with-config-file-scan-dir=/etc/php5/apache2/conf.d' \
'--build=x86_64-linux-gnu' \
'--host=x86_64-linux-gnu' \
'--sysconfdir=/etc' \
'--localstatedir=/var' \
'--mandir=/usr/share/man' \
'--disable-debug' \
'--with-regex=php' \
'--disable-rpath' \
'--disable-static' \
'--with-pic' \
'--with-layout=GNU' \
'--with-pear=/usr/share/php' \
'--enable-calendar' \
'--enable-fileinfo' \
'--enable-hash' \
'--enable-json' \
'--enable-sysvsem' \
'--enable-sysvshm' \
'--enable-sysvmsg' \
'--enable-bcmath' \
'--with-bz2' \
'--enable-ctype' \
'--without-gdbm' \
'--with-iconv' \
'--enable-exif' \
'--enable-ftp' \
'--enable-dbase' \
'--with-gettext' \
'--enable-mbstring' \
'--with-onig=/usr' \
'--with-pcre-regex' \
'--with-mysql=shared,mysqlnd' \
'--with-mysql-sock=/var/run/mysqld/mysqld.sock' \
'--with-mysqli=shared,mysqlnd' \
'--enable-pdo=shared' \
'--with-pdo-mysql=shared,mysqlnd' \
'--with-pdo-odbc=shared,unixODBC,/usr' \
'--with-pdo-pgsql=shared,/usr/bin/pg_config' \
'--with-pdo-sqlite=shared,/usr' \
'--with-pdo-dblib=shared,/usr' \
'--enable-phar' \
'--enable-shmop' \
'--enable-sockets' \
'--enable-dom' \
'--enable-wddx' \
'--enable-tokenizer' \
'--with-zlib' \
'--with-kerberos=/usr' \
'--with-openssl=/usr' \
'--enable-soap' \
'--enable-zip' \
'--with-mhash=yes' \
'--with-exec-dir=/usr/lib/php5/libexec' \
'--with-system-tzdata' \
'--without-mm' \
'--with-readline=/usr' \
'--without-sybase-ct' \
'--without-sqlite' \
'--without-sqlite3' \
'--without-mssql' \
'--enable-pcntl' \
'--enable-inline-optimization' \
"[email protected]"

Această configurație este similară cu cea a dotdeb compilare. Като основаното и най важно е prefix опцията където ще се разполагат файловете с библиотеките на php. Него както и другите пъти ги коригирайте според вашата система така че да не се усети компилацията с промяна на пътищата.

Consolidată prin Zemanta