Re: tar und senden via ssh schlaegt fail

From: Peter Ross <Peter.Ross(at)bogen.in-berlin.de>
Date: Wed, 20 Jul 2011 11:15:33 +1000

Hallo,

moechte Euch nur die Aufloesung des Knotens mitteilen, wie hier berichtet:

http://lists.freebsd.org/pipermail/freebsd-stable/2011-July/063322.html

In Kurzform: ich konnte via "vmstat -z" Fehler unter "NetGraph data
items" finden,

net.graph.maxdata=65536 in my /boot/loader.conf behob das Problem.

Meine Vermutung: eine netzwerkseitig beschaeftigte VirtuaBox wie mein
Mailserver stresst das Netgraph Subsystem.

Ich frage mich, wo diese Information am besten aufgehoben ist, damit
nicht mehr Leute (bis jetzt mindestens 3) darueber stolpern.

Es gruesst
Peter

Quoting "Peter Ross" <Peter.Ross(at)bogen.in-berlin.de>:

> Quoting "Peter Ross" <Peter.Ross(at)bogen.in-berlin.de>:
>
>
>> Quoting "Oliver Fromme" <olli(at)lurza.secnetix.de>:
>>> Peter Ross wrote:
>>>
>> [tar -czp -f - . | ssh admin(at)backup "cat > /backups//backups.tgz" ]
>>>> Bei einem ziemlich grossen Verzeichnisbaum (200G) geht das in die
>>>> > Hose, mit
>>>>
>>>> Write failed: Cannot allocate memory
>>>
>>> Bei den beteiligten Prozessen (FreeBSD-seitig) gibt es nur
>>> zwei Stellen, wo so eine Meldung erzeugt werden kann: In
>>> libarchive (wird von tar verwendet) und in ssh, in beiden
>>> Fällen nach einem fehlgeschlagenen write(2). Allerdings
>>> kann write(2) laut FreeBSD-Doku kein ENOMEM liefern, und
>>> ich wüßte auch nicht, welchen Sinn das haben sollte.
>
> Ich bin nun sicher, dass ssh in einem write(2) ENOMEM zurueckliefert
> (habe das soweit gedebuged), in
> /usr/src/crypto/openssh/roaming_common.c
>
> ssize_t
> roaming_write(int fd, const void *buf, size_t count, int *cont)
> {
> ssize_t ret;
>
> ret = write(fd, buf, count);
>
> Was natuerlich nicht ausschliesst, dass "weiter unten" im Kernel
> irgendwo die Allozierung eines Speicherplatzes fehlschlaegt, ein
> ENOMEM eben.
>
> Ich kann den Fehler uebrigens wunderbar nachvollziehen - als auch abstellen:
>
> Ich habe eine VirtualBox laufen - sowie ich die abschalte, klappt alles.
>
> Auch, wenn ich anderweitig Speicher knapp halte, mit lookbusy, und
> es macht auch nichts, dass die Kernelmodule fuer VirtualBox noch
> geladen sind.
>
> Ich kann uebrigens auch endlos viel ueber loopback interface
> verschicken, nur wenn ich es an das bce(4)-Interface sende (selbst
> wenn es zur laufenden, zu bge bridged, Virtualbox ist), geht es
> schief.
>
> Anyway, ich wuerde jetzt gern ein wenig tiefer in den Kernel gucken
> - welchen Weg nimmt das write(2) Richtung Netzwerk weiter?
>
> Zum anderen: Ich bin derzeit auf der Stable-Mailingliste in der Diskussion:
> http://lists.freebsd.org/pipermail/freebsd-stable/2011-July/063172.html
>
> Scott hat eine andere Netzwerkkarte, aber es gab halt jemand anders,
> der im September genau das Gleiche Problem mit "meiner" Netzkarte
> hatte.
>
> Eine Frage in die Runde: Wer nutzt VirtualBox und hat
> positive/negative Erfahrungen mit dem Senden grosser Files/snapshots
> etc. via ssh?
>
> Dankbar fuer alle Anregungen
> Peter
>
>
>
>
> To Unsubscribe: send mail to majordomo(at)de.FreeBSD.org
> with "unsubscribe de-bsd-questions" in the body of the message
>

To Unsubscribe: send mail to majordomo(at)de.FreeBSD.org
with "unsubscribe de-bsd-questions" in the body of the message
Received on Wed 20 Jul 2011 - 03:15:37 CEST

search this site