Re: tar und senden via ssh schlaegt fail

From: Peter Ross <Peter.Ross(at)bogen.in-berlin.de>
Date: Thu, 07 Jul 2011 16:15:30 +1000

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
Received on Thu 07 Jul 2011 - 08:15:36 CEST

search this site