Sich über neue Updates informieren lassen

Geschrieben von Dejan Spasic • Friday, 9. January 2009 • Kategorie: BetriebssystemKommentare (2)

TuxHier ein kleines Skript um sich vom Server über neue Updates per eMail informieren zu lassen.

#!/bin/sh
apt-get update
apt-get upgrade -u -s -y | grep -c '[1-9]\{1\}[0-9]* [aktualisiert|upgraded]'
if [ "$result" != 0 ]
then 
    apt-get upgrade -u -s -y | mail -s "SERVER: Updates vorhanden" mail@domain.tld
fi
Tags für diesen Artikel: , , , ,

Optimieren einer MySQL Datenbank mit Perl::DBI

Geschrieben von Dejan Spasic • Friday, 2. February 2007 • Kategorie: Coding , MySQLKommentare (0)

#!/usr/bin/perl -w

use strict;
use DBI;

use constant DB_USER => "xxxx";
use constant DB_PASSWD => "xxxx";
use constant DB_DRIVER => "DBI:mysql:database=";

my $dbh;
my $stmt_db;
my $dbase;
my $to_optimize;
my $tables;

$dbh = DBI->connect(
        DB_DRIVER . "mysql",
        DB_USER,
        DB_PASSWD,
        {"RaiseError" => 1}
);

$stmt_db = $dbh->prepare("show databases") or {FNAMEL}.html">die $dbh->errstr;
$stmt_db->execute() or {FNAMEL}.html">die $dbh->errstr;

while ($dbase = $stmt_db->fetchrow_hashref())
{
        next if ($dbase->{'Database'} eq "information_schema");

        {FNAMEL}.html">print "\nOptimizing database: $dbase->{'Database'}\n";
        {FNAMEL}.html">print "-------------------------------------------\n";
        $to_optimize = DBI->connect(
                DB_DRIVER . $dbase->{'Database'},
                DB_USER,
                DB_PASSWD,
                {"RaiseError" => 1}
        );

        $tables = $to_optimize->prepare("show tables")
                or {FNAMEL}.html">die $to_optimize->errstr;
        $tables->execute() or {FNAMEL}.html">die $to_optimize->errstr;

        my $table;

        while ($table = $tables->fetchrow_arrayref())
        {
                {FNAMEL}.html">print "Optimize table: $table->[0]\n";
                $to_optimize->do("optimize table $table->[0]")
                        or {FNAMEL}.html">die $to_optimize->errstr;
        }
}

$stmt_db->finish();
$tables->finish();
$dbh->disconnect();
 
Tags für diesen Artikel: , ,

Backup einer MySQL Datenbank auf Linux

Geschrieben von Dejan Spasic • Friday, 2. February 2007 • Kategorie: Betriebssystem , MySQLKommentare (0)

Anbei ein kleines Shell-Skript für das Backup der MySQL Datenbanken.

#!/bin/bash

# Diese skript sichert alle datenbanken ab.

#Password fuer die MySQL datenbank
DB_PASSWD="DASPASSWORD"

#Das Datum
NOW=`date +%Y%m%W`

#Das Ziel
TARGETDIR="/PFAD/ZUM/BACKUP/"`date +%Y`"/mysql/"

DBASE_LIST=`mktemp`

#Erstelle das Verzeichnis falls nicht vorhanden
if [ ! -d $TARGETDIR ]
then
        echo "Erstelle das Verzeichnis $TARGETDIR"
        mkdir -p $TARGETDIR
        chmod 0700 $TARGETDIR
fi;

mysqlshow -p$DB_PASSWD | awk '{print $2}' | grep -vi databases | sort > $DBASE_LIST

if [ ! -d "$TARGETDIR/$NOW" ]
then
        echo "Erstelle das Verzeichnis $TARGETDIR/$NOW"
        mkdir -p "$TARGETDIR/$NOW"
        chmod 0700 "$TARGETDIR/$NOW"
fi;

cd "$TARGETDIR/$NOW"

for x in `cat $DBASE_LIST`
do
        echo "Datenbank: $x sichern"
        mysqldump --opt -p$DB_PASSWD $x > "$x.sql"
        chmod 700 "$x.sql"
done;

echo "Alte .gz-Dateien loeschen:"
rm .gz
echo "Dateien zippen:"
gzip
Tags für diesen Artikel: , , , ,

Shellskript zum erstellen eines Skeletts für einen virtualen Host in Apache

Geschrieben von Dejan Spasic • Thursday, 7. December 2006 • Kategorie: BetriebssystemKommentare (0)

Linux TuxHier, so siehts aus.

span style="color: #666666; font-style: italic;">#!/bin/bash
"Kein Name fuer den Ordner""/var/www/$1/ftp/web""Der Ordner $1 ist schon vorhanden..."

Ich denke mal, dass das Skript selbsterklärend ist.

Tags für diesen Artikel: , , , ,

Shellskript für das Hinzufügen eines virtualen Hosts in Apache

Geschrieben von Dejan Spasic • Thursday, 7. December 2006 • Kategorie: BetriebssystemKommentare (0)

Linux TuxIch will es kurz machen. Hier das Skript.

span style="color: #666666; font-style: italic;">#!/bin/bash
"Geben Sie einen Namen an""/etc/apache2/sites-available/$1"";Der vhost $1 ist schon vorhanden...""1,$ s/domain.tld/$1/g"

Das Template vhost in das .skelet Verzeichnis kann wie folgt ausehen.

<virtualhost>
    ServerAdmin webmaster@domain.tld

    ServerName domain.tld

    DocumentRoot /var/www/domain.tld/ftp/web
    DirectoryIndex index.htm index.html index.php

    <directory>
        AllowOverride none
        Options -Indexes FollowSymlinks

        Order allow,deny
        Allow from all
   </directory>

   ServerSignature off

   ErrorLog /var/log/apache2/domain.tld-error.log
   CustomLog /var/log/apache2/domain.tld-access.log combined
</virtualhost>
Tags für diesen Artikel: , , , ,