De tijd is voor bekapinga wederkomen 🙂 Gisteren realiseerde, Ik ben vergeten om eventuele back-ups te doen en alle bestanden zijn eigenlijk op 2 machinerie. Dame nog mogelijkheid behouden. Omdat de machine test niet veel plastic recovery systeem nodig, dus ik draaide mijn oude script waarin er een primitieve functie. Over het algemeen is het uiterst lelijk en zijn Lupsa bekende functionaliteiten zeggen let alleen 1 Archiveer apart dat de code is vrij statisch met deze herhalingen. Затова реших да го пренапиша, като този път не го надрасквма за 10 minuten. В новата си версия вече се подържат 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 команда ориентира е интуитивен.

Versterkt door Zemanta

Vandaag heb ik praten over de ellende rond een enkele server met suhosin patch en hoe Debian Sqeeze deal mee. Nu beginnen we een beetje afstand. Als je php installeren op de Debian verpakkingssysteem (stabiel voor anderen kan ik niet zeggen hoe nog) u moet installeren en suhosin mod te. Ik had problemen met sommige MAH frame systeem geschreven in php en nam de kardinaal beslissing in plaats daarvan te doen debuggen van het systeem en de rug Report Developer om security patches te verliezen en daarmee mezelf redden de moeite. Over het algemeen kan ik met vertrouwen zeggen dat dit een van de meest domme beslissingen die ik ooit genomen. Op het eerste module verwijderen php5-suhosin restart web server-a en oops bericht – patch-a is nog steeds geladen. Na een korte studie vinden, dat het pakket is samengesteld en draaft direct in de code, wat betekent dat er geen uitsluiting of verwijdering, tenzij opnieuw compileren van de code opnieuw zonder patch. Lossen die drapna en opnieuw compileren om deb-pakket. Gedaan Zo gezegd, zo doe je apt-get source php5 trok me deze broncode, razpaketirva en etc.. Hier mijn ideaal idee om de bron van het pakket te verwijderen om de patch te verwijderen en te compileren het terug naar de Debian-pakket plus één twee kleine optimalisaties in compilatie. zei gedaan – elimineren onnodige patch van debian / flarden / suhosin.patch Ik verwijderde hem van het spelen in debian / flarden / serie. Tot nu toe alles duidelijk en zonder problemen. Dan start de verpakking te compileren debuild en als ik had verwacht ik blies compilatie vanwege ontbrekende headers. Uiteraard zullen er tekorten – Ik ben nog steeds met debian NetInstall. Quick fix domheid weer compilatie run, op een gegeven moment pas weer flauw, die met een vreemde fout in Zend / zend_stream.h of .c niet precies herinneren (als ik kan omgaan later precies welk bestand te controleren en de lijn donderde). Na enige twijfel wat er gebeurt en waarom de hel kan denderen van de Zend kern – waar het zou moeten rommelen om welke reden en een beetje langer studie vindt dat dit probleem is relatief zeldzaam en niet veel tekenen van. Ik vermoed dat een van de patches in de bron verkeerd was, maar ik heb geen zenuwen om het te controleren. Hmmmmm raar super raar. Bijna heb ik besloten om pure php compileren maar ik besloot om spiegels te proberen dotdeb er te zien wat er gebeurt. Er compilatie overleed als gevolg van een aantal vreemde verslaving, maar spaarde de problemen in de hoofdtekst. Die op zijn beurt is begrijpelijk dat ze deden hen 30-40 Patches die in stabiele pakket waren. Na een aantal lange en mislukte pogingen werd ik moe en uitgeschakeld mijn vanille-pakket en het compileren met bijna debian-ski mogelijkheden met het idee om mijn huidige systeem herschrijven en installeren van nieuwe pakketten van de feeder-pakket geïnstalleerd vanaf de repository kunnen gedragen (waarschijnlijk een andere gedifferentieerde geen redelijke oplossing). Zoals ik had verwacht, zonder vlekken installatie verliep vlot. Dit is het resultaat van mijn config.nice bestand:

#! /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]"

Deze configuratie is vergelijkbaar met die van samenstelling dotdeb. Като основаното и най важно е prefix опцията където ще се разполагат файловете с библиотеките на php. Него както и другите пъти ги коригирайте според вашата система така че да не се усети компилацията с промяна на пътищата.

Versterkt door Zemanta