Falls die Installation trotzdem nicht klappt und ihr Hilfe benötigt, dann schaut im Chat vorbei. Ein Blick in unserem Forumsbereich Bouncer könnte euch auch helfen.
Es gibt verschiedene Möglichkeiten, ZNC auf Deinem Rechner zu installieren. Die aktuellste Version ist immer im Quellen-Archiv bei SourceForge zu finden. Einige Distributionen stellen ZNC bereits über ihr jeweiliges Paket-System bereit, beachte aber bitte, dass es sich dabei oft um veraltete Versionen handelt!
Inhaltsverzeichnis
- [summarypoint=1.1]Voraussetzungen[/summarypoint]
- [summarypoint=1.1]Was wird benötigt?[/summarypoint][summarypoint=1.2]Wie erstelle ich einen User auf dem System[/summarypoint]1.3 Wie installiere ich einen Texteditor nach? z.B. nano (Link)
- [summarypoint=2.1]Installation unter[/summarypoint][summarypoint2=2.1.1]Debian[/summarypoint2][summarypoint2=2.1.2]openSuSE[/summarypoint2][summarypoint2=2.1.3]Gentoo[/summarypoint2][summarypoint2=2.1.4]FreeBSD[/summarypoint2][summarypoint2=2.1.5]CentOS und Fedora[/summarypoint2][summarypoint2=2.1.6]Slackware[/summarypoint2][summarypoint2=2.1.7]Generic Installation[/summarypoint2][summarypoint=2.3]Konfiguration[/summarypoint][summarypoint=2.5]Befehle[/summarypoint][summarypoint=2.6]Features[/summarypoint][summarypoint=2.7]Webadmin[/summarypoint][summarypoint=2.8]Backup[/summarypoint]
- Unix/Linux Shell
- Bitte den folgenden Befehl als root ausführen. Dieser Befehl erstellt einen User im System und legt automatisch ein Homeverzeichnis an. Im folgenden Beispiel wird der User unreal und das Homeverzeichnis /home/unreal/ angelegt.
- Im 2. Befehl ändern wir das Passwort.
server ~ # useradd -m znc
server ~ # passwd znc
apt-get install znc
yast -i znc
emerge -av net-irc/znc
cd /usr/ports/irc/znc
make config
make install clean
# wget http://downloads.sourceforge.net/projec ... irror=mesh
# tar -xzvf znc0.080.tar.gz
# cd znc0.080
# ./configure
Infobox:benutze --prefix=/installations/pfad/fuer/znc wenn du keine systemweite Installation wünschst oder einfach keine root-Rechte besitzt;
benutze --with-openssl=/pfad/zu/openssl wenn du einen vom Standard abweichenden OpenSSL Pfad hast
# make && make install
# ./znc --makeconf
Sollten Probleme bei der installation oder Fragen aufkommen, schaut einfach in den FAQ's von ZNC vorbei oder in unserem Forum - Bereich Bouncer
Konfiguration - ZNC liest seine ganze Konfiguration aus der Datei ~/.znc/configs/znc.conf
Sonstiges - Auch alle anderen Dateien sind im ~/.znc Verzeichnis gespeichert, wie z.B. das SSL Zertifikat (znc.pem) und das PidFile (znc.pid).
Lokale Module - Gespeichert in ~/.znc/modules. ZNC sucht zuerst im lokalen Modul-Ordner, wenn es Module lädt.
Globale Module - Findet man standardmäßig in /usr/local/lib/znc (wobei /usr/local der von dir gewählte Prefix ist)
Binaries - znc, znc-config, und znc-buildmod befinden sich standardmäßig in /usr/bin.
Den Prefix kannst du ändern, indem du bei der Konfiguration ./configure --prefix=/welchen/pfad/du/willst benutzt
Um Module zu entfernen, kannst Du sie ganz einfach aus dem entsprechenden Ordner löschen. Dabei sind keine anderen Konfigurationen oder Neustarts nötig. ZNC sucht direkt nach den *.so Modulen. Um ein Modul zu behalten, kannst du einfach die Dateierweiterung ändern, wie hier:
mv sample.so sample.so_.
Um eine automatische Konfigurationsdatei zu erstellen, musst du nach der Installation einfach nur znc --makeconf aufrufen.
Eine Konfigurationsdatei setzt sich im Grunde aus folgenden Dingen zusammen:
Listen - Der Port auf dem ZNC arbeiten soll. Wenn vor dem Port ein '+' steht, benutzt ZNC eine SSL verschlüsselte Verbindung.
Füge noch einen Host/IP mit einem Leerzeichen getrennt vor den Port ein, um ZNC auf einer bestimmten IP hören zu lassen.Listen6 - Genau das selbe wie Listen, nur mit den Unterschied, dass statt IPv4 nun IPv6 benutzt wird.
ConnectDelay - Die Zeit die ZNC bei jeder Verbindung verzögern soll.
ISpoofFile - ZNC schreibt den ident des Benutzers, der sich zu verbinden versucht, in diese Datei. Das ist sehr nutzlich, wenn deine Shell oidentd unterstützt.
ISpoofFormat - Stellt das Format dar, indem nun in das ISpoofFile geschrieben wird.
PidFile - Stellt ein, wohin ZNC sein PidFile schreibt.
StatusPrefix - Der Standard-Präfix für Status- und Modul-Querys (im IRC). Diese Einstellung kann von den Benutzern überschrieben werden.
LoadModule - Lädt ein globales Modul beim Starten.
MOTD - Die MotD (Message of the Day) wird via *status gesendet, wenn sich ein Client verbindet. Kann auch mehrmals angegeben sein.
VHost - Beschreibt die Liste der erlaubten vHosts. Es wird vom Modul webadmin benutzt, damit die Benutzer sich einen aussuchen können.
(Stelle zuerst verschiedene vHosts unter Einstellungen im Webinterface ein - ein vHost pro Zeile -
um diese anschließend in den Benutzer-Konfigurationen verfügbar zu machen)User - Die Benutzer-Definition, davon kannst du natürlich mehrere haben. Jeder Benutzer ist mit nur einem Netzwerk verbunden, also benötigst du für jedes Netzwerk
einen entsprechend neuen Benutzer.Das ist das beabsichtigte Verhalten! (Schau in die FAQ um mehr über multiple Netzwerke zu erfahren)Pass - Das vom Client benötigte Passwort, um sich mit ZNC zu verbinden. Ein hash kann mit znc --makepass generiert werden.
Nick, AltNick, Ident, RealName, VHost - IRC-Benutzer-Info (Nickname, alternativer Nickname, Ident, Realer Name, vHost [wenn vorhanden])
QuitMsg - Die Standard-Quit-Nachricht, wenn ZNC vom Server jumpt oder sich vom Server abmeldet.
StatusPrefix - Der Präfix für Status- und Modul-Querys (im IRC).
ChanModes - Die Standard-Modes, die ZNC einstellt, wenn du einen leeren Channel betrittst.
Buffer - Die Anzahl der Zeilen, die im Wiedergabe-Puffer gespeichert werden, bevor die älteste Zeile überschrieben wird
(z.B. 50 um die letzten 50 Zeilen in allen Channels mitzuloggen). Der Puffer wird standardmäßig im Arbeitsspeicher gesichert.KeepBuffer - Wenn diese Einstellung true (also eingeschaltet) ist, wird der Puffer jedes mal abgespielt und behalten, wenn du dich zu ZNC verbindest.
Wenn die Einstellung false ist, so wird der Puffer verworfen, nachdem er ausgegeben wurde.KeepNick - Diese Einstellung wird bei true versuchen, deinen Nick ständig zu behalten bzw. wieder zu bekommen.
MultiClients - Wenn diese Option true ist, kann man mit verschiedenen Clients eine Multi-Session eröffnen
(mehrere Clients auf einem Account benutzen, zur selben Zeit).BounceDCCs - Bei true wird ZNC DCC-Anfragen tunneln, ansonsten wird die DCC-Verbindung direkt zu ihrem Client aufgebaut.
DenyLoadMod - Bei true wird dem Benutzer untersagt, Module zu laden.
DenySetVHost - Bei true kann der Benutzer keinen vHost einstellen (wenn vorhanden).
Admin - Bei true hat der Benutzer komplette Admin-Rechte (z.B. im webadmin Modul).
DCCLookupMethod - Bei default benutzt ZNC die IP, die der Client übermittelt, bei client benutzt ZNC die IP, von der aus der Client zu ZNC verbunden ist.
TimestampFormat - Definiert das Format für Zeitstempel, die im Puffer benutzt werden, z.B. [%H:%M:%S]
AppendTimestamp - Soll der Zeitstempel an die Nachricht angehängt werden?
PrependTimestamp - Soll der Zeitstempel vor der Nachricht angezeigt werden?
TimezoneOffset - Dies kann einen Zeitzonen-Unterschied in den Zeitstempeln beheben. Beispiel: +1 um UTC+1 in Berlin/Paris zu verwenden.
JoinTries - Hier wird festgelegt, wie oft ZNC versuchen soll, einen Kanal zu betreten, wenn der erste Versuch fehlschlägt.
Dies hilft beispielweise bei den Modes +i/+k oder wenn du gebannt wurdest.Allow - Standardmäßig ist jeder berechtigt, sich mit diesem Benutzer-Account zu ZNC zu verbinden.
Mit den Allow-Zeilen kannst du die Anmeldung auf bestimmte IP-Adressen beschränken.
Sternchen-Wildcards (*) werden dabei unterstützt.Mehrere Regeln können über mehrere Zeilen definiert werden.LoadModule - Lädt ein Modul für diesen Benutzer beim Starten.
Server - Fügt ein IRC-Server hinzu, auf dem ZNC verbinden kann. Wenn du auf einen SSL-verschlüsselten Server verbinden möchtest,
gibst du einfach ein + vor den Port ein. Die IP-Adresse kann auch eine IPv6-Adresse sein.
Wird für den Server ein Passwort benötigt, füge dieses einfach als drittes Argument hinzu. Format: IRC-Server-Adresse [+]Port [Password]CTCPReply - Ein Anfrage-Antwort-Paar für CTCP-Funktionen. Format: Anfrage Anwort, z. B. VERSION unbekannt v1.0.
Chan - Channels, die ZNC betritt, wenn der Benutzer geladen wird.
Key - Channel-Passwort (gleicht der Funktion +k im IRC).
Modes - Gleicht der ChanModes-Einstellung aus der Benutzer-Konfig, nur auf Channel-Ebene.
Buffer - Gleicht der Buffer-Einstellung aus der Benutzer-Konfig, nur auf Channel-Ebene.
Detached - Wenn hier true angegeben ist, wird ZNC diesen Channel als getrennt gekennzeichnet, sodass dein IRC-Client nicht durch diesen Channel gestört wird.
Beispiel: /msg *status listmods
<*status> +---------+------------------------------------------------------+
<*status> | Name | Description |
<*status> +---------+------------------------------------------------------+
<*status> | email | Monitors Email activity on local disk /var/mail/user |
<*status> | shell | Gives shell access. |
<*status> | schat | Secure cross platform (:P) chat system |
<*status> +---------+------------------------------------------------------+
<zncuser> help
<*status> +------------------------+-------------------------+---------------------------------------------+
<*status> | Befehl | Argument | Beschreibung |
<*status> +------------------------+-------------------------+---------------------------------------------+
<*status> | Version | | Zeigt die verwendete Version von ZNC an |
<*status> | ListDCCs | | Listet alle aktiven DCC's |
<*status> | ListMods | | Listet alle geladenen Module |
<*status> | ListAvailMods | | Listet alle verfügbaren Module |
<*status> | ListChans | | Listet alle betretenen Channel |
<*status> | ListNicks | <#channel> | Listet alle User in diesem Channel |
<*status> | ListServers | | Listet alle Server |
<*status> | AddServer | <host> [[+]port] [pass] | Fügt einen Server hinzu |
<*status> | RemServer | <host> | Löschtt einen Server aus der liste |
<*status> | Enablechan | <#channel> | Aktiviert einen Channel |
<*status> | Detach | <#channel> | Verlässt einen Channel |
<*status> | Topics | | Zeigt die Topics aller Channel |
<*status> | PlayBuffer | <#channel> | Zeigt den Wiedergabe Puffer des Channels |
<*status> | ClearBuffer | <#chanel> | Löscht den Wiedergabe Puffer des Channels |
<*status> | ClearAllChannelBuffers | | Löscht alle Wiedergabe puffer |
<*status> | SetBuffer | <#chanel> [Zeilenanzahl]| Setzt die Anzahl der Zeilen des Puffers |
<*status> | SetVHost | <vhost (ip bevorzugt)> | Setzt einen Vhost für diese Verbingung |
<*status> | ClearVHost | | Löscht den Vhost für diese Verbindung |
<*status> | Jump | | Springen zum nächsten Server in der liste |
<*status> | Disconnect | | Vom IRC Trennen |
<*status> | Connect | | Zum IRC Wiederverbinden |
<*status> | Send | <nick> <Datei> | Eine Datei zu einem User senden |
<*status> | Get | <Datei> | Eine Datei zu sich selbst senden |
<*status> | LoadMod | <Modul> | Ein Modul laden |
<*status> | UnloadMod | <Modul> | Ein Modul entfernen |
<*status> | ReloadMod | <Modul> | Ein Modul erneut laden |
<*status> | ShowMOTD | | MOTD anzeigen |
<*status> | SetMOTD | <Nachricht> | MOTD setzen |
<*status> | AddMOTD | <Nachricht> | Nachricht zur MOTD hinzufügen |
<*status> | ClearMOTD | | MOTD löschen |
<*status> | Rehash | | Znc.conf erneut laden |
<*status> | SaveConfig | | Speichern der aktuellen Einstellungen |
<*status> | ListUsers | | Listet alle User/Clients |
<*status> | ListClients | [User] | Listet alle verbundenen Clients des Users |
<*status> | Traffic | | Zeigt Traffic Statistiken aller User |
<*status> | Uptime | | Zeigt die Zeit die ZNC bereits läuft |
<*status> | Broadcast | [Nachricht] | Schickt eine Nachricht zu allen Usern |
<*status> | Shutdown | [Nachricht] | Fährt ZNC runter |
<*status> | Restart | [Nachricht] | Startet ZNC erneut |
<*status> +------------------------+-------------------------+---------------------------------------------+
ModuleZNC unterstützt das dynamische Laden von C++ und Perl Modulen.
DetachingZNC wird online bleiben wenn du offline gehst. Wenn du dann wiederkommst, bekommst du einen Teil der geschriebenen Nachrichten (einstellbar) und deine Privatnachrichten. So verpasst du nichts.
Mehrere BenutzerDu kannst mehrere Benutzer hinzufügen, ohne einen zweiten ZNC starten zu müssen. Das ist sinnvoll bei Shells, die die maximale Anzahl an Hintergrundprozessen limitieren.
Mehrere ClientsDu kannst mit sovielen Clients zu einem Benutzer verbinden wie du willst.
Wiedergabe PufferSieh was passiert ist, während du offline warst. Auch die Zeitstempel der Nachrichten werden gespeichert und ausgegeben.
SSLVerschlüsselung für die Verbindung zum BNC und zum IRC Server.
DCC BouncingTransparentes Bouncing von DCCs um die eigene IP geheim zu halten.
PartylineMit dem globalen partyline-Modul kannst du ZNC-interne Channels betreten und Benutzer anschreiben.
Web AdministrationMit dem globalen webadmin-Modul können Admins Benutzer hinzufügen/bearbeiten/löschen und globale Einstellungen ändern. Normale Benutzer können ihre eigenen Einstellungen ändern.
Globale Module
AdminErlaubt dir, Einstellungen und Benutzer on-the-fly per IRC-Kommando zu erstellen/löschen/bearbeiten.
AdminlogLoggt Verbindungen und Trennungen und fehlgeschlagene Logins in eine Datei oder per syslog.
ImapauthErmöglicht Benutzern, sich über ein IMAP-Konto zu authentifizieren.
ModperlLädt Perl Scripte als ZNC Module.
NotifyInformiert alle Benutzer, wenn ein Client verbindet/trennt.
PartylineErmöglicht ZNC Benutzen interne channels zu betreten und Benutzer auf dem selben ZNC anzuschreiben.
SaslauthErmöglicht Benutzern, sich über SASL zu auhentifizieren.
WebadminErmöglicht Admins, Benutzer über einen Webbrowser hinzuzufügen, zu bearbeiten oder zu löschen.
Benutzer Module
AntiidleVersteckt deine Idle-Zeit.
AutoattachReattached dich zu den Channels bei Aktivität.
AutoopAuto op für die Guten.
AutovoiceGibt jedem, der einen bestimmten Channel betritt, Voice-Rechte.
AwaySpeichert Nachrichten, wenn du abwesend bist; auch bei Auto-away.
AwaynickÄndert deinen Nicknamen, wenn du abwesend bist.
ChansaverSpeichert die Konfiguration, wenn ein Kanal betreten oder verlassen wird.
CryptVerschlüsselung für Kanäle/Privatnachrichten.
Überwacht E-Mail Aktivität in /var/mail/user
KickrejoinAutomatisches Wiederbetreten eines Kanals, wenn du gekickt wurdest.
LastseenLoggt, wann ein Benutzer sich zuletzt in ZNC eingeloggt hat.
LogSpeichert Konversationen in Dateien.
NickservAuthentifiziert dich bei NickServ.
PerformFührt Befehle beim Verbinden zum IRC-Server aus.
QAuthAuthentifiziert dich beim Verbinden mit Q (im Quakenet).
RawMacht den gesamten raw traffic sichtbar.
Route_repliesRoutet Antworten zum anfragenden Client zurück, wenn mehrere Clients mit einem Benutzer verbunden sind.
SampleDies ist ein Beispiel, um eigene Module zu schreiben.
SavebuffSpeichert deine Channel-Puffer in eine verschlüsselte Datei, so dass sie Neustarts und Reboots überleben können.
SchatSSL (verschlüsselte) DDC-Chats.
ShellZugriff auf deine Unix-Shell direkt in deinem IRC-Client.
StickychanLegt Kanäle fest, die du nicht verlassen kannst.
WatchÜberwache Aktivität für bestimmte Textmuster von bestimmten Benutzern. Der Text wird in ein spezielles Query-Fenster geschrieben.
Module verwalten
Module können sehr einfach hinzugefügt und entfernt werden. Standardmäßig können sie in ~/.znc/modules und /usr/local/lib/znc abgelegt werden.
ZNC installiert seine Module in letzteres Verzeichnis, das eigentlich ${prefix}/lib/znc ist, aber dies kann vor dem Kompilieren mit ./configure --module-prefix=DIR angepasst werden.
ZNC sucht zuerst im lokalen Unterverzeichnis modules nach Modulen. Dabei werden nur Dateien mit der Endung .so berücksichtigt.
Um Module zu entfernen kann man sie einfach aus dem entsprechenden Ordner gelöscht werden.
Es sind keine anderen Einstellungen oder Neustarts nötig. Um ein Modul zu entfernen, es aber für eine spätere Benutzung zu behalten, reicht es, die Dateiendung umzubenennen,
wie zum Beispiel per mv sample.so sample.so_. Um neue Module zu kompilieren müssen sie zunächst als .cpp-Datei abgespeichert werden.
Module (ent)laden
LoadModule = Modul Parameter
User foo
User foo
...
LoadModule = Modul Parameter
...
/User
/msg *status loadmod [-global] module parameters
/msg *status unloadmod [-global] module
Module benutzen
/msg *Modul help
Einrichtung
Dieses Modul erwartet bis zu zwei Argumente... [IP] [+]port das + zeigt an, dass für diesen Port SSL verwendet werden soll. Bei der Angabe einer IP wird das Modul nur an diese binden.
Anmerkung: SSL steht nur zur Verfügung, wenn es explizit aktiviert wurde (./configure --enable-openssl).
Anmerkung: Ältere ZNC Versionen hatten ein Problem mit der Automatisch generierten pem Datei, die die Webbrowser nicht mochten.
Falls du (im Firefox) eine Meldung mit Fehlercode: -8182 bekommst, musst du die pem Datei mit ./znc --makepem neu generieren.
Da dies ein Globales Modul ist, wird es geladen bevor Benutzer definiert werden, wie hier:
Listen = +3300
LoadModule = webadmin +28000
User foo
...
/User
Verbinden
Wenn das Modul geladen ist, wird es mithilfe des HTTP Protokolls auf dem entsprechenden Port horchen.
Du kannst nun mithilfe eines Webbrowsers mit dem Modul verbinden.
Zum Beispiel wenn ZNC auf einer Shell namens foo.com läuft und die oben angegebene Konfiguration nutzt dann öffne deinen Standardbrowser und gib diese URL ein:
https://217.79.189.190:28000/
Das führt dich zu speedspace auf Port 28000 mit SSL. Wenn du verbunden bist wird dich das Modul nach Benutzername und Passwort fragen.
Normale ZNC Benutzer können mit diesem Modul verbinden und ihren ZNC Usernamen und Passwort zum einloggen verwenden.
Wenn ein Normaler Benutzer sich Einloggt kann er nur seine eigenen Einstellungen bearbeiten.
Dagegen kann ein Admin die Einstellungen aller Benutzer verändern, Benutzer hinzufügen oder löschen sowie globale ZNC Einstellungen bearbeiten.
Das Modul benutzen
Nachdem du als Admin verbunden bist kannst du:
(normale ZNC Benutzer können nur ihre eigenen Einstellungen bearbeiten.)
Du kannst Admins hinzufügen indem du dich im Webinterface als Admin einloggst und die Admin Option aktivierst.
Einem User kann man auch in der Konfigurationsdatei Adminrechte geben:
User foo
...
Admin = true
...
/User
Skins
Du hast die Möglichkeit das Webadmin Interface individuell anzupassen. Sämtlicher HTML-Code ist außerhalb des Modules in Templates gespeichert.
Um eigene Skins hinzuzufügen musst du ein paar Verzeichnisse im Skins Verzeichnis des Webadmin Modules erstellen.
Skinverzeichniss
Zuerst musst du wissen wo du ZNC installiert hast. Wenn du dir nicht sicher bist tippe
Du nimmst alles was vor dem /bin/znc ist, um den Pfad herauszufinden den wir suchen.
Falls gar nichts gefunden wird ist ZNC wahrscheinlich nicht im System installiert und du wirst wissen wo er liegt, da du ja in das Verzeichnis wechseln musst um ihn zu starten.
Gehen wir mal davon aus dass ZNC im System in /usr installiert wurde. Die Webadmin Skins würden dann in
Da du nun an der richtigen Stelle bist ist das beste was du tun kannst
Zu bearbeitende Datein
Falls dir das Layout gefällt und du nur die Farben verändern willst reicht es aus diese Datei zu bearbeiten:
css/main.css
Wenn du das Layout ändern willst musst du diese Dateien bearbeiten:
Channel.tmpl
Error.tmpl
Footer.tmpl
Header.tmpl
ListUsers.tmpl
Main.tmpl
Settings.tmpl
UserPage.tmpl
Die wichtigsten Dateien sind Header.tmpl und Footer.tmpl. Dies sind die statischen Teile, die auf jeder seite angezeigt werden.
Durch das Bearbeiten dieser und der css/main.css Datei, kannst du bereits einen individuellen Skin erstellen.
Willst du Bilder verwenden musst du sie im img Verzeichnis speichern.
Verweise darauf sollten so aussehen: src=/img/foo.jpg. Der /img Pfad verweist auf zncpath/webadmin/skins/current skin/img.
Dasselbe gibt es auch für JavaScript- (Verweis auf /js) und CSS- (Verweis auf /css) Dateien.
Skins herunterladen
Du kannst auch einfach einen fertig modifizierten Skin herunterladen und in das Skinverzeichniss entpacken (wie oben beschrieben auffindbar). Verfügbare Zusatzskins sind:
GreenVision - http://un1matr1x.de/home/webadmin-skins ... -2-t3.html
Hier wird beschrieben, wie man die ZNC-Konfiguration sichert und sich per E-Mail einmal wöchentlich zuschicken lässt.
Benötigte Software
p7zip
tar
SendEmail
Backup-Skript
Nach der Installation wird ein kleines Skript im Hauptverzeichnis des Users angelegt.
vi znc-sicherung.sh
Dieses wird mit folgenem Inhalt gefüllt:
#!/bin/bash
DATEI1=$(date +%Y-%m-%d)_znc_backup.tar
DATEI2=$(date +%Y-%m-%d)_znc_backup.tar.7z
DATUM=$(date +%Y-%m-%d)
USER=znc
sevenzp=a -t7z -m0=lzma -mx=9 -mfb=64 -md=32m -ms=on -mhe=on -p=Pa7Sw0r7
MAILADRESSE1=deine{at}email.de
DIR=/home/$USER/.znc
/usr/bin/tar -cvf $DATEI1 $DIR
/usr/bin/7za $sevenzp $DATEI2 $DATEI1
/usr/bin/sendEmail -f $USER@dein.host -u ZNC-Backup-$DATUM -m ZNC Backup vom $DATUM -a $DATEI2 -t $MAILADRESSE1
rm -f $DATEI1 $DATEI2
Hierbei ist zu beachten, dass das Skript an den User angepasst werden muss, unter dem znc läuft. Folgende Zeilen müssen dabei bearbeitet werden:
USER=
sevenzp= (nur das Passwort am Ende)
MAILADRESSE1=
/usr/bin/sendEmail -f $USER@dein.host
Bitte achtet auf die Zeile 7za $sevenzp $DATEI2 $DATEI1. Bei manchen Distributionen heißt das 7zip-Binary 7z statt 7za. Daher gegebenenfalls auch dies abändern.
Wenn man nicht über 1 GB an RAM verfügt, muss man gegebenenfalls die Komprimierungsrate herunterstellen.
Dies geschieht mit dem Parameter -mx=X in der sevenzp=...-Zeile. X bezeichnet dabei die Komprimierungsrate, die zwischen 0 und 9 sein darf, wobei 0 keine Komprimierung bedeutet.
Danach muss das Script ausführbar gemacht werden:
chmod a+x znc-sicherung.sh
Jetzt ist es an der Zeit, das Script einmal manuell zu testen:
./znc-sicherung.sh
Wenn alles klappt, geht es weiter mit der Crontab, ansonsten müsst ihr noch einmal das Skript nach Fehlern durchsuchen.
Crontab
Euer crontab könnt ihr wie folgt bearbeiten:
crontab -e
Fügt dort diese Zeile ein:
40 0 * * 4 cd /home/znc; ./znc-sicherung.sh >/dev/null 2>&1
Beispiel:
* * * * * cd /home/znc/znc/bin; ./znc >/dev/null 2>&1
40 0 * * 4 cd /home/znc; ./znc-sicherung.sh >/dev/null 2>&1
Jede Minute wird überprueft, ob ZNC läuft, wenn nicht, wird ZNC neu gestartet. Die zweite Zeile startet das Backup-Skript einmal in der Woche jeweils Donnerstags (4) um 0:40 Uhr (40 0).


News