diff options
author | M.Gergo | 2019-03-08 21:20:34 +0100 |
---|---|---|
committer | M.Gergo | 2019-03-08 21:20:34 +0100 |
commit | f51c9ed2abe5c68211bb3736be5f70b1fe2c9ec0 (patch) | |
tree | e13e60e4b94a3b58f1e2bfbe271102c8f04b67bd /mayor-orig/bin | |
parent | c76a004b0135786f2742283f8d5f917106f58bd8 (diff) | |
download | mayor-f51c9ed2abe5c68211bb3736be5f70b1fe2c9ec0.tar.gz mayor-f51c9ed2abe5c68211bb3736be5f70b1fe2c9ec0.zip |
további rendrakás
Diffstat (limited to 'mayor-orig/bin')
-rw-r--r-- | mayor-orig/bin/backup.sh | 192 | ||||
-rw-r--r-- | mayor-orig/bin/crypt-backup.sh | 144 | ||||
-rw-r--r-- | mayor-orig/bin/decrypt-backup.sh | 138 | ||||
-rwxr-xr-x | mayor-orig/bin/etc/cron.daily/mayor | 13 | ||||
-rw-r--r-- | mayor-orig/bin/help.sh | 47 | ||||
-rw-r--r-- | mayor-orig/bin/lock.sh | 46 | ||||
-rw-r--r-- | mayor-orig/bin/mayor | 66 | ||||
-rw-r--r-- | mayor-orig/bin/remote-backup.sh | 170 | ||||
-rw-r--r-- | mayor-orig/bin/restore.sh | 257 | ||||
-rwxr-xr-x | mayor-orig/bin/sbin/eNaploBackup.sh | 95 | ||||
-rwxr-xr-x | mayor-orig/bin/sbin/eNaploRestore.sh | 82 | ||||
-rw-r--r-- | mayor-orig/bin/sbin/update.sh | 35 | ||||
-rw-r--r-- | mayor-orig/bin/tex2pdf.sh | 24 | ||||
-rw-r--r-- | mayor-orig/bin/unlock.sh | 52 | ||||
-rw-r--r-- | mayor-orig/bin/update.sh | 227 | ||||
-rw-r--r-- | mayor-orig/bin/xetex2pdf.sh | 36 |
16 files changed, 0 insertions, 1624 deletions
diff --git a/mayor-orig/bin/backup.sh b/mayor-orig/bin/backup.sh deleted file mode 100644 index 46a11f4b..00000000 --- a/mayor-orig/bin/backup.sh +++ /dev/null @@ -1,192 +0,0 @@ -#!/bin/bash - -OPT_SPEC="hf:d::" -LONG_OPT_SPEC="help,file:,backup-file:,dir:,backup-dir::" -PARSED_OPTIONS=$(getopt -n "$0" -a -o $OPT_SPEC --long $LONG_OPT_SPEC -- "$@") -OPTIONS_RET=$? -eval set -- "$PARSED_OPTIONS" - -help_usage() { -cat <<EOF - -Backup használata: mayor backup [opciók] - -A parancs segítségével menthetjük a MaYoR rendszer adatbázisait, aktuális forrását és -beállításait. A mentés alapértelmezetten az aktuális dátum alapján lesz elnevezve -"YYYYmmdd.tgz" alakban (pl. $DATE.tgz). - -A mentési könyvtár, a szükséges jelszavak és egyéb mentési paraméterek beállításait a -/etc/mayor/main.conf állományban kell megadni. - -Opciók: - -h, --help: A parancs leírása (amit most olvasol...) - -f, --file, --backup-file: A mentési állomány neve - -d, --dir, --backup-dir: A mentési könyvtár elérési útja - -EOF -} - -#if [ $OPTIONS_RET -ne 0 ] || [ $# -le 1 ]; then help_usage; exit; fi -if [ $OPTIONS_RET -ne 0 ]; then help_usage; exit; fi - -BACKUPFILE="$DATE" -while [ $# -ge 1 ]; do - case $1 in - --help | -h ) help_usage - exit - ;; - - --backup-file | --file | -f ) shift - BACKUPFILE="$1" - echo "Backup fájl: $BACKUPFILE" - ;; - - --backup-dir | --dir | -d ) shift - BACKUPDIR="$1" - echo "Backup könyvtár: $BACKUPDIR" - ;; - - -- ) shift - break - ;; - - * ) echo "HIBA: ismeretlen opció: $1" # ide elvileg sose jutunk, mert a getopts már kiszűrte a hibás paramétereket... - exit - ;; - esac - shift -done - -########################### - -if [ -z $BACKUPDIR ]; then - if [ -f ../config/backup.conf ]; then - echo "WARNING: elavult konfigurációs állomány! (backup.conf)" - echo " A frissítési rendszer a korábbi backup.conf és update.conf állományok helyett" - echo " egy új, rögzített helyen lévő állományt használ: /etc/mayor/main.conf" - echo " Most - ennek hiányában - a régebbi állományt használjuk" - . ../config/backup.conf - else - echo -e "\n\nERROR: Hiányzó konfigurációs file: ../config/backup.conf" - pwd - exit 11 - fi -fi - -## -# A könyvtárak létrehozása -## - -if [ ! -e $BACKUPDIR ]; then - mkdir $BACKUPDIR > /dev/null 2>&1 - if [ $? -ne 0 ]; then - echo "Nem sikerült a ${BACKUPDIR} könyvtárat létrehozni!" - echo "MaYoR Backup failure!" - exit 1 - fi -fi -chown $WEB_SERVER_USER $BACKUPDIR -chmod 700 $BACKUPDIR - -if [ -e $BACKUPDIR/$BACKUPFILE.tgz ]; then - echo -e "\n\nERROR: már volt mentés: $BACKUPDIR/$BACKUPFILE.tgz\n" - exit 1 -fi -mkdir $BACKUPDIR/$BACKUPFILE -chown $WEB_SERVER_USER $BACKUPDIR/$BACKUPFILE -chmod 700 $BACKUPDIR/$BACKUPFILE - -## -# mysql adatbázis mentése -## - -if [ "$MYSQL_HOST" == "" ]; then - MYSQL_HOST="localhost" -fi - -if [ -f $MYSQL ]; then - DATABASES='' - for DB in `echo 'SHOW DATABASES' | mysql -h$MYSQL_HOST -p$MYSQL_PW -u$MYSQL_USER`; do - if [[ ! $EXCLUDED_DBS =~ .*$DB.* ]] && { [[ $DB =~ ^mayor.* ]] || [[ $DB =~ ^naplo.* ]] || [[ $DB =~ ^intezmeny.* ]]; } then - DATABASES="$DATABASES $DB" - fi - done - -else - echo -e "\n\nERROR: A mysql kliens nem található: $MYSQL\n" - exit 2 -fi - -for DATABASE in $DATABASES; do - mysqldump -R -h$MYSQL_HOST -p$MYSQL_PW -u$MYSQL_USER $DATABASE >> $BACKUPDIR/$BACKUPFILE/$DATABASE.sql -done - -## -# A honlap mentése -## - -mkdir $BACKUPDIR/$BACKUPFILE/log -cp -a $BASEDIR/log/revision $BACKUPDIR/$BACKUPFILE/log/revision -cp -a $BASEDIR/www $BACKUPDIR/$BACKUPFILE/www -cp -a $BASEDIR/config $BACKUPDIR/$BACKUPFILE/config - - -if [ "$SAVELDAP" == 1 ]; then - - ## - # Az LDAP adatbázis - ## - - /etc/init.d/slapd stop - sleep 1 - - slapcat -b $BASEDN -l $BACKUPDIR/$BACKUPFILE/ldap.ldif - - cp -a $LDAPDBDIR $BACKUPDIR/$BACKUPFILE/ldap - - /etc/init.d/slapd start - - ## - # LDAP konfig file-ok mentése (schema) - ## - - mkdir $BACKUPDIR/$BACKUPFILE/etc - cp -a $LDAPCONFDIR $BACKUPDIR/$BACKUPFILE/etc/ - -fi - -## -# Becsomagolás -## - -cd $BACKUPDIR -## Ez a korábbi szerintem hibás: -## tar cfz ${BACKUPFILE}.tgz ${DATE} -tar cfz ${BACKUPFILE}.tgz ${BACKUPFILE} -rm -rf $BACKUPFILE -#Debian6 inkompatibilis: tar cfz ${BACKUPFILE}.tgz --remove-files ${BACKUPFILE} - -## -# Mentés átmásolása másik szerverre -# rsync # Losonci János kiegészítése (losy@agymk.sulinet.hu) -## - -if [ "$RSYNC" == 1 ]; then - RSYNCBIN=`which rsync` - if [ "$RSYNCBIN" != "" ]; then - echo $RSYNCBIN -auvE $BACKUPDIR/ $RUSER@$RHOST:$RPATH/ - $RSYNCBIN -auvE $BACKUPDIR/ $RUSER@$RHOST:$RPATH/ - if [ $? -ne 0 ]; then - echo "rsync error!" - fi - fi -fi - -## -# Elavult mentés törlése -## - -declare -i BDAYS=BACKUPDAYS -if [ $BDAYS -gt 0 ]; then - find $BACKUPDIR -mtime +$BDAYS -exec rm {} \; -fi diff --git a/mayor-orig/bin/crypt-backup.sh b/mayor-orig/bin/crypt-backup.sh deleted file mode 100644 index 11e10a27..00000000 --- a/mayor-orig/bin/crypt-backup.sh +++ /dev/null @@ -1,144 +0,0 @@ -#!/bin/bash -# -# Example: mayor crypt-backup --backup-file=/tmp/wiki.tgz -# Az eredmény a $BACKUPDIR/$DATE-crypt.tgz állományba kerül -# (Vagy jobb lenne, ha a file nevéből venné a nevét?) -# -# TODO: ellenőrizni kell még, hogy van-e openssl és aespipe -# - -OPT_SPEC="hf:d::" -LONG_OPT_SPEC="help,file:,backup-file:,dir:,backup-dir::" -PARSED_OPTIONS=$(getopt -n "$0" -a -o $OPT_SPEC --long $LONG_OPT_SPEC -- "$@") -OPTIONS_RET=$? -eval set -- "$PARSED_OPTIONS" - -help_usage() { -cat <<EOF - -Crypt-backup használata: mayor crypt-backup [opciók] - -A parancs segítségével titkosíthatjuk meglévő mentési állományunkat. Az így kapott -állomány akár nyilvános tárhelyen is tárolható, kibontásához az intézmény privát -kulcsa szükséges. -A script alapértelmezetten az aktuális dátum alapján elnevezett mentési állományt -keres: "YYYYmmdd.tgz" alakban (pl. $DATE.tgz), ebből készít "YYYYmmdd-crypt.tgz" -nevű állományt (pl. ${DATE}-crypt.tgz). - -A mentési könyvtár, a szükséges jelszavak és egyéb mentési paraméterek beállításait a -/etc/mayor/main.conf állományban kell megadni. - -Opciók: - -h, --help: A parancs leírása (amit most olvasol...) - -f, --file, --backup-file: A mentési állomány neve - -d, --dir, --backup-dir: A mentési könyvtár elérési útja - -EOF -} - -#if [ $OPTIONS_RET -ne 0 ] || [ $# -le 1 ]; then help_usage; exit; fi -if [ $OPTIONS_RET -ne 0 ]; then help_usage; exit; fi - -BACKUPFILE="$DATE" -while [ $# -ge 1 ]; do - case $1 in - --help | -h ) help_usage - exit - ;; - - --backup-file | --file | -f ) shift - BACKUPFILE="$1" - echo "Backup fájl: $BACKUPFILE" - ;; - - --backup-dir | --dir | -d ) shift - BACKUPDIR="$1" - echo "Backup könyvtár: $BACKUPDIR" - ;; - - -- ) shift - break - ;; - - * ) echo "HIBA: ismeretlen opció: $1" # ide elvileg sose jutunk, mert a getopts már kiszűrte a hibás paraméterek - exit - ;; - esac - shift -done - -############################ - -# mysql bináris ellenőrzése -if [ ! -f $MYSQL ]; then - echo -e "\n\nERROR: A mysql kliens nem található: $MYSQL\n" - exit 1 -fi - -# Login adatbázis eléréséhez szükséges paraméterek lekérdezése a konfig-ból... -DB=`grep db $BASEDIR/config/main-config.php | sed -e "s/$.*=\ *['|\"]//g" -e "s/['|\"];//g"` -USER=`grep user $BASEDIR/config/main-config.php | sed -e "s/$.*=\ *['|\"]//g" -e "s/['|\"];//g"` -PW=`grep pw $BASEDIR/config/main-config.php | sed -e "s/$.*=\ *['|\"]//g" -e "s/['|\"];//g"` - -# Ellenőrizzük, hogy van-e publikus kulcs - regisztrált intézmény-e -COUNT=`$MYSQL -e 'SELECT count(publicKey) FROM mayorSsl' -p$PW -u$USER $DB | grep -i -v count` -if [ "$COUNT" -ne "1" ]; then - echo "Publikus kulcsok száma: $COUNT" - echo "Nem regisztrált intézmény? A mentés titkosítása csak regisztrált intézmények számára érhető el!" - exit 2 -fi - -# Backup könyvtár létrehozása -if [ ! -e $BACKUPDIR ]; then - mkdir $BACKUPDIR > /dev/null 2>&1 - if [ $? -ne 0 ]; then - echo "Nem sikerült a ${BACKUPDIR} könyvtárat létrehozni!" - echo "MaYoR Backup failure!" - exit 3 - fi -fi -CRYPTDIR=$BACKUPDIR/$DATE -if [ ! -e $CRYPTDIR ]; then - mkdir $CRYPTDIR -fi -chown $WEB_SERVER_USER $BACKUPDIR -chmod 700 $BACKUPDIR - -if [ ! -f $BACKUPFILE ]; then - # Próbáljuk meg a mai dátum szerinti backup-ot (alapértelmezés) - echo -e " HIBA: Hiányzik a kódolandó mentési állomámny: (${BACKUPFILE})\n" - BACKUPFILE=$BACKUPDIR/${BACKUPFILE} - echo "Próbáljuk a mentéi könyvtáron belül: ${BACKUPFILE}" - if [ ! -f $BACKUPFILE ]; then - echo -e " HIBA: Hiányzik a kódolandó mentési állomámny: (${BACKUPFILE})\n" - BACKUPFILE=$BACKUPDIR/${PREFIX}${DATE}.tgz - echo "Próbáljuk az alapértelmezett állománynevet: ${BACKUPFILE}" - if [ ! -e $BACKUPFILE ]; then - echo -e " HIBA: Hiányzik a kódolandó mentési állomámny: (${BACKUPFILE})\n" - exit 3 - fi - fi -fi -BASENAME=`basename $BACKUPFILE` - -# Publikus kulcs lekérdezése -echo 'SELECT publicKey FROM mayorSsl' | $MYSQL -p$PW -u$USER $DB | grep -v publicKey | sed -e 's/\\n/\n/g' > $CRYPTDIR/id_rsa.pub - -# Véletlen kulcs generálás a szimmetrikus AES kódoláshoz -pwgen -nc 50 1 > $CRYPTDIR/key.txt - -# AES kódolás -aespipe -P $CRYPTDIR/key.txt -e aes256 < $BACKUPFILE > $CRYPTDIR/$BASENAME.aes - -# A kulcsok RSA kódolása a publikus kulccsal -openssl rsautl -encrypt -inkey $CRYPTDIR/id_rsa.pub -pubin -in $CRYPTDIR/key.txt -out $CRYPTDIR/key.rsa - -# Kulcsok törlése -rm $CRYPTDIR/id_rsa.pub -rm $CRYPTDIR/key.txt - -cd $BACKUPDIR -tar cfz ${DATE}-crypt.tgz ${DATE} -rm -rf $DATE - -echo -e "\nBecsomagolva: $BACKUPDIR/${DATE}-crypt.tgz\n\n" diff --git a/mayor-orig/bin/decrypt-backup.sh b/mayor-orig/bin/decrypt-backup.sh deleted file mode 100644 index 9eca4375..00000000 --- a/mayor-orig/bin/decrypt-backup.sh +++ /dev/null @@ -1,138 +0,0 @@ -#!/bin/bash -# -# Example: mayor decrypt-backup --crypted-file=/home/backup/20110515-crypt.tgz -# Az eredmény a $BACKUPDIR alá kerül az eredetileg elkódolt állomány nevéből -# származtatott néven: file.kit --> file-decrypt.kit -# -# TODO: ellenőrizni kell még az openssl és az aespipe meglétét -# - -OPT_SPEC="hf:d::" -LONG_OPT_SPEC="help,file:,crypted-file:,dir:,backup-dir::" -PARSED_OPTIONS=$(getopt -n "$0" -a -o $OPT_SPEC --long $LONG_OPT_SPEC -- "$@") -OPTIONS_RET=$? -eval set -- "$PARSED_OPTIONS" - -help_usage() { -cat <<EOF - -Decrypt-backup használata: mayor decrypt-backup [opciók] - -A parancs segítségével a korábban titkosított (ld. mayor help crypt-backup) mentést -csomagolhatjuk ki. A kicsomagoláshoz szükséges az intézmény privát kulcsa, amit a -program alapesetben az adatbázisban keres. Ha nincs más megadva, akkor a szkript -"YYYYmmdd-crypt.tgz" néven keresi a kicsomagolandó állományt (pl. ${DATE}-crypt.tgz) - -A mentési könyvtár, a szükséges jelszavak és egyéb paraméterek beállításait a -/etc/mayor/main.conf állományban kell megadni. - -Opciók: - -h, --help: A parancs leírása (amit most olvasol...) - -f, --file, --crypted-file: A kódolt állomány neve - -d, --dir, --backup-dir: A mentési könyvtár elérési útja - -EOF -} - -if [ $OPTIONS_RET -ne 0 ]; then help_usage; exit; fi - -FILE="${DATE}-crypt.tgz" -while [ $# -ge 1 ]; do - case $1 in - --help | -h ) help_usage - exit - ;; - - --crypted-file | --file | -f ) shift - FILE="$1" - echo "Kódolt állomány: $FILE" - ;; - - --backup-dir | --dir | -d ) shift - BACKUPDIR="$1" - echo "Backup könyvtár: $BACKUPDIR" - ;; - - -- ) shift - break - ;; - - * ) echo "HIBA: ismeretlen opció: $1" # ide elvileg sose jutunk, mert a getopts már kiszűrte a hibás paraméterek - exit - ;; - esac - shift -done - - - - -# A mysql bináris ellenőrzése -if [ ! -f $MYSQL ]; then - echo -e "\n\nERROR: A mysql kliens nem található: $MYSQL\n" - exit 1 -fi - -# A login adatbázis eléréséhez szükséges adatok a konfig-ból -DB=`grep db $BASEDIR/config/main-config.php | sed -e "s/$.*=\ *['|\"]//g" -e "s/['|\"];//g"` -USER=`grep user $BASEDIR/config/main-config.php | sed -e "s/$.*=\ *['|\"]//g" -e "s/['|\"];//g"` -PW=`grep pw $BASEDIR/config/main-config.php | sed -e "s/$.*=\ *['|\"]//g" -e "s/['|\"];//g"` - -# Ellenőrizzük, hogy van-e privát kulcs - regisztrált intézmény-e -COUNT=`$MYSQL -e 'SELECT count(privateKey) FROM mayorSsl' -p$PW -u$USER $DB | grep -i -v count` -if [ "$COUNT" -ne "1" ]; then - echo "Privát kulcsok száma: $COUNT" - echo "Nem regisztrált intézmény? A titkosított mentések kezelése csak regisztrált intézmények számára érhető el!" - exit 2 -fi - -# Backup könyvtár létrehozása -if [ ! -e $BACKUPDIR ]; then - mkdir $BACKUPDIR > /dev/null 2>&1 - if [ $? -ne 0 ]; then - echo "Nem sikerült a ${BACKUPDIR} könyvtárat létrehozni!" - echo "MaYoR Backup failure!" - exit 3 - fi -fi -chown $WEB_SERVER_USER $BACKUPDIR -chmod 700 $BACKUPDIR - -# bejövő paraméterek feldolgozása (crypted-file) -if [ ! -f $FILE ]; then - echo -e " HIBA: Hiányzik a dekódolandó mentési állomámny: ${FILE}\n" - FILE=$BACKUPDIR/${FILE} - echo "Próbáljuk a mentési könyvtárban (${FILE})" - if [ ! -f $FILE ]; then - echo -e " HIBA: Hiányzik a dekódolandó mentési állomámny: ${FILE}\n" - FILE=$BACKUPDIR/${PREFIX}${DATE}-crypt.tgz - echo "Próbáljuk az alapértelmezett állományt (${FILE})" - if [ ! -e $FILE ]; then - echo " HIBA: Hiányzik a dekódolandó mentési állomámny: ${FILE}" - exit 4 - fi - fi -fi -BASENAME=`basename $FILE` - -cd $BACKUPDIR -tar xfz $FILE -TARFILES=`tar tf $FILE` -SUBDIR=`for f in $TARFILES; do echo $f; break; done` -AESFILE=`echo $TARFILES | sed -e 's/ /\n/g' | grep '.aes'` -AESBASE=`basename $AESFILE | sed -e 's/.aes//g'` -DECRYPTFILE=`echo $AESBASE | sed -e 's/\.\([a-z]*\)$/-decrypt\.\1/'` - -# A privát kulcs lekérdezése -echo 'SELECT privateKey FROM mayorSsl' | $MYSQL -p$PW -u$USER $DB | grep -v privateKey | sed -e 's/\\n/\n/g' > $BACKUPDIR/$SUBDIR/id_rsa - -# AES kulcs dekódolása -openssl rsautl -decrypt -inkey $BACKUPDIR/$SUBDIR/id_rsa -in $BACKUPDIR/$SUBDIR/key.rsa -out $BACKUPDIR/$SUBDIR/key.txt - -# AES dekódolás (feltételezzük, hogy az eredmény tgz -aespipe -P $BACKUPDIR/$SUBDIR/key.txt -d -e aes256 < $BACKUPDIR/$AESFILE > $BACKUPDIR/$DECRYPTFILE - -# Törlés -rm -rf $BACKUPDIR/$SUBDIR - -echo -e "\nKicsomagolva: $BACKUPDIR/$DECRYPTFILE\n\n" diff --git a/mayor-orig/bin/etc/cron.daily/mayor b/mayor-orig/bin/etc/cron.daily/mayor deleted file mode 100755 index 815cc023..00000000 --- a/mayor-orig/bin/etc/cron.daily/mayor +++ /dev/null @@ -1,13 +0,0 @@ -#!/bin/bash - -# A helyes környezet beállítása (svn alapú frissítés esetén az ékezetes file-nevekhez) -export LANG=hu_HU.UTF-8 - -# Napló napi mentése -/usr/local/sbin/mayor backup - -# Heti frissítés -if [ `date +'%w'` == 0 ]; then - /usr/local/sbin/mayor update -fi - diff --git a/mayor-orig/bin/help.sh b/mayor-orig/bin/help.sh deleted file mode 100644 index e983ccd3..00000000 --- a/mayor-orig/bin/help.sh +++ /dev/null @@ -1,47 +0,0 @@ -#!/bin/bash - -OPT_SPEC="hf::" -LONG_OPT_SPEC="help,file:,f::" -PARSED_OPTIONS=$(getopt -n "$0" -a -o $OPT_SPEC --long $LONG_OPT_SPEC -- "$@") -OPTIONS_RET=$? -eval set -- "$PARSED_OPTIONS" - -help_usage() { - print_help; - echo -e "\nHELP használata: mayor help [parancs]\n\n" -} - -if [ $OPTIONS_RET -ne 0 ] || [ $# -le 1 ]; then help_usage; exit; fi - -while [ $# -ge 1 ]; do - case $1 in - --help | -h ) help_usage - exit - ;; - - --file | -f ) shift - FILE="$1" - echo "FILE: $FILE" - ;; - - -- ) shift - break - ;; - - * ) echo "HIBA: ismeretlen opció: $1" # ide elvileg sose jutunk, mert a getopts már kiszűrte a hibás paramétereket... - exit - ;; - esac - shift -done - -while [ $# -ge 1 ]; do - echo -e "\n---------- HELP: $1 ----------\n" - if [[ ! "${CMDS[*]}" =~ .*$1.* ]]; then - echo -e "Ismeretlen parancs: $1" - #print_help - else - . ./$1.sh --help - fi - shift -done diff --git a/mayor-orig/bin/lock.sh b/mayor-orig/bin/lock.sh deleted file mode 100644 index 77c4422a..00000000 --- a/mayor-orig/bin/lock.sh +++ /dev/null @@ -1,46 +0,0 @@ -#!/bin/bash - -help_usage() { -cat <<EOF - -LOCK használata: mayor lock [options] - -A parancs segítségével zárolhatjuk a MaYoR rendszert, ilyenkor a webes elérés le van tiltva. -Hasznos lehet különböző Rendszergazdai műveletek elvégzésekor. - - --help: ^Ez a help szöveg. - -AUTHOR: Miklós Gergő <gergo@bmrg.hu> - Baár-Madas Református Gimnázium - -EOF -} - -if [ $? -ne 0 ]; then help_usage; exit; fi - -while [ $# -ge 1 ]; do - case $1 in - --help | -h ) help_usage - exit - ;; - - -- ) shift - break - ;; - - * ) echo "HIBA: ismeretlen opció: $1" - exit - ;; - esac - shift -done - -if [ "x$LOCKFILE" == "x" ]; then echo -e "Üres a LOCKFILE változó :("; exit 1; fi - -if [ ! -z $LOCKFILE ]; then - if [ $VERBOSE -gt 0 ]; then echo -e "* A web-es elérés letiltása:"; fi - if [ $VERBOSE -gt 1 ]; then echo -e "- Lock-file létrehozása... "; fi - - echo "$DATE: Rendszergazda dolgozik" > $LOCKFILE - if [ $VERBOSE -gt 0 ]; then echo -e "kész.\n"; fi -fi - diff --git a/mayor-orig/bin/mayor b/mayor-orig/bin/mayor deleted file mode 100644 index 7c5906bc..00000000 --- a/mayor-orig/bin/mayor +++ /dev/null @@ -1,66 +0,0 @@ -#!/bin/bash - -VERSION="2.0.1" -echo -e "\nmayor szkript - verzió: $VERSION (" $(date '+%Y-%m-%d') ")\n" - -CMDS=(backup update lock unlock crypt-backup decrypt-backup remote-backup restore help) -MODS=(mayor-base mayor-portal mayor-naplo mayor-naplo-sni mayor-wiki mayor-felveteli mayor-installer mayor-installer-sulix mayor-jatek mayor-locales-de_DE mayor-locales-en_US mayor-local-jp_JP) -DESC=('a rendszer mentése' 'a rendszer frissítése' 'a rendszer zárolása (lockfile)' 'a rendszer feloldása' 'a mentés titkosítása (ß)' 'a titkosított mentés visszakódolása (ß)' 'mentés a központi (távoli) szerverre' 'mentés visszatöltése' 'A parancs működésének leírása') -#OPTS=('--skip-lock') -#OPTDESC=('a rendszer zárolásának kihagyása') -DATE=$(date "+%Y%m%d") -DATETIME=$(date "+%Y-%m-%d %H:%M:%S") - -print_help() { - echo -e "\nHasználat: mayor [parancs] [opciók]\n\nParancs" - for ((i=0; i<${#CMDS[@]}; i=i+1)); do - echo " - ${CMDS[$i]}: ${DESC[$i]}" - done -# echo -e "\nOpciók" -# for ((i=0; i<${#OPTS[@]}; i=i+1)); do -# echo " ${OPTS[$i]}: ${OPTDESC[$i]}" -# done - echo "" -} - -# Ellenőrizzük, hogy van-e configurációs állomány -if [ -f /etc/mayor/main.conf ]; then - . /etc/mayor/main.conf -else - echo -e "\nHIBA: hiányzó konfigurációs file: /etc/mayor/main.conf\n" - exit 1 -fi - -# Ha nincs paraméter, akkor írjuk ki a tennivalót -if [ -z $1 ]; then - print_help - exit 1 -fi - -# A paraméter ellenőrzése -for ((i=0; i<${#CMDS[@]}; i=i+1)); do - if [ ${CMDS[$i]} == "$1" ]; then - CMD=${CMDS[$i]} - break - fi -done - -if [ -z $CMD ]; then - echo -e "\nHIBA: ismeretlen parancs: $1\n" - print_help - exit 1 -fi - -# Alapértelmezés -if [ "$MYSQL_HOST" == "" ]; then - MYSQL_HOST="localhost" -fi - -shift -# A parancs végrehajtása -cd $BASEDIR/bin -if [ -z $UPDATELOG ]; then - . ./$CMD.sh -else - . ./$CMD.sh 2>&1 | tee -a $UPDATELOG -fi diff --git a/mayor-orig/bin/remote-backup.sh b/mayor-orig/bin/remote-backup.sh deleted file mode 100644 index 71e241d5..00000000 --- a/mayor-orig/bin/remote-backup.sh +++ /dev/null @@ -1,170 +0,0 @@ -#!/bin/bash -# -# Example: mayor remote-backup --backup-file=/tmp/wiki.tgz -# Az eredmény a $BACKUPDIR/$DATE-crypt.tgz állományba kerül -# (Vagy jobb lenne, ha a file nevéből venné a nevét?) -# -# TODO: ellenőrizni kell még, hogy van-e openssl és aespipe -# - -OPT_SPEC="hf:d::" -LONG_OPT_SPEC="help,file:,backup-file:,dir:,backup-dir::" -PARSED_OPTIONS=$(getopt -n "$0" -a -o $OPT_SPEC --long $LONG_OPT_SPEC -- "$@") -OPTIONS_RET=$? -eval set -- "$PARSED_OPTIONS" - -help_usage() { -cat <<EOF - -Remote-backup használata: mayor remote-backup [opciók] - -A parancs segítségével menthetjük egy központi szerverre a MaYoR rendszer adatbázisait, -aktuális forrását és beállításait titkosított formában. A távoli szerverre való bejele- -lentkezéshez szükséges az intézmény privát kulcsa, amit a program alapesetben az adat- -bázisban keres. -A szkript, ha nincs más megadva, akkor az aktuális dátumnak megelelő, -"YYYYmmdd-crypt.tgz" alkú néven keresi a feltöltendő mentési állományt. - -A mentési könyvtár, a szükséges jelszavak és egyéb mentési paraméterek beállításait a -/etc/mayor/main.conf állományban kell megadni. - -Opciók: - -h, --help: A parancs leírása (amit most olvasol...) - -f, --file, --backup-file: A mentési állomány neve - -d, --dir, --backup-dir: A mentési könyvtár elérési útja - -EOF -} - -if [ $OPTIONS_RET -ne 0 ]; then help_usage; exit; fi - -FILE="${DATE}-crypt.tgz" -while [ $# -ge 1 ]; do - case $1 in - --help | -h ) help_usage - exit - ;; - - --backup-file | --file | -f ) shift - FILE="$1" - echo "Backup fájl: $FILE" - ;; - - --backup-dir | --dir | -d ) shift - BACKUPDIR="$1" - echo "Backup könyvtár: $BACKUPDIR" - ;; - - -- ) shift - break - ;; - - * ) echo "HIBA: ismeretlen opció: $1" # ide elvileg sose jutunk, mert a getopts már kiszűrte a hibás paraméterek - exit - ;; - esac - shift -done - - - -SSH_PORT="8023" -SSH_HOST="backup.mayor.hu" - -# mysql bináris ellenőrzése -if [ ! -f $MYSQL ]; then - echo -e "\n\nERROR: A mysql kliens nem található: $MYSQL\n" - exit 1 -fi - -# Login adatbázis eléréséhez szükséges paraméterek lekérdezése a konfig-ból... -DB=`grep db $BASEDIR/config/main-config.php | sed -e "s/$.*=\ *['|\"]//g" -e "s/['|\"];//g"` -USER=`grep user $BASEDIR/config/main-config.php | sed -e "s/$.*=\ *['|\"]//g" -e "s/['|\"];//g" | sed 's/^ *//g'` -PW=`grep pw $BASEDIR/config/main-config.php | sed -e "s/$.*=\ *['|\"]//g" -e "s/['|\"];//g" | sed 's/^ *//g'` - -# Ellenőrizzük, hogy van-e publikus kulcs - regisztrált intézmény-e -COUNT=`$MYSQL -e 'SELECT count(publicKey) FROM mayorSsl' -p$PW -u$USER $DB | grep -i -v count` -if [ "$COUNT" -ne "1" ]; then - echo "Publikus kulcsok száma: $COUNT" - echo "Nem regisztrált intézmény? A mentés titkosítása csak regisztrált intézmények számára érhető el!" - exit 2 -fi - -# Backup könyvtár létrehozása -if [ ! -e $BACKUPDIR ]; then - mkdir $BACKUPDIR > /dev/null 2>&1 - if [ $? -ne 0 ]; then - echo "Nem sikerült a ${BACKUPDIR} könyvtárat létrehozni!" - echo "MaYoR Backup failure!" - exit 3 - fi -fi -CRYPTDIR=$BACKUPDIR/$DATE -if [ ! -e $CRYPTDIR ]; then - mkdir $CRYPTDIR -fi -chown $WEB_SERVER_USER $BACKUPDIR -chmod 700 $BACKUPDIR - -if [ ! -f $FILE ]; then - echo -e " HIBA: Hiányzik a kódolandó mentési állomámny: ${FILE}" - FILE=$BACKUPDIR/${FILE} - echo "Próbáljuk a mentési könyvtárban! (${FILE})" - if [ ! -f $FILE ]; then - echo -e " HIBA: Hiányzik a kódolandó mentési állomámny: ${FILE}" - FILE=$BACKUPDIR/${PREFIX}${DATE}.tgz - echo "Próbáljuk az alapértelmezett állományt! (${FILE})" - if [ ! -e $FILE ]; then - echo -e " HIBA: Hiányzik a kódolandó mentési állomámny: ${FILE}" - exit 3 - fi - fi -fi -BASENAME=`basename $FILE` - -# Publikus kulcs lekérdezése -echo 'SELECT publicKey FROM mayorSsl' | $MYSQL -p$PW -u$USER $DB | grep -v publicKey | sed -e 's/\\n/\n/g' > $CRYPTDIR/id_rsa.pub - -# Véletlen kulcs generálás a szimmetrikus AES kódoláshoz -pwgen -nc 50 1 > $CRYPTDIR/key.txt - -# AES kódolás -aespipe -P $CRYPTDIR/key.txt -e aes256 < $FILE > $CRYPTDIR/$BASENAME.aes - -# A kulcsok RSA kódolása a publikus kulccsal -openssl rsautl -encrypt -inkey $CRYPTDIR/id_rsa.pub -pubin -in $CRYPTDIR/key.txt -out $CRYPTDIR/key.rsa - -# Kulcsok törlése -rm $CRYPTDIR/id_rsa.pub -rm $CRYPTDIR/key.txt - -cd $BACKUPDIR -tar cfz ${DATE}-crypt.tgz ${DATE} -rm -rf $DATE - -echo -e "\nBecsomagolva: $BACKUPDIR/${DATE}-crypt.tgz\n\n" - -# A privát kulcs lekérdezése, elhelyezése -if [ ! -d $BASEDIR/ssh ]; then - echo "Létrehozzuk a $BASEDIR/ssh könyvtárat, amibe belerakjuk a privát kulcsot..." - mkdir $BASEDIR/ssh - chmod 700 $BASEDIR/ssh -fi -if [ ! -f $BASEDIR/ssh/id_rsa ]; then - echo 'SELECT privateKey FROM mayorSsl' | $MYSQL -p$PW -u$USER $DB | grep -v privateKey | sed -e 's/\\n/\n/g' > $BASEDIR/ssh/id_rsa - chmod 700 $BASEDIR/ssh/id_rsa -fi - -# Az intézmény OM kódjának lekérdezése - -# A mayor_naplo adatbázis eléréséhez szükséges paraméterek lekérdezése a konfig-ból... -DB=`grep db $BASEDIR/config/module-naplo/config.php | sed -e "s/$.*=\ *['|\"]//g" -e "s/['|\"];//g"` -USER=`grep userRead $BASEDIR/config/module-naplo/config.php | sed -e "s/$.*=\ *['|\"]//g" -e "s/['|\"];//g" | sed 's/^ *//g'` -PW=`grep pwRead $BASEDIR/config/module-naplo/config.php | sed -e "s/$.*=\ *['|\"]//g" -e "s/['|\"];//g" | sed 's/^ *//g'` - -OMKOD=`echo 'SELECT SUBSTR(OMKod,-6) FROM intezmeny WHERE alapertelmezett = 1' | $MYSQL -p$PW -u$USER $DB | grep -v OMKod` -SSH_USER="om$OMKOD" -echo $SSH_USER - -# A kódolt adatállomány másolása -scp -i $BASEDIR/ssh/id_rsa -P $SSH_PORT $BACKUPDIR/${DATE}-crypt.tgz $SSH_USER@$SSH_HOST:/home/$SSH_USER/ diff --git a/mayor-orig/bin/restore.sh b/mayor-orig/bin/restore.sh deleted file mode 100644 index 8283effa..00000000 --- a/mayor-orig/bin/restore.sh +++ /dev/null @@ -1,257 +0,0 @@ -#!/bin/bash - -OPT_SPEC="hkprf:d:t::" -LONG_OPT_SPEC="help,keep-old-passwords,restore-parent,restore-private,tmp-dir:,file:,backup-file:,dir:,base-dir::" -PARSED_OPTIONS=$(getopt -n "$0" -a -o $OPT_SPEC --long $LONG_OPT_SPEC -- "$@") -OPTIONS_RET=$? -eval set -- "$PARSED_OPTIONS" - -help_usage() { -cat <<EOF - -Restore használata: mayor restore [opciók] - -A parancs segítségével korábbi mentésből állíthatjuk helyre a napló adaokat. A helyreállítás előtt -telepíteni kell egy új, lehetőleg a mentettel megegyező, vagy újabb verziójú rendszert, amibe a régi -adatokat betöltjük. -A mentést alapértelmezetten az aktuális dátum alapján keresi, "YYYYmmdd.tgz" alakban (pl. $DATE.tgz). - -Amennyiben a paraméterként megadott alapkönyvtárban léteznek a configurációs állományok, úgy a program -ezeket használja, különben a mentésből állítja őket helyre. A jelszavak alapértelmezetten mindig az -új telepítés szerintiek maradnak. - -Opciók: - -h, --help: A parancs leírása (amit most olvasol...) - -f, --file, --backup-file: A visszatöltendő mentési állomány neve - -d, --dir, --base-dir: Az alapkönyvtár elérési útja - -t, --tmp-dir: Az ideiglenes könyvtár - -k, --keep-old-passwords: A mentett adatbázis-jelszavak megtartása akkor is, ha léteznek újak - -p, --restore-parent: A szülők felhasználói azonosítóinak helyreállítása - -r, --restore-private: A tanár/diák felhasználói azonosítóinak helyreállítása (csak MySQL-ből!) - -EOF -} - -cleartmp() { - echo -e -n "\n\nAz ideiglenes könyvátrat töröljük: ${RTMPDIR}/restore/${DT}..." - rm -rf ${RTMPDIR}/restore/${DT} - echo "ok" -} - -#if [ $OPTIONS_RET -ne 0 ] || [ $# -le 1 ]; then help_usage; exit; fi -if [ $OPTIONS_RET -ne 0 ]; then help_usage; exit; fi - -# Alapéretelmezett értékek: -RBACKUPFILE="${DATE}.tgz" -RBASEDIR="/var/mayor" -KEEP_OLD_PASSWORDS=0 - -while [ $# -ge 1 ]; do - case $1 in - --help | -h ) help_usage - exit - ;; - - --keep-old-passwords | -k ) KEEP_OLD_PASSWORDS=1 - echo "A mentett adatbázis-jelszavak használata..." - ;; - - --restore-parent | -p ) RESTORE_PARENT=1 - echo "Szülői azonosítók betöltése..." - ;; - - --restore-private | -r ) RESTORE_PRIVATE=1 - echo "Tanár/diák azonosítók betöltése..." - ;; - - --backup-file | --file | -f ) shift - RBACKUPFILE="$1" - echo "Backup fájl: $RBACKUPFILE" - ;; - - --base-dir | --dir | -d ) shift - RBASEDIR="$1" - echo "Alapkönyvtár: $RBASEDIR" - ;; - - --tmp-dir | -t ) shift - RTMPDIR="$1" - echo "Ideiglenes könyvtár: $RTMPDIR" - ;; - - -- ) shift - break - ;; - - * ) echo "HIBA: ismeretlen opció: $1" # ide elvileg sose jutunk, mert a getopts már kiszűrte a hibás paramétereket... - exit - ;; - esac - shift -done - -## -# A könyvtárak létrehozása -## - -RREVISIONFILE="${RBASEDIR}/log/revision" -declare -i INST_REV -if [ ! -e "${RREVISIONFILE}" ]; then - echo "Hiba: A megadott alapkönyvtárban (${RBASEDIR}) nem található telepített MaYoR rendszer!" - echo -e " A helyreállításhoz először telepíteni kell egy azonos, vagy újabb verziójú rendszert.\n" - exit 1 -fi -INST_REV=`cat $RREVISIONFILE` -echo "A telepített rendszer revision száma: ${INST_REV}" - -if [ ! -e "${RBACKUPFILE}" ]; then - echo "Hiba: A backup állomány nem található (${RBACKUPFILE})" - echo -e " A backup állományt teljes elérési úttal kell megadni!\n" - exit 2 -fi - -[ -z "${RTMPDIR:-}" ] && RTMPDIR="/tmp" -if [ ! -e "${RTMPDIR}" ]; then - echo "Az ideiglenes könyvtár (${RTMPDIR}) nem létezik." - echo -n "Létrehozás ... " - if mkdir -p "${RTMPDIR}" 2>/dev/null; then - echo "ok." - else - echo "hiba." - exit 3 - fi -fi - -if [ ! -d "${RTMPDIR}/restore" ]; then - if ! mkdir "${RTMPDIR}/restore" 2>/dev/null; then - echo "Hiba: Az ideiglenes könyvtár nem írható (${RTMPDIR})!" - exit 4 - fi -fi -chmod 700 "${RTMPDIR}/restore" -cd "${RTMPDIR}/restore" -tar xvfz $RBACKUPFILE -DT=$(ls) -echo "A mentés dátuma: ${DT}" -cd ${DT} - -RREVISIONFILE="${RTMPDIR}/restore/${DT}/log/revision" -declare -i BAK_REV -if [ ! -e "${RREVISIONFILE}" ]; then - echo "Hiba: A mentési állomány nem tartalmaz verzió információt!" - echo -e " A mentési állományon belül, a ${DT}/log/revision állományba írja be a revision számot (pl: 2512)!\n" - cleartmp - exit 5 -fi -BAK_REV=`cat $RREVISIONFILE` -echo "A mentett rendszer revision száma: ${BAK_REV}" - -if [ ${BAK_REV} -gt ${INST_REV} ]; then - echo "Hiba: A mentett rendszer újabb, mint a telepített!" - echo -e " A telepített rendszer revision száma nagyobb vagy egyenlő kell legyen a mentett rendszer revision számánál!\n Telepítsen frissíebb rendszert!\n" - cleartmp - exit 6 -fi - -# A telepített rendszer beállításainsak betöltése -if [ -f "${RBASEDIR}/config/main.conf" ]; then - . "${RBASEDIR}/config/main.conf" -else - echo "Hiba: A telepített rendszer nincs beállítva!" - echo -e " Hiányzik a konfigurációs állomány: ${RBASEDIR}/config/main.conf\n" - cleartmp - exit 7 -fi - -# Az adatbázisok betöltése -NAPLOUSER=`egrep 'userWrite.*=' $BASEDIR/config/module-naplo/config.php | sed -e "s/^.*=\ *['|\"]//g" -e "s/['|\"];//g"` -NAPLOUSERREAD=`egrep 'userRead.*=' $BASEDIR/config/module-naplo/config.php | sed -e "s/^.*=\ *['|\"]//g" -e "s/['|\"];//g"` -DBS=`$MYSQL -h$MYSQL_HOST -u $MYSQL_USER -p$MYSQL_PW -e"SHOW DATABASES"` -if [ "$RESTORE_PARENT" == "1" ]; then - FILES="mayor_naplo.sql mayor_parent.sql intezmeny_*.sql naplo_*.sql" -else - FILES="mayor_naplo.sql intezmeny_*.sql naplo_*.sql" -fi -if [ "$RESTORE_PRIVATE" == "1" ]; then - FILES="$FILES mayor_private.sql" -fi -for SQLFILE in $FILES; do - if [ -e "${SQLFILE}" ]; then - DB=${SQLFILE%.sql} - echo -n "${DB} ... " - if [[ ! ${DBS} =~ .*$DB.* ]]; then - echo -n "... " - (cat <<EOF - create database ${DB} character set utf8 collate utf8_hungarian_ci; - grant select,execute on ${DB}.* to '$NAPLOUSERREAD'@'localhost'; - grant all on ${DB}.* to '$NAPLOUSER'@'localhost'; -EOF -) | $MYSQL -h$MYSQL_HOST -u $MYSQL_USER -p$MYSQL_PW - fi - echo -n '... ' - cat ${SQLFILE} | mysql -p${MYSQL_PW} --user=${MYSQL_USER} --default-character-set=utf8 ${DB} - echo ok - fi -done - -# A mentésben szereplő user és jelszó adatok -bNCDIR="${RTMPDIR}/restore/${DT}/config/module-naplo" -iNCDIR="${BASEDIR}/config/module-naplo" -cd ${bNCDIR} -bDB=`grep db ${bNCDIR}/config.php | egrep -v '^[[:space:]]*(//|/\*.*\*/$)' | grep naplo_base | sed -e "s/^.*=\ *['|\"]//g" -e "s/['|\"];//g"` -bUSER=`egrep 'userWrite.*=' ${bNCDIR}/config.php | egrep -v '^[[:space:]]*(//|/\*.*\*/$)' | sed -e "s/^.*=\ *['|\"]//g" -e "s/['|\"];//g"` -bUSERREAD=`egrep 'userRead.*=' ${bNCDIR}/config.php | egrep -v '^[[:space:]]*(//|/\*.*\*/$)' | sed -e "s/^.*=\ *['|\"]//g" -e "s/['|\"];//g"` -bPW=`egrep 'pwWrite.*=' ${bNCDIR}/config.php | egrep -v '^[[:space:]]*(//|/\*.*\*/$)' | sed -e "s/^.*=\ *['|\"]//g" -e "s/['|\"];//g"` -bPWREAD=`egrep 'pwRead.*=' ${bNCDIR}/config.php | egrep -v '^[[:space:]]*(//|/\*.*\*/$)' | sed -e "s/^.*=\ *['|\"]//g" -e "s/['|\"];//g"` -#echo "mentett: $bDB : $bUSER : $bUSERREAD : $bPW : $bPWREAD" -# Az új telepítés user és jelszó adatai -if [ -e "${iNCDIR}/config.php" ] && [ "${KEEP_OLD_PASSWORDS}" != "1" ]; then - iDB=`grep db ${iNCDIR}/config.php | egrep -v '^[[:space:]]*(//|/\*.*\*/$)' | grep naplo_base | sed -e "s/^.*=\ *['|\"]//g" -e "s/['|\"];//g"` - iUSER=`egrep 'userWrite.*=' ${iNCDIR}/config.php | egrep -v '^[[:space:]]*(//|/\*.*\*/$)' | sed -e "s/^.*=\ *['|\"]//g" -e "s/['|\"];//g"` - iUSERREAD=`egrep 'userRead.*=' ${iNCDIR}/config.php | egrep -v '^[[:space:]]*(//|/\*.*\*/$)' | sed -e "s/^.*=\ *['|\"]//g" -e "s/['|\"];//g"` - iPW=`egrep 'pwWrite.*=' ${iNCDIR}/config.php | egrep -v '^[[:space:]]*(//|/\*.*\*/$)' | sed -e "s/^.*=\ *['|\"]//g" -e "s/['|\"];//g"` - iPWREAD=`egrep 'pwRead.*=' ${iNCDIR}/config.php | egrep -v '^[[:space:]]*(//|/\*.*\*/$)' | sed -e "s/^.*=\ *['|\"]//g" -e "s/['|\"];//g"` -else - iDB=$bDB - iUSER=$bUSER - iUSERREAD=$bUSERREAD - iPW=$bPW - iPWREAD=$bPWREAD -fi -#echo "installált: $iDB : $iUSER : $iUSERREAD : $iPW : $iPWREAD" -if [ -e "${iNCDIR}/config.php" ]; then - if [ ! -e "${iNCDIR}/config.php.backup" ]; then - echo "${iNCDIR}/config.php --> ${iNCDIR}/config.php.backup" - mv "${iNCDIR}/config.php" "${iNCDIR}/config.php.backup" - fi -fi - -cat "${bNCDIR}/config.php" | sed \ - -e "s/db\(.*\)$bDB\(.*\)/db\1$iDB\2/g" \ - -e "s/userWrite\(.*\)$bUSER\(.*\)/userWrite\1$iUSER\2/g" \ - -e "s/userRead\(.*\)$bUSERREAD\(.*\)/userRead\1$iUSERREAD\2/g" \ - -e "s/$bPW/$iPW/g" -e "s/$bPWREAD/$iPWREAD/g" > "${iNCDIR}/config.php" - -for FILE in config-*.php; do - echo -n "$FILE ... " - # mentés - if [ -e "${iNCDIR}/$FILE" ]; then - if [ ! -e "${iNCDIR}/$FILE.backup" ]; then - echo -n "... " - mv "${iNCDIR}/$FILE" "${iNCDIR}/$FILE.backup" - fi - fi - cp $FILE "${iNCDIR}/$FILE" - echo ok -done - -cd ${BASEDIR}/bin -if [ -z $UPDATELOG ]; then - . update.sh -e -r$BAK_REV -b${BASEDIR} -else - . update.sh -e -r$BAK_REV -b${BASEDIR} 2>&1 | tee -a $UPDATELOG -fi - -# Az ideiglenes könyvtár törlése -cleartmp - diff --git a/mayor-orig/bin/sbin/eNaploBackup.sh b/mayor-orig/bin/sbin/eNaploBackup.sh deleted file mode 100755 index 5bdba177..00000000 --- a/mayor-orig/bin/sbin/eNaploBackup.sh +++ /dev/null @@ -1,95 +0,0 @@ -#!/bin/sh -## -# Az elektronikus mentése (Version 1.0) -## - - DATE=`date +%Y%m%d` - NAPLO_BACKUP_BASE_DIR='/backup/naplo' - NAPLO_BACKUP_DIR="$NAPLO_BACKUP_BASE_DIR/$DATE" - - DATABASES='mayor_parent mayor_private mayor_naplo intezmeny_fasori naplo_fasori_2007' - #MYSQL_DB='%MYSQL_NAPLO_DB%' - MYSQL_USER='%MYSQL_NAPLO_USER%' - MYSQL_PW='%MYSQL_NAPLO_PW%' - - WWW_SSL_DIR='%BASEDIR%' - WEB_SERVER_USER='%WEB_SERVER_USER%' - EXPIRE_DATE=`date -d '30 days ago' +%Y%m%d` - - BASEDN='%BASEDN%' - LDAP_CONF_DIR='%LDAP_CONF_DIR%' - LDAP_DB_DIR='%LDAP_DB_DIR%' - -## -# A könyvtárak létrehozása -## - if [ ! -e $NAPLO_BACKUP_BASE_DIR ]; then - /bin/mkdir $NAPLO_BACKUP_BASE_DIR - fi - /bin/chown $WEB_SERVER_USER $NAPLO_BACKUP_BASE_DIR - /bin/chmod 700 $NAPLO_BACKUP_BASE_DIR - - if [ -e $NAPLO_BACKUP_DIR.tgz ]; then - exit 1 - fi - /bin/mkdir $NAPLO_BACKUP_DIR - /bin/chown $WEB_SERVER_USER $NAPLO_BACKUP_DIR - /bin/chmod 700 $NAPLO_BACKUP_DIR - -## -# mysql adatbázis mentése -## - -for DATABASE in $DATABASES; do - /usr/bin/mysqldump -p$MYSQL_PW -u$MYSQL_USER $DATABASE >> $NAPLO_BACKUP_DIR/$DATABASE.sql -done - -## -# mysql adatbázis mentése -## - -# /usr/bin/mysqldump -p$MYSQL_PW -u$MYSQL_USER $MYSQL_DB >> $NAPLO_BACKUP_DIR/$MYSQL_DB.sql - -## -# A honlap mentése -## - - mkdir $NAPLO_BACKUP_DIR/html - - /bin/cp -a $WWW_SSL_DIR/* $NAPLO_BACKUP_DIR/html/ - -## -# Az LDAP adatbázis -## - - /etc/init.d/slapd stop - /bin/sleep 1 - - /usr/sbin/slapcat -b $BASEDN -l $NAPLO_BACKUP_DIR/ldap.ldif - - /bin/cp -a $LDAP_DB_DIR $NAPLO_BACKUP_DIR/ldap - - /etc/init.d/slapd start - -## -# LDAP konfig file-ok mentése (schema) -## - - /bin/mkdir $NAPLO_BACKUP_DIR/etc - /bin/cp -a $LDAP_CONF_DIR $NAPLO_BACKUP_DIR/etc/ - -## -# Becsomagolás -## - - cd $NAPLO_BACKUP_BASE_DIR - /bin/tar cfz $DATE.tgz $DATE - /bin/rm -rf $NAPLO_BACKUP_DIR - -## -# Elavult mentés tölése -## - - if [ -e $NAPLO_BACKUP_BASE_DIR/$EXPIRE_DATE.tgz ]; then - rm -rf $NAPLO_BACKUP_BASE_DIR/$EXPIRE_DATE.tgz - fi diff --git a/mayor-orig/bin/sbin/eNaploRestore.sh b/mayor-orig/bin/sbin/eNaploRestore.sh deleted file mode 100755 index f383360f..00000000 --- a/mayor-orig/bin/sbin/eNaploRestore.sh +++ /dev/null @@ -1,82 +0,0 @@ -#!/bin/sh -## -# Az elektronikus visszatöltése (Version 1.0) -## - - NAPLO_BACKUP_BASE_DIR='/backup/naplo' - NAPLO_BACKUP_TMP_DIR="$NAPLO_BACKUP_BASE_DIR/tmp" - - DATABASE='%MYSQL_NAPLO_DB%' - MYSQL_PW='%MYSQL_ROOT_PW%' - MYSQL_USER='root' - - WWW_DIR='%BASEDIR%' - WEB_SERVER_USER='%WEB_SERVER_USER%' - BASEDN='%BASEDN%' - DUMP_FILE="$DATABASE.sql" - LDIF_FILE='ldap.ldif' - LDAP_DB_DIR='%LDAP_DB_DIR%/mayor' - -## -# A paraméter ellenőrzése -## - - if [ -z $1 ]; then - exit 1 - else - if [ -e $NAPLO_BACKUP_BASE_DIR/$1 ]; then - FILE=$1 - DATE=`echo $FILE | cut -d . -f 1` - else - exit 2 - fi - fi - -echo "PARAMÉTER: $1" - -## -# TMP Könyvtár ellenőrzése, létrehozása -## - - if [ ! -e $NAPLO_BACKUP_TMP_DIR ]; then - /bin/mkdir $NAPLO_BACKUP_TMP_DIR - fi - /bin/chown $WEB_SERVER_USER $NAPLO_BACKUP_TMP_DIR - /bin/chmod 700 $NAPLO_BACKUP_TMP_DIR - -## -# Adatfile kicsomagolása -## - - cd $NAPLO_BACKUP_TMP_DIR - /bin/tar xfz $NAPLO_BACKUP_BASE_DIR/$FILE - if [ ! -e $NAPLO_BACKUP_TMP_DIR/$DATE/$DUMP_FILE ]; then - exit 3 - fi - if [ ! -e $NAPLO_BACKUP_TMP_DIR/$DATE/$LDIF_FILE ]; then - exit 4 - fi - -## -# Az LDAP adatbázis visszatöltése/felülírása -## - - /etc/init.d/slapd stop - /bin/sleep 1 - - /bin/rm -rf $LDAP_DB_DIR/* - /usr/sbin/slapadd -c -b $BASEDN -l $NAPLO_BACKUP_TMP_DIR/$DATE/$LDIF_FILE - - /etc/init.d/slapd start - -## -# mysql adatbázis visszatöltése -## - -(cat <<EOF -DROP DATABASE IF EXISTS $DATABASE; -CREATE DATABASE $DATABASE; -EOF -) | mysql -u$MYSQL_USER -p$MYSQL_PW - -cat $NAPLO_BACKUP_TMP_DIR/$DATE/$DUMP_FILE | mysql -u$MYSQL_USER -p$MYSQL_PW $DATABASE diff --git a/mayor-orig/bin/sbin/update.sh b/mayor-orig/bin/sbin/update.sh deleted file mode 100644 index 526d862a..00000000 --- a/mayor-orig/bin/sbin/update.sh +++ /dev/null @@ -1,35 +0,0 @@ -#!/bin/sh - -echo "mayor naplo sbin / update.sh" - -DIR=/var/mayor -REV="$DIR/www/include/config/rev.php" -PARENT="haladasi/haladasi haladasi/stat osztalyozo/diak osztalyozo/jegy osztalyozo/dolgozat bejegyzesek/bejegyzesek tanev/fogadoOra tanev/helyettesites tanev/munkaterv tanev/orarend intezmeny/valtas hianyzas/diak hianyzas/nap hianyzas/info uzeno/uzeno ertekeles/ertekeles hirnok/hirnok hirnok/hirnokFeliratkozas" -PUBLIC="tanev/orarend tanev/szabadTerem tanev/helyettesites" -WRITABLE="download/private/export download/private/osztalyozo download/private/nyomtatas/osztalyozo download/private/nyomtatas/haladasi" - -svn --force export svn+ssh://svn.mayor.hu/var/svn/trunk/mayor-base/www /var/mayor/www/ -# svn --force export svn+ssh://svn.mayor.hu/var/svn/trunk/mayor-keptar/www /var/mayor/www/ -# svn --force export svn+ssh://svn.mayor.hu/var/svn/trunk/mayor-honosito/www /var/mayor/www/ -# svn --force export svn+ssh://svn.mayor.hu/var/svn/trunk/mayor-portal/www /var/mayor/www/ -svn --force export svn+ssh://svn.mayor.hu/var/svn/trunk/mayor-naplo/install/module-naplo/mysql /var/mayor/install/module-naplo/mysql -svn --force export svn+ssh://svn.mayor.hu/var/svn/trunk/mayor-base/print /var/mayor/print -svn --force export svn+ssh://svn.mayor.hu/var/svn/trunk/mayor-naplo/print /var/mayor/print -svn --force export svn+ssh://svn.mayor.hu/var/svn/trunk/mayor-naplo/print /var/mayor/download -chown -R www-data.www-data /var/mayor/download -svn --force export svn+ssh://svn.mayor.hu/var/svn/trunk/mayor-base/data/base /var/mayor/data/base -svn --force export svn+ssh://svn.mayor.hu/var/svn/trunk/mayor-naplo/www /var/mayor/www/ | grep revision | cut -d ' ' -f 3 | uniq > $REV - -for f in $PARENT; do - ln -s $DIR/www/policy/private/naplo/$f-pre.php $DIR/www/policy/parent/naplo/$f-pre.php - ln -s $DIR/www/policy/private/naplo/$f.php $DIR/www/policy/parent/naplo/$f.php -done - -for f in $PUBLIC; do - ln -s $DIR/www/policy/private/naplo/$f-pre.php $DIR/www/policy/public/naplo/$f-pre.php - ln -s $DIR/www/policy/private/naplo/$f.php $DIR/www/policy/public/naplo/$f.php -done - -for f in $WRITABLE; do - chmod a+rwx $DIR/$f -done diff --git a/mayor-orig/bin/tex2pdf.sh b/mayor-orig/bin/tex2pdf.sh deleted file mode 100644 index ee177b11..00000000 --- a/mayor-orig/bin/tex2pdf.sh +++ /dev/null @@ -1,24 +0,0 @@ -#!/bin/bash -# -# A script segítségével tesztelhetjük, hogy mi történik, mikor a program a haladásinaplót, illetve osztályozónaplót generálja... -# -# Paraméter: a feldolgozandó UTF-8 kódolású TeX állomány "-u8.tex" végződés nélküli neve. -# - -. /etc/mayor/main.conf - -HOME="/tmp" -export HOME - -# Make sure this exists -# cd $BASEDIR/print/module-naplo/tex/ -# fmtutil-sys --cnffile $BASEDIR/print/module-naplo/tex/mayor.cnf --fmtdir $BASEDIR/print/module-naplo/ --byfmt mayor - -cat $1-u8.tex | recode u8..T1 > $1.tex - -tex -fmt $BASEDIR/print/module-naplo/tex/mayor $1.tex - -dvips $1.dvi - -ps2pdf -sPAPERSIZE=a4 -dAutoRotatePages=/None $1.ps - diff --git a/mayor-orig/bin/unlock.sh b/mayor-orig/bin/unlock.sh deleted file mode 100644 index b39ea0cf..00000000 --- a/mayor-orig/bin/unlock.sh +++ /dev/null @@ -1,52 +0,0 @@ -#!/bin/bash - -help_usage() { -cat <<EOF - -LOCK használata: mayor lock [options] - -A parancs segítségével feloldhatjuk a MaYoR rendszert, ilyenkor a webes engedélyezésre kerül. -Hasznos lehet különböző Rendszergazdai műveletek elvégzésekor. - -*** FIGYELEM! *** - Veszélyes lehet, ha a feloldás, a frissítés, vagy a mentés vége előtt történik!! - - --help: ^Ez a help szöveg. - -AUTHOR: Miklós Gergő <gergo@bmrg.hu> - Baár-Madas Református Gimnázium - -EOF -} - -if [ $? -ne 0 ]; then help_usage; exit; fi - -while [ $# -ge 1 ]; do - case $1 in - --help | -h ) help_usage - exit - ;; - - -- ) shift - break - ;; - - * ) echo "HIBA: ismeretlen opció: $1" - exit - ;; - esac - shift -done - -if [ "x$LOCKFILE" == "x" ]; then echo -e "Üres a LOCKFILE változó :("; exit 1; fi - -if [ -e $LOCKFILE ]; then - if [ ! -z $LOCKFILE ]; then - if [ $VERBOSE -gt 0 ]; then echo -e "* A web-es hozzáférés engedélyezése:"; fi - if [ $VERBOSE -gt 1 ]; then echo -e "- A Lock-file törlése..."; fi - rm $LOCKFILE - if [ $VERBOSE -gt 0 ]; then echo -e "kész.\n"; fi - fi -else - if [ $VERBOSE -gt 0 ]; then echo -e "* Már engedélyezett.\n"; fi -fi - diff --git a/mayor-orig/bin/update.sh b/mayor-orig/bin/update.sh deleted file mode 100644 index 39338119..00000000 --- a/mayor-orig/bin/update.sh +++ /dev/null @@ -1,227 +0,0 @@ -#!/bin/bash - -OPT_SPEC="hes:lb:r::" -LONG_OPT_SPEC="http-server:,skip-lock,basedir:,backup-dir:,from-revision:,exec-only,help:" -PARSED_OPTIONS=$(getopt -n "$0" -a -o $OPT_SPEC --long $LONG_OPT_SPEC -- "$@") -OPTIONS_RET=$? - -eval set -- "$PARSED_OPTIONS" - -help_usage() { -cat <<EOF - -UPDATE használata: mayor update [opciók] [modulok] - -A parancs segítségével frissíthetjük a MaYoR rendszert, a program forrását és -az adatbázis-szerkezetet. A frissítések letöltése és kicsomagolása mellett -a szkript egyéb módosításokat is végrehajthat, ezért alapértelmezett működés -esetén a frissítés idejére letiltjuk a napló elérését. A zárolás a -/var/run/mayor.lock állomány létrehozásával történik. - -A HTTP szervert, a frissítendő modulokat, a szükséges jelszavak és egyéb beál- -lításokat a /etc/mayor/main.conf állományban kell megadni. - -Opciók: - -h, --help: A parancs leírása (amit most olvasol...) - -s, --http-server: A szerver ahonnan a frissítéseket letöltjük - -b, --basedir: A telepítési könyvtár - -l, --skip-lock: A frissítés idejére se zároljuk a program működését - -r, --from-revision: A frissítés indítása a megadott revision számtól - függetlenül a - jelenleg eltárolt aktuális számtól - -e, --exec-only: A frissítő szkriptek futtatása új állományok letöltése nélkül. - Csak a --from-revision opcióval együtt használható! - -Modulok: - A frissítendő modulok listája, pl: mayor-base mayor-naplo mayor-portal - -EOF -} - -if [ $OPTIONS_RET -ne 0 ]; then help_usage; exit; fi - -declare -i REV -while [ $# -ge 1 ]; do - case $1 in - --help | -h ) help_usage - exit - ;; - - --skip-lock | -l ) SKIPLOCK=1 - export SKIPLOCK - ;; - - --exec-only | -e ) EXECONLY=1 - export EXECONLY - ;; - - --http-server | -s ) shift - HTTP_SERVER="$1" - echo "HTTP szerver: $HTTP_SERVER" - ;; - - --basedir | -b ) shift - BASEDIR="$1" - echo "Alapkönyvtár: $BASEDIR" - ;; - - --from-revision | -r ) shift - REV="$1" - echo "Revision: $REV" - ;; - - -- ) shift - break - ;; - - * ) echo "HIBA: ismeretlen opció: $1" # ide elvileg sose jutunk, mert a getopts már kiszűrte a hibás paraméterek - exit - ;; - esac - shift -done - -TMPMODS="" -while [ $# -ge 1 ]; do - if [[ ! "${MODS[*]}" =~ .*$1.* ]]; then - echo -e "Ismeretlen modul: $1" - else - TMPMODS="$1 $TMPMODS" - fi - shift -done -if [ "$TMPMODS" != '' ]; then - MODULES=$TMPMODS -fi - -########################### - - -if [ -z $UPDATEDIR ]; then - if [ -f ../config/update.conf ]; then - echo -e "\n\nWARNING: elavult konfigurációs állomány! (update.conf)" - echo " A frissítési rendszer a korábbi backup.conf és update.conf állományok helyett" - echo " egy új, rögzített helyen lévő állományt használ: /etc/mayor/main.conf" - echo " Most - ennek hiányában - a régebbi állományt használjuk" - . ../config/update.conf - else - echo -e "\n\nERROR: Hiányzó konfigurációs file: ../config/update.conf" - pwd - exit 10 - fi -fi - -# Ha paraméterknént nem volt megadva revision -if [ -z "${REV:-}" ]; then - if [ "$EXECONLY" == "1" ]; then - echo "Hiba: Az --exec-only kapcsoló csak a --from-revision paraméterrel együtt használható!" - exit 9 - fi - if [ -f $REVISION_FILE ]; then - REV=`cat $REVISION_FILE` - else - REV=0 - fi -fi - -echo -e "\n%%%%%%%%%%%%%%%%% $DATETIME %%%%%%%%%%%%%%%%%" -echo -e "\nFrissítés $REV számú változatról." - -if [ "$EXECONLY" != "1" ]; then - echo -e "\n * Az frissítéshez szükséges állományok letöltése (eltarthat pár percig)... " - - if [ "$MODULES" == '' ]; then - echo -e "\n\nERROR: Nincs megadva a frissítendő modulok listája (/etc/mayor/main.conf)!\n" - exit 1 - else - declare -i UJ_REV - if [ "$HTTP_SERVER" == '' ]; then - if [ -f $SVN ]; then - # frissítés SVN-ből - $SVN --force export svn+ssh://svn.mayor.hu/var/svn/trunk/mayor-base/bin "$BASEDIR/bin" > /dev/null - for MODULE in $MODULES; do - echo -n " $MODULE... " - chmod +x $BASEDIR/bin/mayor - if [ $? != 0 ]; then exit 2; fi - UJ_REV=`$SVN --force export svn+ssh://svn.mayor.hu/var/svn/trunk/$MODULE/update "$BASEDIR/update" | grep revision | cut -d ' ' -f 3 | uniq | sed -e 's/\.//g'` - if [ $? != 0 ]; then exit 3; fi - echo "kész." - done - else - echo -e "\n\nERROR: A subversion kliens nem található: $SVN" - exit 4 - fi - else - # Munkakönyvtár létrehozása - if [ ! -d $TMPDIR ]; then - mkdir $TMPDIR - chown -R 0:0 $TMPDIR - chmod -R 700 $TMPDIR - else - rm -rf $TMPDIR/* - fi - cd $TMPDIR - # Az md5sum állomány leszedáse - if [ -z $VERSION ]; then - wget "http://www.mayor.hu/download/md5sum" - else - wget "http://www.mayor.hu/download/$VERSION/md5sum" - if [[ ! $HTTP_SERVER =~ .*$VERSION.* ]]; then HTTP_SERVER="$HTTP_SERVER/$VERSION"; fi - fi - if [ $? != 0 ]; then exit 5; fi - UJ_REV=`grep Revision md5sum | cut -d ' ' -f 2` - if [ "$REV" -lt "$UJ_REV" ]; then - # csomagok leszedése - for MODULE in $MODULES; do - echo -n " $MODULE... " - MOD=`echo $MODULE | sed "s#/#-#"` - FILE=`grep "$MOD-rev" md5sum | cut -d ' ' -f 3` - if [ "$FILE" != '' ]; then - wget "$HTTP_SERVER/$FILE" - if [ $? != 0 ]; then - echo -e "\n\n ERROR: Az frissítés nem tölthető le: $FILE!\n" - exit 6 - fi - grep $FILE md5sum | md5sum -c --status - if [ $? == 0 ]; then - tar xfz $FILE -C $BASEDIR ./update - else - echo -e "\n\n ERROR: Az ellenörző összeg nem egyezik!\n" - exit 7 - fi - else - echo 'Nincs ilyen modul!' - exit 8 # nem szabad hiányzó csomagok mellett frissíteni!! - fi - done - fi - cd $BASEDIR/bin - fi - fi -else # exec-only - if [ -f $REVISION_FILE ]; then - UJ_REV=`cat $REVISION_FILE` - else - UJ_REV=0 # nem frissítünk semmit - fi -fi - -if [ "$REV" -ge "$UJ_REV" ]; then - echo -e "\nNincs újabb változat.\n" - echo -e "\n * A szükséges jogosultságok beállítása:" - chmod +x $BASEDIR/bin/mayor - echo 'kész.' -else - echo 'kész.' - . $BASEDIR/update/processUpdateScripts.sh -fi - -PWDTEX=`pwd` -echo -e "\nMaYoR TeX formátum állomány újragenerálása... " -cd $BASEDIR/print/module-naplo/tex/ && fmtutil-sys --cnffile $BASEDIR/print/module-naplo/tex/mayor.cnf --fmtdir $BASEDIR/print/module-naplo/ --byfmt mayor > /dev/null 2>&1 -echo -e "\nMaYoR XeTeX formátum állomány újragenerálása... " -cd $BASEDIR/print/module-naplo/xetex/ && fmtutil-sys --cnffile $BASEDIR/print/module-naplo/xetex/mayor-xetex.cnf --fmtdir $BASEDIR/print/module-naplo/ --byfmt mayor-xetex > /dev/null 2>&1 -cd $PWDTEX -echo 'kész.' - -echo -e "\nFrissítés vége.\n" -exit 0 diff --git a/mayor-orig/bin/xetex2pdf.sh b/mayor-orig/bin/xetex2pdf.sh deleted file mode 100644 index a4f7bf3f..00000000 --- a/mayor-orig/bin/xetex2pdf.sh +++ /dev/null @@ -1,36 +0,0 @@ -#!/bin/bash -# -# A script segítségével tesztelhetjük, hogy mi történik, mikor a program a haladásinaplót, illetve osztályozónaplót generálja -# __NYOMTATAS_XETEX===true beállítás mellett -# -# Paraméter: a feldolgozandó UTF-8 kódolású TeX állomány "-u8.tex" végződés nélküli neve. -# - -. /etc/mayor/main.conf - -HOME="/tmp" -export HOME - -# Make sure this exists -# cd $BASEDIR/print/module-naplo/tex/ -# fmtutil-sys --cnffile $BASEDIR/print/module-naplo/tex/mayor.cnf --fmtdir $BASEDIR/print/module-naplo/ --byfmt mayor - -cat <<EOF > $1.tex -%\font\kicsi=ecrm0500 -%\font\nagy=ecbx1200 -%\font\vastag=ecsx0800 -%\font\nagyss=ecsx1200 -%\font\normal=ecss0800 -%\font\dolt=ecsi0800 - -\font\kicsi="Linux Libertine O" at 5pt -\font\nagy="Linux Libertine O/B" at 12pt -\font\nagyss="Arial/B" at 12pt -\font\normal="Linux Biolinum O" at 8pt -\font\dolt="Linux Biolinum O/I" at 8pt -\normal - -EOF -cat $1-u8.tex >> $1.tex -xetex -fmt $BASEDIR/print/module-naplo/xetex/mayor-xetex $1.tex - |