libc6 bei upgrade zerschossen

Du kommst mit der Installation nicht voran oder willst noch was nachfragen? Schau auch in den "Tipps und Tricks"-Bereich.
Antworten
sws
Beiträge: 16
Registriert: 22.05.2013 13:16:25

libc6 bei upgrade zerschossen

Beitrag von sws » 22.05.2013 13:25:18

Hallo zusammen,

habe heute ein Upgrade von squeeze zu wheezy durchgeführt. Bei dem Bildschirm, wo man die Konfiguration des XServers bestätigen soll, ist meine Netzverbindung zur ssh abgeschmiert. Nach einem erneuten login kam ich nicht wieder in die Installation zurück. Ich habe daraufhin den Prozess von

Code: Alles auswählen

# apt-get dist-upgrade
gestoppt, das lockfile entfernt und das upgrade wiederholt. Mit der folgenden Fehrlermeldung bricht dies jetzt ab:

Code: Alles auswählen

Probieren Sie »apt-get -f install«, um dies zu korrigieren:
Die folgenden Pakete haben unerfüllte Abhängigkeiten:
 libc-dev-bin : Hängt ab von: libc6 (< 2.12) aber 2.13-38 soll installiert werden
 libc6-dev : Hängt ab von: libc6 (= 2.11.3-4) aber 2.13-38 soll installiert werden
E: Unerfüllte Abhängigkeiten. Versuchen Sie »apt-get -f install« ohne Angabe eines Pakets (oder geben Sie eine Lösung an).
Wenn ich versuche, libc6 oder libc6-i686 manuell zu installieren, kommt derselbe Fehler. Ebenso, wenn ich es mit

Code: Alles auswählen

# apt-get -f install
versuche.

Es handelt sich um einen gehosteten VServer bei Strato.
Jede Hilfe ist wirklich sehr willkommen.

Gruß,
Sebastian

Benutzeravatar
CH777
Beiträge: 1466
Registriert: 27.05.2008 16:37:17

Re: libc6 bei upgrade zerschossen

Beitrag von CH777 » 22.05.2013 13:29:46

sws hat geschrieben:

Code: Alles auswählen

Die folgenden Pakete haben unerfüllte Abhängigkeiten:
 libc-dev-bin : Hängt ab von: libc6 (< 2.12) aber 2.13-38 soll installiert werden
 libc6-dev : Hängt ab von: libc6 (= 2.11.3-4) aber 2.13-38 soll installiert werden
Da es sich nur um dev-Pakete handelt könntest du die zwei (libc-dev-bin, libc6-dev) einfach deinstallieren.

sws
Beiträge: 16
Registriert: 22.05.2013 13:16:25

Re: libc6 bei upgrade zerschossen

Beitrag von sws » 22.05.2013 13:35:39

Alos einfach mit

Code: Alles auswählen

# apt-get remove libc-dev-bin, libc6-dev 
, ohne dass etwas kaputtgeht?

rendegast
Beiträge: 15041
Registriert: 27.02.2006 16:50:33
Lizenz eigener Beiträge: MIT Lizenz

Re: libc6 bei upgrade zerschossen

Beitrag von rendegast » 22.05.2013 14:02:19

Versuche es mal mit aptitude.

Ein solches Upgrade sollte eine laufende ssh-Verbindung eigentlich nicht beeinträchtigen,
noch nicht einmal wenn der ssh-Server dabei neu gestartet wird.
Vielleicht einfach nur Zufall, diese Unterbrechung?
Da gibt es wohl Möglichkeiten, so etwas zBsp. per 'screen' laufen zu lassen,
was die Möglichkeit böte, eine solche session nach erneutem Login weiterzuführen.
mfg rendegast
-----------------------
Viel Eifer, viel Irrtum; weniger Eifer, weniger Irrtum; kein Eifer, kein Irrtum.
(Lin Yutang "Moment in Peking")

sws
Beiträge: 16
Registriert: 22.05.2013 13:16:25

Re: libc6 bei upgrade zerschossen

Beitrag von sws » 22.05.2013 14:11:54

Hab's versucht:

Code: Alles auswählen

# apt-get remove libc-dev-bin libc6-dev
Paketlisten werden gelesen... Fertig
Abhängigkeitsbaum wird aufgebaut
Statusinformationen werden eingelesen... Fertig
Probieren Sie »apt-get -f install«, um dies zu korrigieren:
Die folgenden Pakete haben unerfüllte Abhängigkeiten:
 uuid-dev : Hängt ab von: libc6-dev soll aber nicht installiert werden oder
                           libc-dev
 zlib1g-dev : Hängt ab von: libc6-dev soll aber nicht installiert werden oder
                             libc-dev
E: Unerfüllte Abhängigkeiten. Versuchen Sie »apt-get -f install« ohne Angabe eines Pakets (oder geben Sie eine Lösung an).
Scheint ja ein ziemlicher Flurschaden zu sein ...

Nochmals in aller Ruhe:

Code: Alles auswählen

# apt-get dist-upgrade
Paketlisten werden gelesen... Fertig
Abhängigkeitsbaum wird aufgebaut
Statusinformationen werden eingelesen... Fertig
Probieren Sie »apt-get -f install«, um dies zu korrigieren.
Die folgenden Pakete haben unerfüllte Abhängigkeiten:
 libc6 : Hängt ab von: libc-bin (= 2.11.3-4) aber 2.13-38 ist installiert
         Empfiehlt: libc6-i686 ist aber nicht installiert
 locales : Hängt ab von: glibc-2.13-1
E: Unerfüllte Abhängigkeiten. Versuchen Sie, -f zu benutzen.

Code: Alles auswählen

)# apt-get -f install
Paketlisten werden gelesen... Fertig
Abhängigkeitsbaum wird aufgebaut
Statusinformationen werden eingelesen... Fertig
Abhängigkeiten werden korrigiert... fehlgeschlagen.
Die folgenden Pakete haben unerfüllte Abhängigkeiten:
 libc6 : Hängt ab von: libc-bin (= 2.11.3-4) aber 2.13-38 ist installiert
         Empfiehlt: libc6-i686 ist aber nicht installiert
 locales : Hängt ab von: glibc-2.13-1
E: Fehler: Unterbrechungen durch pkgProblemResolver::Resolve hervorgerufen; dies könnte durch zurückgehaltene Pakete verursacht worden sein.
E: Abhängigkeiten konnten nicht korrigiert werden

Code: Alles auswählen

)# apt-get -f install libc6-i686
Paketlisten werden gelesen... Fertig
Abhängigkeitsbaum wird aufgebaut
Statusinformationen werden eingelesen... Fertig
Probieren Sie »apt-get -f install«, um dies zu korrigieren:
Die folgenden Pakete haben unerfüllte Abhängigkeiten:
 libc-dev-bin : Hängt ab von: libc6 (< 2.12) aber 2.13-38 soll installiert werden
 libc6-dev : Hängt ab von: libc6 (= 2.11.3-4) aber 2.13-38 soll installiert werden
E: Unerfüllte Abhängigkeiten. Versuchen Sie »apt-get -f install« ohne Angabe eines Pakets (oder geben Sie eine Lösung an).
Ich würde jetzt ungern ein Komplett-Backup von vor dem Upgrade aufspielen wollen.
Gruß,
Sebastian

rendegast
Beiträge: 15041
Registriert: 27.02.2006 16:50:33
Lizenz eigener Beiträge: MIT Lizenz

Re: libc6 bei upgrade zerschossen

Beitrag von rendegast » 22.05.2013 14:20:57

Versuche es mal mit aptitude, ist da flexibler.
Wenn dessen erster Lösungsvorschlag nicht genehm ist,
auch die weiteren mal durchsehen.

Scheint ja ein ziemlicher Flurschaden zu sein ...
Wie oben schon gesagt hängt es eigentlich nur an den beiden
libc-dev-bin
libc6-dev
Die beiden könntest Du auch per 'dpkg -P' entfernen, eventuell per '--force....'.
Was die als entfernt jedoch auslösen könnten?
mfg rendegast
-----------------------
Viel Eifer, viel Irrtum; weniger Eifer, weniger Irrtum; kein Eifer, kein Irrtum.
(Lin Yutang "Moment in Peking")

sws
Beiträge: 16
Registriert: 22.05.2013 13:16:25

Re: libc6 bei upgrade zerschossen

Beitrag von sws » 22.05.2013 14:29:26

Sorry wenn ich immer so weiter frage, aber

# aptitude dist-upgrade ergibt folgendes am Schluss:

Code: Alles auswählen

Hole:11 ftp://ftp.stratoserver.net/pub/linux/debian/ wheezy/main dovecot-mysql i386 1:2.1.7-7 [342 kB]
8.770 kB wurden in 9 s heruntergeladen (921 kB/s)
debconf: DbDriver "config": /var/cache/debconf/config.dat is locked by another process: Die Ressource ist zur Zeit nicht verfügbar
(Lese Datenbank ... 71551 Dateien und Verzeichnisse sind derzeit installiert.)
Vorbereitung zum Ersetzen von libc6 2.11.3-4 (durch .../libc6_2.13-38_i386.deb) ...
debconf: DbDriver "config": /var/cache/debconf/config.dat is locked by another process: Resource temporarily unavailable
dpkg: Fehler beim Bearbeiten von /var/cache/apt/archives/libc6_2.13-38_i386.deb (--unpack):
 Unterprozess neues pre-installation-Skript gab den Fehlerwert 1 zurück
configured to not write apport reports
                                      Fehler traten auf beim Bearbeiten von:
 /var/cache/apt/archives/libc6_2.13-38_i386.deb
E: Sub-process /usr/bin/dpkg returned an error code (1)
Ein Paket konnte nicht installiert werden. Versuche zu lösen:
dpkg: Abhängigkeitsprobleme verhindern Konfiguration von locales:
 locales hängt ab von glibc-2.13-1; aber:
  Paket glibc-2.13-1 ist nicht installiert.
dpkg: Fehler beim Bearbeiten von locales (--configure):
 Abhängigkeitsprobleme - verbleibt unkonfiguriert
Fehler traten auf beim Bearbeiten von:
 locales
aptitude hat soweit ich sehe keine weitere Lösung vorgeschlagen.

rendegast
Beiträge: 15041
Registriert: 27.02.2006 16:50:33
Lizenz eigener Beiträge: MIT Lizenz

Re: libc6 bei upgrade zerschossen

Beitrag von rendegast » 22.05.2013 14:33:00

Der Fehler ist aber anders geartet.
debconf: DbDriver "config": /var/cache/debconf/config.dat is locked by another process: Die Ressource ist zur Zeit nicht verfügbar
...
debconf: DbDriver "config": /var/cache/debconf/config.dat is locked by another process: Resource temporarily unavailable
Läuft da noch Deine vorher abgerissene Upgrade-Session? ZBsp.

Code: Alles auswählen

lsof | grep config.dat

ps axu | egrep -i "apt|dpkg"
Zuletzt geändert von rendegast am 22.05.2013 14:37:20, insgesamt 1-mal geändert.
mfg rendegast
-----------------------
Viel Eifer, viel Irrtum; weniger Eifer, weniger Irrtum; kein Eifer, kein Irrtum.
(Lin Yutang "Moment in Peking")

sws
Beiträge: 16
Registriert: 22.05.2013 13:16:25

Re: libc6 bei upgrade zerschossen

Beitrag von sws » 22.05.2013 14:37:01

Code: Alles auswählen

# lsof | grep config.dat
frontend  14729             root    4uW     REG              0,116     79742   37290019 /var/cache/debconf/config.dat
Muss ich den Prozess beenden?

rendegast
Beiträge: 15041
Registriert: 27.02.2006 16:50:33
Lizenz eigener Beiträge: MIT Lizenz

Re: libc6 bei upgrade zerschossen

Beitrag von rendegast » 22.05.2013 14:40:27

Code: Alles auswählen

$ locate frontend | grep deb
/usr/share/debconf/frontend
/usr/share/doc/deborphan/README.frontends
Wenn Dein eigentlich geplantes Upgrade gerade nicht von Dir gestartet ist, so gehört der Prozeß nicht dazu.

Code: Alles auswählen

pstree -p | less
und nach 14729 suchen.
Ähnlich übersichtlich wäre auch die Baumansicht von 'htop' (falls installiert).
mfg rendegast
-----------------------
Viel Eifer, viel Irrtum; weniger Eifer, weniger Irrtum; kein Eifer, kein Irrtum.
(Lin Yutang "Moment in Peking")

sws
Beiträge: 16
Registriert: 22.05.2013 13:16:25

Re: libc6 bei upgrade zerschossen

Beitrag von sws » 22.05.2013 14:46:50

$ locate frontend | grep deb
gibt

Code: Alles auswählen

locate: kann stat () `/var/lib/mlocate/mlocate.db' nicht durchführen: Datei oder Verzeichnis nicht gefunden
pstree -p | less
gibt

Code: Alles auswählen

     |-dpkg(14723)---frontend(14729)-+-preinst(14736)
        |                               `-whiptail(14741)
Also werde ich die pid 14729 killen und dann das upgrade nochmals starten.

sws
Beiträge: 16
Registriert: 22.05.2013 13:16:25

Re: libc6 bei upgrade zerschossen

Beitrag von sws » 22.05.2013 14:51:55

Hallo rendegast,

ich möchte mich herzlich bedanken. Deine Hilfe war großartig: das upgrade läuft wieder, die Masken zu diversen Abfragen tauchen wieder auf, alles im grünen Bereich (hoffentlich :-{ ). :THX:

Viele Grüße,
Sebastian

rendegast
Beiträge: 15041
Registriert: 27.02.2006 16:50:33
Lizenz eigener Beiträge: MIT Lizenz

Re: libc6 bei upgrade zerschossen

Beitrag von rendegast » 22.05.2013 15:31:20

Nach dem Durchlauf heißt es /etc/ auf Dateien *dpkg* sichten und gegebenenfalls Konfigurationen migrieren.
Tip, diesen eine entsprechende Umbenennung geben,
damit bei späteren solchen Migrations-(Problem-)Dateien diese auch auffallen.
Also von Zeit zu Zeit nach solchen suchen.

Die Liste 'dpkg -l | egrep -v "^ii" ' auf rc-Pakete sichten und säubern.
Eventuell benötigte Konfigurationen davon sichern, sollte sich zumeist auf Dateien/Verzeichnisse in /etc/ beziehen.

Abschlußprüfungen

Code: Alles auswählen

apt-get -s dist-upgrade
aptitude -s dist-upgrade

apt-get -s install
aptitude -s install

apt-get -s autoremove
Gegebenenfalls abgleichen, einstellen.

Code: Alles auswählen

aptitude search "?obsolete"

deborphan
deborphan --ignore-recommends
Sichten.
mfg rendegast
-----------------------
Viel Eifer, viel Irrtum; weniger Eifer, weniger Irrtum; kein Eifer, kein Irrtum.
(Lin Yutang "Moment in Peking")

sws
Beiträge: 16
Registriert: 22.05.2013 13:16:25

Re: libc6 bei upgrade zerschossen

Beitrag von sws » 23.05.2013 09:09:16

Hoffentlich artet das jetzt nicht in ein Upgrade-Tutorial aus, aber ich hab doch noch Fragen :oops:

Abschlußprüfungen

Code: Alles auswählen

apt-get -s dist-upgrade
aptitude -s dist-upgrade

apt-get -s install
aptitude -s install

Die ersten drei Befehle sind O.K., nichts zu veranlassen. Doch beim vierten Befehl kommt eine Flut von Vorschlägen:

Code: Alles auswählen

)# aptitude -s install
Die folgenden NEUEN Pakete werden zusätzlich installiert:
  acl apache2-mpm-worker{b} calibre{b} calibre-bin{b} colord gvfs-common gvfs-daemons{b} gvfs-libs krb5-locales libaacs0 libbluray1
  libglapi-mesa libgphoto2-l10n libgusb2 libieee1284-3 libmozjs10d libpam-cap libsane{b} libsane-common libsane-extras
  libsane-extras-common libxcb-glx0 python-beautifulsoup python-cherrypy3 python-clientform python-cssutils python-dateutil
  python-django-tagging{b} python-imaging python-lxml python-mechanize python-pypdf sane-utils
Die folgenden Pakete werden ENTFERNT:
  enchant{u} glib-networking{u} glib-networking-common{u} glib-networking-services{u} gsettings-desktop-schemas{u} libarchive1{u}
  libarchive12{u} libavahi-glib1{u} libbind9-60{u} libcdio-cdda0{u} libcdio-cdda1{u} libcdio-paranoia0{u} libcdio-paranoia1{u}
  libcdio10{u} libcdio13{u} libdb4.7-java{u} libdns69{u} libeggdbus-1-0{u} libenchant1c2a{u} libexiv2-9{u} libfm-gtk0{u} libfm0{u}
  libfs6{u} libgcr0{u} libgmp3c2{u} libgp11-0{u} libgraphite3{u} libgs8{u} libgsf-1-114{u} libgsf-1-common{u} libhunspell-1.2-0{u}
  libicu44{u} libidl0{u} libimobiledevice1{u} libisc62{u} libisccc60{u} libisccfg62{u} liblwres60{u} libmagickcore3{u}
  libmagickcore3-extra{u} libmagickwand3{u} libmysqlclient16{u} libnettle4{u} libnotify1{u} libntfs10{u} libobparser21{u} libobrender21{u}
  liborbit2{u} libproxy0{u} libraptor1{u} librasqal2{u} librpmio1{u} libsmbclient{u} libsoup-gnome2.4-1{u} libsoup2.4-1{u} libsqlite0{u}
  libt1-5{u} libtalloc2{u} libtextcat-data-utf8{u} libtokyocabinet8{u} libwbclient0{u} libwebkit-1.0-2{u} libwebkit-1.0-common{u}
  libwpd8c2a{u} libwpg-0.1-1{u} libwps-0.1-1{u} libxcb-atom1{u} libxcb-aux0{u} libxcb-event1{u} libxxf86dga1{u} ntfsprogs{u} radeontool{u}
  ttf-lyx{u} x11-apps{u} x11-session-utils{u} x11-xfs-utils{u} xinit{u}
Die folgenden Pakete werden EMPFOHLEN, aber NICHT installiert:
  gvfs python-chardet python-dnspython
0 Pakete aktualisiert, 33 zusätzlich installiert, 77 werden entfernt und 0 nicht aktualisiert.
20,5 MB/28,4 MB an Archiven müssen heruntergeladen werden. Nach dem Entpacken werden 5.990 kB frei werden.
Die folgenden Pakete haben verletzte Abhängigkeiten:
 calibre-bin : Hängt ab von: libchm1 (>= 0.40) aber es soll nicht installiert werden.
               Hängt ab von: libpodofo0.9.0 aber es soll nicht installiert werden.
               Hängt ab von: libpoppler19 (>= 0.18.4) aber es soll nicht installiert werden.
 libsane : Hängt ab von: libexif12 aber es soll nicht installiert werden.
           Hängt ab von: libgphoto2-2 (>= 2.4.10.1) aber es soll nicht installiert werden.
           Hängt ab von: libgphoto2-port0 (>= 2.4.10.1) aber es soll nicht installiert werden.
           Hängt ab von: libv4l-0 (>= 0.5.0) aber es soll nicht installiert werden.
 python-django-tagging : Hängt ab von: python-django (>= 1.0) aber es soll nicht installiert werden.
 gvfs-daemons : Hängt ab von: x11-utils aber es soll nicht installiert werden.
 apache2-mpm-prefork : Kollidiert mit: apache2-mpm, welches ein virtuelles Paket ist.
 calibre : Hängt ab von: python-feedparser aber es soll nicht installiert werden.
           Hängt ab von: python-pyparsing aber es soll nicht installiert werden.
           Hängt ab von: python-chardet aber es soll nicht installiert werden.
           Hängt ab von: poppler-utils aber es soll nicht installiert werden.
 apache2-mpm-worker : Kollidiert mit: apache2-mpm, welches ein virtuelles Paket ist.
Die folgenden Aktionen werden diese Abhängigkeiten auflösen:

      Entfernen der folgenden Pakete:
1)      apache2-mpm-prefork
2)      egroupware
3)      egroupware-addressbook
4)      egroupware-bookmarks
5)      egroupware-calendar
6)      egroupware-core
7)      egroupware-developer-tools
8)      egroupware-egw-pear
9)      egroupware-emailadmin
10)     egroupware-etemplate
11)     egroupware-felamimail
12)     egroupware-filemanager
13)     egroupware-importexport
14)     egroupware-infolog
15)     egroupware-manual
16)     egroupware-news-admin
17)     egroupware-notifications
18)     egroupware-phpbrain
19)     egroupware-phpsysinfo
20)     egroupware-polls
21)     egroupware-projectmanager
22)     egroupware-registration
23)     egroupware-resources
24)     egroupware-sambaadmin
25)     egroupware-sitemgr
26)     egroupware-timesheet
27)     egroupware-tracker
28)     egroupware-wiki
29)     libapache2-mod-php5
30)     php5

      Beibehalten der folgenden Pakete in ihrer aktuellen Version:
31)     calibre [Nicht installiert]
32)     calibre-bin [Nicht installiert]
33)     colord [Nicht installiert]
34)     gvfs-daemons [Nicht installiert]
35)     libsane [Nicht installiert]
36)     python-django-tagging [Nicht installiert]
37)     sane-utils [Nicht installiert]

      Die folgenden Abhängigkeiten unaufgelöst lassen:
38)     calibre-bin empfiehlt calibre (>= 0.8.51+dfsg1-0.1)


Diese Lösung akzeptieren? [Y/n/q/?] q
Alle Anstrengungen, diese Abhängigkeiten aufzulösen, aufgegeben.
Abbruch.
Keine Ahnung, was ich machen soll oder will. Das Entfernen der Pakete zu EGroupware z.B. passt überhaupt nicht, deshalb hab ich doch den Server überhaupt. Ich kann auch nicht erkennen, ob es sich um alte Versionen handelt. Calibre installiere ich mit einem python-script von der Homepage von Calibre. Das Debian-Paket nutze ich gar nicht.

Code: Alles auswählen

aptitude search "?obsolete"

deborphan
deborphan --ignore-recommends

Hier bringt der erste Befehle eine ganze Reihe von Paketen. Soll ich die alle manuell löschen?

deborphan: bash: deborphan: Kommando nicht gefunden.

Gruss,
Sebastian

rendegast
Beiträge: 15041
Registriert: 27.02.2006 16:50:33
Lizenz eigener Beiträge: MIT Lizenz

Re: libc6 bei upgrade zerschossen

Beitrag von rendegast » 23.05.2013 15:12:20

Beim 'apt-get -s autoremove' sollte es dann ähnlich aussehen?
# aptitude -s install
...
Die folgenden Pakete werden ENTFERNT:
... libmagickwand3{u} libmysqlclient16{u} ...
Nur jetzt diese zwei,
sind aus squeeze, in wheezy existieren sie als libmagickwand5 libmysqlclient18.
Das wären also wirklich entfernbare.
Die folgenden NEUEN Pakete werden zusätzlich installiert:
... calibre{b} calibre-bin{b} ...
Calibre installiere ich mit einem python-script von der Homepage von Calibre. Das Debian-Paket nutze ich gar nicht.
Kann ich so jetzt nicht nachvollziehen, da
calibre recomm. calibre-bin depend. calibre, sonst aber nur ein suggest von ebook-reader / sisu.

Ich habe ja nicht geschrieben, daß keine Arbeit drin stecken könnte ;)



Im aptitude-Interface das ganze erstmal als normaler User (Tip) durchspielen.
(aptitude hat die Angewohnheit,
sich im Interface "geplante" Aktionen auch bei Abbruch des Programms zu merken,
was bei Ausübung als root eigentlich ungewollte Aktionen hinterlegen könnte.
Als normaler User durchgespielt ist mensch also vor solchen Ostereiern sicher.)
Dadurch lassen sich Abhängigkeiten ganz gut erkennen oder auflösen,
Holds oder (Not)Installs setzen usw. usf.
Hier bringt der erste Befehle eine ganze Reihe von Paketen. Soll ich die alle manuell löschen?
Diese haben im aptitude-Interface eine eigene Rubrik
"Obsolet and Locally Created" resp. "Veraltet und selbst erstellt".

Ich kann auch nicht erkennen, ob es sich um alte Versionen handelt.
Dafür

Code: Alles auswählen

apt-cache policy  PaketeNamen_oder_Namensbestandteile
aptitude versions  PaketeNamen_oder_Namensbestandteile
Dabei interpretiert aptitude eine Art regex,
bei beiden kann Namens-Completion eingesetzt werden (installiertes bash-completion).
Auch http://packages.debian.org/PaketName_od ... estandteil

deborphan: bash: deborphan: Kommando nicht gefunden.

Code: Alles auswählen

aptitude install deborphan
Solange aptitude in solchem Zustand ist, würde ich alle aptitude-Aktionen erstmal per '-s | --simulate' simulieren.
mfg rendegast
-----------------------
Viel Eifer, viel Irrtum; weniger Eifer, weniger Irrtum; kein Eifer, kein Irrtum.
(Lin Yutang "Moment in Peking")

Antworten