Linux : Webminstats benötigt perl-rrdtool bei der Installation

Problem :

Webminstats jammert bei der Installation ein perl-rrdtool Packet an , diese Abhängigkeit ist scheinbar vor längerer Zeit entstanden denn nachdem man das rpm mit dem Parameter rpm -i --nodeps webminstats.rpm installiert läuft webminstats sauber und liefert saubere Reports aus.

Lösung :

Installieren des Packet mit diesem Befehl rpm -i --nodeps webminstats.rpm

Informationen zu diesem Thema :

Webminstats | Webmin | RRD-Tool

vsFTP OpenSuse - neuen Benutzer anlegen mit Skript

Problem :
Ich betreibe einen kleinen FTP Server der unter vsFTP arbeitet , öfter kommen neue Benutzer hinzu , um mir die Tipparbeit zu sparen hab ich ein kleines Bashscript geschrieben das das für mich übernimmt. Es ist nicht so kompliziert nimmt einem aber viel Arbeit ab ;-)

Lösung :


# !/bin/bash
echo -n "Bitte Benutzernamen angeben : "
read username
echo "-- Erstelle Home Verzeichnis für $username"
mkdir /home/$username
echo "-- Erstelle Benutzer $username"
useradd $username -d /home/$username -g ftpgroup -s /bin/false
chown nobody:ftpgroup /home/$username
chmod 1770 /home/$username
echo "Bitte geben Sie das Password für den Benutzer $username an"
passwd $username
echo $username >> /etc/vsftpd.user_list
echo "Benutzer $username wurde angelegt"

Systemmonitor Windows & Linux

Wer unter Linux einen guten Systemmonitor sucht wird nicht an Conky vorbei kommen. Alle wichtigen Informationen auf einem Blick , für Windows Systeme gibt es einige Programme die ähnliche aufgabe übernehmen allerdings nie in diesem Umfang. Hierbei sind 4 besonders hervor zu heben BGInfo von ehemals Sysinternals , Desktopinfo , Moo0 Systemmonitor und Samurize. Wer nur Informationen über die Plattenbelegung haben will kann mit allen arbeiten etwas trickreicher wird es allerdings wenn man auch den Netzwerktraffic anzeigen möchte , abhängig davon ob eine Verbindung besteht oder nicht. Um ehrlich zu sein habe ich das unter Windows nicht in diesem Umfang getestet wie unter Linux dort aber habe ich eine Konfiguration erstellt , die abhängig die Informationen auf den Desktop zaubert.

Hier ist meine Konfiguration für Conky unter Ubuntu 10.04 & 10.10 :



benötigte Packete : lm_sensors , hddtemp , conky_colors und natürlich conky ;-)

Download Config : conky.tar.gz

In der Config ist auch die Datei conky_start.sh mit dabei um einen verzögerten Start zu realisieren, insgesamt ein gut Durchdachter und frei konfigurierbarer Systemmonitor für Linux meine Empfehlung




Hier eine mögliche Konfiguration für DesktopInfo

Download Config : desktopinfo.ini



Das versprochene Feature DesktopInfo als Screensaver auszuführen hat bei mir damit geendet das das Overlay und der Screensaver nicht mehr beendet wurden ich somit den Screensaver abwürgen musste.
Mein Fazit zu DesktopInfo , interresantes Programm allerdings vermisse ich einige Features. Wenn man mit der Standardkonfiguration zufrieden ist kann man es allerdings empfehlen.

Lt. Autor für folgende Betriebssysteme geeignet :
Windows Platforms
-----------------
Desktop Info has been tested on the following Windows platforms:

XP Pro (32 bit) version 2002 service pack 2
XP Pro (32 bit) version 2002 service pack 3
XP Pro (64 bit) version 2003 service pack 2
Vista (32 bit) business service pack 1
Server 2000 (32 bit) service pack 4
Server 2003 (64 bit) service pack 2
Server 2008 (32 bit) standard service pack 1
Server 2008 (64 bit) standard service pack 1
Windows 7 Professional 64 bit

Disk I/O may not work on Windows 2000.

(Auszug aud der Readme des Autors)





Hier Moo0 SystemMonitor 1.63 :



Eine Konfiguration über eine Konfigurationsdatei entfällt hier da alles über Rechtsklick und Felder ins Monitoring aufgenommen werden kann , allerdings beschränkt das auch die Möglichkeiten auf die vom Autor vergegebenen Felder. Mein Fazit lautet , wer auf die schnelle , ohne Konfigurationsdateien zu schreiben , einen Systemmonitor sucht ist hier gut bedient. Es wird in Echtzeit aktualisiert (Interval wählbar) und ist einfach zu konfigurieren.






Ich werde auch die anderen Systemmonitore testen und meine Erfahrungen hier verewigen ;-)

Automatisch Backups von Linux Server löschen

So hier ist mal ein kleines Bash Skript um automatisiert Backups zu löschen.

Es müssen natürlich alle Variablen angepasst werden, diese sollte ja selbsterklärend sein.


#!/bin/bash

# Allgemeine Variablen fr Logfiles
datum=`date +%Y_%0m_%0e`

ablauf_log="/share/log/ablauf-$datum.log"
error_log="/share/log/error-$datum.log"

# Maximales alter des Backupfiles in Tagen
alter="21"

echo Bereinigen wird gestartet $datum >>$ablauf_log
echo Bereinigen wird gestartet
echo ------------------------------------------------ >>$ablauf_log
echo ------------------------------------------------

# ---------------------------------- GESAMT BACKUP ROUTINE
ordner="/share/backup/sbs"
echo Variablen
echo Ordner wird auf $ordner gesetzt
echo Alter wird auf $alter gesetzt
echo
echo ------- $ordner -- Komplettsicherung aelter als $alter Tage >>$ablauf_log
echo Dateien in $ordner werden auf Alter ueberprueft  - max. $alter Tage

find $ordner -mtime +$alter -exec echo {} \;
find $ordner -mtime +$alter -exec rm {} \;

echo ------------------------------------------------

# ---------------------------------- WEBSERVER BACKUP ROUTINE
alter="15" # fuer webserve und lexware nur 15 Tage
ordner="/share/backup/webserver"

echo Neu setzen der Variablen
echo Ordner wird auf $ordner gesetzt
echo Alter wird auf $alter gesetzt
echo

echo ------- $ordner -- Webserversicherung aelter als $alter Tage >>$ablauf_log
echo Dateien in $ordner werden auf Alter ueberprueft  - max. $alter Tage

find $ordner -mtime +$alter -exec echo {} \;
find $ordner -mtime +$alter -exec rm {} \;

echo ------------------------------------------------

# ---------------------------------- LEXWARE BACKUP ROUTINE
# - Alter ist bereits definiert
# ---------------------------------------------------------
ordner="/share/backup/lexware"

echo Neu setzen der Variablen
echo Ordner wird auf $ordner gesetzt
echo Alter wird auf $alter gesetzt
echo

echo ------- $ordner -- Lexwaresicherung aelter als $alter Tage >>$ablauf_log
echo Dateien in $ordner werden auf Alter ueberprueft  - max. $alter Tage

find $ordner -mtime +$alter -exec echo {} \;
find $ordner -mtime +$alter -exec rm {} \;

echo ------------------------------------------------
echo
echo ------------------------------------------------ >>$ablauf_log
echo Vorgang abgeschlossen >>$ablauf_log


Getestet mit SUSE / DEBIAN / UBUNTU

Automatisches Backup erstellen - Linux

Was natürlich nicht fehlen darf, ist ein Skript um Backups zu erstellen.

Hier wird z.B. ein lampp Server gesichert, es kann natürlich alles damit gesichert werden, dann muss nur das Skript angepasst werden ;-)

Ist vielleicht nicht immer die sauberste Methode aber sie funktioniert


#!/bin/bash
#
#
# Sichert den eingestellten Ordner
#
# -- Variablen
#
# Ordner und Zieldatei
#
Ordner=/opt/lampp/htdocs
Target=/share/backup/webserver
tmp_temp=/opt/lampp/htdocs/xtc/templates_c/*.php
tmp_cach=/opt/lampp/htdocs/xtc/cache/*.html
Error=/share/log/`date +%Y_%0m_%0e`_Error_WebSRV.log
Ablauf=/share/log/`date +%Y_%0m_%0e`_Ablauf_WebSRV.log
# Stufe der Komprimierung (0-9)
Compression=9
#
# Name der Backup Datei
#
NameZIP=`date +%Y_%0m_%0e`_WEBSRV
#
# Startzeit ermitteln
#
StrTime=`date +%R`
#
#
# wenn kein Logfile mitgeschrieben werden soll
# umleiten in //dev/null
#
echo Backup wird gestartet $StrTime
echo LAMPP wird beendet

/opt/lampp/lampp stop >>$Ablauf 2>>$Error

echo Daten werden gesammelt und gezippt
zip -r -$Compression $Target/$NameZIP.zip $Ordner >>//dev/null 2>>$Error

echo temp Dateien werden entfernt
echo
rm $tmp_temp >>$Ablauf 2>>$Error
rm $tmp_cach >>$Ablauf 2>>$Error

echo LAMPP wird gestartet
/opt/lampp/lampp start >>$Ablauf 2>>$Error

echo Rechte auf Backupdatei werden geaendert
chmod 777 $Target/$NameZIP.zip

echo Backup abgeschlossen



Getestet mit SUSE / DEBIAN / UBUNTU

Cronjob | Linux

Cronjobs sind unersätzlich auf einem Linux Server, und sind das gegenstück zu geplanten Tasks bei Windows Servern.

Allerdings ist die Syntax bei einem Linux Server um einiges schwerer zu erlernen als das Microsoft Gegenstück.

Die eingerichteten Cronjobs kann man mit dem Befehl

crontab -l


ansehen. Meine Empfehlung an euch ist alle Jobs in einer Datei einzupflegen und diese dann mit

crontab eureDatei (z.B. crontab jobs.cron)


scharf zu schalten.

Der Aufbau eines Cronjobs besteht aus sechs Feldern.

1.Minute (0-59)
2.Stunde (0-23)
3.Tag im Monat (1-31)
4.Monat im Jahr (1-12)
5.Tag der Woche (0-6 mit 0=Sonntag)
6.Was soll ausgeführt werden (z.B. Skript)


Möchte man jetzt das jeden Montag um 5.00 Uhr das Skript Backup.sh ausgeführt wird sieht das so aus.

0 5 \* \* 1 /Skripte/Backup.sh


soll das Skript am 10ten und am 20ten jeden Monats ausgeführt werden sieht das so aus.

0 5 10,20 \* \* /Skripte/Backup.sh


will man das das Skript alle 2 Minuten ausgeführt wird muss man schon etwas wühlen um den genauen Syntax zu erfahren. Hier ist ein Beispiel.

-*/2 \* \* \* \* /Skripte/Backup.sh

Hier noch zwei Seiten die sich mit dem Thema etwas genauer befassen :

http://www.tech-geeks.org/contrib/mdrone/cron&crontab-howto.htm
http://www.sequenz.ch/archive/2003/12/07/crontab-beispiel.html

Und nun wünsch ich euch viel Spaß beim probieren
“Das einzig sichere System müsste ausgeschaltet, in einem versiegelten und von Stahlbeton ummantelten Raum und von bewaffneten Schutztruppen umstellt sein.”
Gene Spafford (Sicherheitsexperte)