fail2ban setup.py meldet fehler

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
NDMR
User
Beiträge: 2
Registriert: Donnerstag 27. März 2008, 22:59

Hallo,

ich habe die datei fail2ban-0.8.2.tar.bz2 entpackt.

Im verzeichnis fail2ban-0.8.2 setup.py install ausgeführt.

Ich bekomme follgenden Fehler:

Code: Alles auswählen

/fail2ban-0.8.2$ python setup.py install
Traceback (most recent call last):
  File "setup.py", line 29, in ?
    from distutils.core import setup
ImportError: No module named distutils.core
Hier die setup.py

Code: Alles auswählen

#!/usr/bin/python

# This file is part of Fail2Ban.
#
# Fail2Ban is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version.
#
# Fail2Ban is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with Fail2Ban; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA

# Author: Cyril Jaquier
# 
# $Revision: 671 $

__author__ = "Cyril Jaquier"
__version__ = "$Revision: 671 $"
__date__ = "$Date: 2008-03-06 00:12:41 +0100 (Thu, 06 Mar 2008) $"
__copyright__ = "Copyright (c) 2004 Cyril Jaquier"
__license__ = "GPL"

from distutils.core import setup
from common.version import version
from os.path import isfile, join, isdir
from sys import argv
from glob import glob

longdesc = '''
Fail2Ban scans log files like /var/log/pwdfail or
/var/log/apache/error_log and bans IP that makes
too many password failures. It updates firewall rules
to reject the IP address or executes user defined
commands.'''

setup(
	name = "fail2ban", 
	version = version, 
	description = "Ban IPs that make too many password failure", 
	long_description = longdesc, 
	author = "Cyril Jaquier", 
	author_email = "cyril.jaquier@fail2ban.org", 
	url = "http://www.fail2ban.org", 
	license = "GPL", 
	platforms = "Posix", 
	scripts =	[
					'fail2ban-client', 
					'fail2ban-server', 
					'fail2ban-regex'
				], 
	packages =	[
					'common', 
					'client', 
					'server'
				], 
	data_files =	[
						('/etc/fail2ban', 
							glob("config/*.conf")
						), 
						('/etc/fail2ban/filter.d', 
							glob("config/filter.d/*.conf")
						), 
						('/etc/fail2ban/action.d', 
							glob("config/action.d/*.conf")
						)
					]
)

# Do some checks after installation
# Search for obsolete files.
obsoleteFiles = []
elements =	{
				"/etc/":
					[
						"fail2ban.conf"
					], 
				"/usr/bin/":
					[
						"fail2ban.py"
					], 
				"/usr/lib/fail2ban/firewall/":
					[
						"iptables.py", 
						"ipfwadm.py", 
						"ipfw.py"
					],
				"/usr/lib/fail2ban/":
					[
						"version.py", 
						"protocol.py"
					]
			}

for directory in elements:
	for f in elements[directory]:
		path = join(directory, f)
		if isfile(path):
			obsoleteFiles.append(path)

if obsoleteFiles:
	print
	print "Obsolete files from previous Fail2Ban versions were found on " \
		  "your system."
	print "Please delete them:"
	print
	for f in obsoleteFiles:
		print "\t" + f
	print

if isdir("/usr/lib/fail2ban"):
	print
	print "Fail2ban is not installed under /usr/lib anymore. The new " \
		  "location is under /usr/share. Please remove the directory " \
		  "/usr/lib/fail2ban and everything under this directory."
	print

# Update config file
if argv[1] == "install":
	print
	print "Please do not forget to update your configuration files."
	print "They are in /etc/fail2ban/."
	print
Auf dem Server ist Suse 10.1 und Python 2.4

Könnt ihr mir helfen?

Gruß NDMR
audax
User
Beiträge: 830
Registriert: Mittwoch 19. Dezember 2007, 10:38

Mr Obvious sagt:
Installiere das Modul "distutils"!
Wie du das machst, solltest du selbst wissen wenn du einen Server hast.
NDMR
User
Beiträge: 2
Registriert: Donnerstag 27. März 2008, 22:59

Hallo audax,

vielen dank schon mal für deine Hilfe.

Ich habe das Modul Distutils-1.0.2 gefunden. Leider bringt die Installation auch ein Fehler mit sich.

Fehler:

Code: Alles auswählen

/Distutils-1.0.2$ python setup.py install
Traceback (most recent call last):
  File "setup.py", line 30, in ?
    packages = ['distutils', 'distutils.command'],
  File "/Distutils-1.0.2/distutils/core.py", line 101, in setup
    _setup_distribution = dist = klass(attrs)
  File "/Distutils-1.0.2/distutils/dist.py", line 130, in __init__
    setattr(self, method_name, getattr(self.metadata, method_name))
AttributeError: DistributionMetadata instance has no attribute 'get___doc__'
Hast du hierfür auch ein Tipp für mich?

PS: Ich weiß das man von den Vollprofis immer zuhören bekommt, das musst du wissen usw. Aber jeder hat mal klein angefangen...

Es will mir nicht gegönnt sein, das fail2ban auf meinem Server läuft.

Gruß NDMR
Leonidas
Python-Forum Veteran
Beiträge: 16025
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

audax hat geschrieben:Installiere das Modul "distutils"!
Eigentlich heißt das Paket wohl eher ``python-devel`` auf Suse.
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice
Darii
User
Beiträge: 1177
Registriert: Donnerstag 29. November 2007, 17:02

NDMR hat geschrieben:PS: Ich weiß das man von den Vollprofis immer zuhören bekommt, das musst du wissen usw. Aber jeder hat mal klein angefangen...
Aber nicht mit nem rootserver. Das hat nichts mit klein zu tun, das ist grob fahrlässig.
Leonidas
Python-Forum Veteran
Beiträge: 16025
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

Davon mal abgesehen müsste es fail2ban eigentlich in den Suse-Repositories geben, warum nutzt du nicht das?
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice
Antworten