Ziel ist die Erstellung eines DEB-Pakets aus einem RPM-Paket, was ohne großen Aufwand auf viele Debian-Rechner verteilt werden kann.
Der erstellten DEB-Pakete werden auf einem Webserver zur Verfügung gestellt.
Besorge Dir die neuesten RPMs von der AVIRA-Homepage und kopiere sie auf einen DEBIAN-Rechner.
Es wird das antivir-dazuko-3.1.3.4_6.6-1.i586.rpm und antivir-server-3.1.3.4-1.i586.rpm gebraucht (wahrscheinlich gibts schon eine neuere Version).
Installiere auf dem DEBIAN-Rechner das Programm „alien“
:
apt-get install alien
Es werden wahrscheinlich noch viele andere Pakete mit nachinstalliert.
Entpacke jetzt das RPM-Paket antivir-dazuko-3.1.3.4_6.6-1.i586.rpm
mit:
alien -csg antivir-dazuko-3.1.3.4_6.6-1.i586.rpm
Es wir ein Verzeichnis antivir-dazuko-3.1.3.4_6.6 angelegt.
Ändere jetzt den Verzeichnisnamen debian
in DEBIAN
mv antivir-dazuko-3.1.3.4_6.6/debian antivir-dazuko-3.1.3.4_6.6/DEBIAN
Ändere jetzt die Dateirechte aller Dateien in antivir-dazuko-3.1.3.4_6.6/DEBIAN nach 555
:
chmod 755 antivir-dazuko-3.1.3.4_6.6/DEBIAN
Ändere die Datei antivir-dazuko-3.1.3.4_6.6/DEBIAN/postinst so, dass die benötigten Pakete vorher installiert werden:
... cd /usr/lib/AntiVir/dazuko /bin/sh install_dazuko.sh > /dev/null 2>&1 if [ $? -ne 0 ]; then apt-get install gcc make linux-headers-`uname -r` sh install_dazuko.sh if [ $? -ne 0 ]; then echo "..." exit 1 fi fi ...
Ändere die Datei antivir-dazuko-3.1.3.4_6.6/DEBIAN/postrm so, dass die nicht benötigten Pakete vorher deinstalliert werden:
#!/bin/sh if [ -d /usr/lib/AntiVir/dazuko/dazukofs-3.0.0-rc4_`uname -r| cut -d "-" -f1` ] ; then cd /usr/lib/AntiVir/dazuko/dazukofs-3.0.0-rc4_`uname -r| cut -d "-" -f1` #pwd make clean fi grep dazukofs /etc/fstab f=$? if [ $f -eq 0 ]; then echo "please check the /etc/fstab" fi
Ändere die Datei antivir-dazuko-3.1.3.4_6.6/DEBIAN/control entsprechend deinen Vorlieben:
Source: antivir-dazuko Section: utils Priority: extra Maintainer: meinname <name@domain.de> Package: antivir-dazuko Architecture: i386 Depends: make Installed-Size: 580 Description: Avira AntiVir Dazuko version: 3.1.3.3.4 ...
Jetzt bauen wir die DEB-Datei mit:
dpkg -b antivir-dazuko-3.1.3.4_6.6 antivir-dazuko-3.1.3.4_6.6-1.i586.deb
Das Paket kann schon mal direkt wie folgt installiert werden:
dpkg -i antivir-dazuko-3.1.3.4_6.6-1.i586.deb
Wenn das Dazuko-Modul trotzdem nicht startet , kann es nachträglich wie folgt kompiliert werden:
apt-get install gcc make linux-headers-`uname -r` /usr/lib/AntiVir/dazuko/install_dazuko.sh
Entpacke jetzt das RPM-Paket antivir-server-3.1.3.4-1.i586.rpm
mit:
alien -csg antivir-server-3.1.3.4-1.i586.rpm
Es wir ein Verzeichnis antivir-server-3.1.3.4 angelegt.
Ändere jetzt den Verzeichnisnamen debian
in DEBIAN
mv antivir-server-3.1.3.4/debian antivir-server-3.1.3.4/DEBIAN
Ändere jetzt die Dateirechte aller Dateien in antivir-server-3.1.3.4/DEBIAN nach 555
:
chmod 755 antivir-server-3.1.3.4/DEBIAN
Ändere jetzt alle Vorkommen von chkconfig
in den Installationsscripten in update-rc.d
:
Suche die erforderlichen Stellen mit:
grep -i chkconfig -r antivir-server-3.1.3.4/
Beispiel:
type chkconfig > /dev/null 2>&1
muss in type update-rc.d > /dev/null 2>&1
geändert werden.
chkconfig –add avguard
muss in update-rc.d avguard defaults
geändert werden.
chkconfig –del avguard
muss in update-rc.d -f avguard remove
geändert werden.
Die Datei antivir-server-3.1.3.4/DEBIAN/control
muss wie folgt geändert werden:
... package: antivir-server Depends: antivir-dazuko Installed-Size: 54200 ... version: 3.1.3.3.4
Ändere jetzt den Konfigurationseintrag für Deinen eigenen lokalen Updateserver wenn dieser im eigenen Netz vorhanden ist
Dazu ist die Datei antivir-server-3.1.3.4/etc/avira/avupdate-guard.conf
mit einem Editor zu öffnen:
Ändere den alten Eintrag internet-srvs=…
auf den gewünschten Server. (z.B.http://myavirasrv:7080)
Kopiere jetzt Deine Lizenzdatei hbedv.key in das Verzeichnis antivir-server-3.1.3.4/usr/lib/AntiVir/guard/
.
Jetzt bauen wir die DEB-Datei mit:
dpkg -b antivir-server-3.1.3.4 antivir-server-3.1.3.4-1.i586.deb
Anschließend können wir die Datei direkt installieren:
dpkg -i antivir-server-3.1.3.4-1.i586.deb
Nach erfolgter Installation muss noch die /etc/fstab
konfiguriert, der Virenscanner erstmals gestartet und upgedatet werden:
echo "/home /home dazukofs">>/etc/fstab && echo "">>/etc/fstab && mount -a avguard restart avupdate-guard
Fertig.
Die beiden DEB-Dateien können jetzt auf einen internen Webserver gelegt werden und von da aus installiert werden.
Fehler:
-Es gibt eine Datei /usr/lib/AntiVir/guard/gui/src
im RPM-Paket. Das sollte jedoch ein Verzeichnis sein.
Lösung:
rm -rf /usr/lib/AntiVir/guard/gui/src && mkdir /usr/lib/AntiVir/guard/gui/src
Fehler:
Wenn eine Datei /usr/lib/AntiVir/guard/UPDATE_GUARD_BIN_MISSING
existiert, wird bei jedem Update eine Fehlermeldung:
Error: Program execution error: The program being executed exited with error code 1
ausgeworfen.
Lösung:
Deshalb diese Datei einfach löschen und erneut ein avupdate-guard
versuchen.
-Konfiguration wenn ein lokaler AVIRA-Server vorhanden ist:
Die entscheidenden Einträge in der /etc/avira/avupdate-guard.conf sind:
... intranet intranet-srvs=http://meinIUMSRV:7080 product-root=/update ignore-srvs-list ...
Fehler:
wenn diese Einträge nicht gemacht sind, geht der Client zuerst zum lokalen Server und anschließend zum externen Server.(was i.a. fehlschlägt wegen einer Firewall).
Dann wird auch die Datei /usr/lib/AntiVir/guard/UPDATE_GUARD_BIN_MISSING
generiert.
Lösung:
die Datei muss manuell gelöscht werden.
Fehler:
dazuko-Modul wird beim Start nicht geladen.
Lösung:
Modul in die initrd einbauen:
echo "dazukofs" >>/etc/initramfs-tools/modules update-initramfs -u -k all