cygwin update Ursache Fehler "error: could not fork child-Prozess: Ressource vorübergehend nicht verfügbar."
Ich aktualisierte mein cygwin mit dem setup-x86_64.exe tool (version 2.873) auf Windows 7.
Ich brauchte Sie einige zusätzliche Pakete (meist zip/unzip etc).
Da bin ich dann aber immer den folgenden Fehler, wenn ich versuche, führen Sie die Cygwin-Terminal (die Verknüpfung verweist C:\cygwin64\bin\mintty.exe -ich /Cygwin-Terminal.ico -):
Error: could not fork child process: Resource temporarily unavailable.
DLL rebasing may be required. See 'rebaseall /rebase --help'.
Ich online recherchiert, wie man das rebaseall-Befehl beraten Sie in der Nachricht. Im wesentlichen die Empfehlung war, zu starten cygwin/bin/dash.exe und ausführen:
bin/rebaseall
Ich hab das ein paar mal mache ich auch das -v-Kommentar, und keine Fehler kommen wieder. Noch immer kann ich nicht starten Sie cygwin.
Ich auch versucht mit cygwin-x/XWin-server passiert nichts.
Ich schaute auf die setup-Protokollen in cygwin/var/log/setup.log
ich sehe keinen Fehler.
Ich versuchte, führen Sie das setup-Programm noch ein paar mal Neuinstallieren einige der Pakete, die ich schon hatte, das hat nicht geholfen weder.
Irgendwelche Ideen, wie kann ich erhalten, um zu arbeiten?
InformationsquelleAutor Charbel | 2016-04-04
Du musst angemeldet sein, um einen Kommentar abzugeben.
Einer meiner Kollegen hat ähnliche Fehler bei der Einweihung des terminal-SourceTree (Mingw32), und habe auch Fehler, wenn Sie versuchen, um
pull
,rebase
etc (alles, was nicht lokal). Er löste es durch die deinstallation Sourcetree, mit CCleaner zu reinigen sein registries (nicht sicher, ob das nötig war), neu gestartet und installiert Sourcetree wieder.Ich weiß, das ist etwas anders als das beschriebene problem durch die OP, aber es könnte noch lösbar sein, indem un - /re-Installation und die Reinigung der Register, und dies könnte auch helfen, die Zukunft Menschen finden, diese Frage mit den Sourcetree Problem (wie ich Tat).
Edit:
Ein anderer Kollege hatte das Problem auch, und er schaffte es, es zu beheben nur mit einem Neustart ohne un - /re-installation oder mit CCleaner.
das ist wohl der Weg, den ich gehen musste. Deinstallieren -> Crein registry -> Neustart -> Crein wieder -> Installieren Sie SourceTree. Dann habe ich aufgehört, immer alle Fehler.
Was für mich gearbeitet:deinstallieren SourceTree --> entfernen Sie alle Dateien im App-Daten, die im Zusammenhang mit SourceTree --> Neustart -> Installieren von SourceTree
Die Bearbeiten arbeitete für mich: Nur Neustart mein PC es behoben
InformationsquelleAutor Svend Hansen
Vom https://chromium.googlesource.com/chromium/src/+/master/docs/cygwin_dll_remapping_failure.md
Umgang mit wiederholten Fehlern der rebaseall zu ermöglichen cygwin ordnet
Manchmal DLLs, über die cygwin hat keine Kontrolle erhalten, abgebildet in cygwin
Prozesse an den Standorten, cygwin gewählt hat für seine Bibliotheken.
Dies ist gesehen worden, vor allem mit anti-virus-DLLs. Wenn dies Auftritt,
cygwin muss angewiesen werden, während der Stellungswechsel zu vermeiden, das Gebiet der
Speicher, in dem die DLL zugeordnet ist.
Hintergrund
Einige hintergrund-für diese ist verfügbar auf
http://www.dont-panic.cc/capi/2007/10/29/git-svn-fails-with-fatal-error-unable-to-remap/
Wegen des unix fork-Semantik (vermutlich), cygwin-Bibliotheken müssen
abgebildet in der gleichen Lage, in beide Eltern und Kind-von einer Gabel. Alle
cygwin-Bibliotheken haben einen Tipp in Ihnen, wie und wo Sie zugeordnet werden sollen
in einem Prozesse Adressraum, wenn diese Hinweise befolgt werden, wird jeder
Bibliothek zugeordnet werden, die in der gleichen Position in beiden Adressräumen.
Jedoch, Windows ist vollkommen glücklich mapping eine DLL-überall in der
Adressraum; der Hinweis ist nicht als Kontrolle. Die Zuordnung
Fehler tritt auf, wenn eine cygwin-Prozess gestartet wird und eine der Bibliotheken
zugeordnet werden kann die Position angegeben, die von einem Hauch.
/usr/bin/rebaseall änderungen der DLL-Tipps für alle cygwin
Bibliotheken, so dass keine inter-library-Konflikte; es tut dies
durch die Wahl eines zusammenhängenden, aber sich nicht überschneiden Bibliothek layout ab
an einer Basis-Adresse und Arbeitsbedingungen nach unten. Dieser Prozess stellt sicher, dass es
keine intra-cygwin Konflikte, aber kann nicht mit Konflikten umgehen mit
externe DLLs, die in der cygwin-Prozess Adressräume
(z.B. anti-virus-DLLs).
In diesem Fall behandeln, müssen Sie herausfinden, was die problematische
nicht-cygwin-Bibliothek ist, wo es im Adressraum, und das tun die
Stellungswechsel, so dass keine cygwin-Hinweise anzeigen-Bibliotheken, die Lage.
Details
sysinternals
DLLs in diesem Prozess, die nicht Aussehen wie cygwin-DLLs (wie AV). Hinweis
die Lage der Bibliotheken (es wird in der Regel nur die eine).
ash /usr/bin/rebaseall -b <base address>
(Dieser Befehl kann auch eine-v
flag, wenn Sie möchten, um zu sehen, die DLL-layout).Dass sollte das problem lösen.
Fehlgeschlagen rebaseall
Wenn Sie wählen Sie eine Basis-Adresse, die zu niedrig ist, können Sie am Ende mit einem gebrochenen cygwin
installieren. Sie können installieren Sie es, indem cygwin ist setup.exe wieder, und am
Paket-Auswahlseite, auf der "Alle" - Eintrag zu Installieren. Sie müssen möglicherweise
tun Sie dies zweimal, so erhalten Sie möglicherweise Fehler, die sich auf die erste installieren-pass.
Ich auch kompiliert eine einfache Endlosschleife ausführbare Datei von Cygwin und hier sind die Listdll Ergebnisse pastebin.com/raw/uxpEarUj
InformationsquelleAutor gavenkoa
Ich habe leiden ähnliche Probleme, die vor kurzem eine Menge. Ich habe nicht in der Lage, die Ursache zu ermitteln, ob es aufgrund einer kürzlich Windows7 patch oder ein update in die aktuelle cygwin. Ich bin in einer streng kontrollierten Unternehmensumfeld nur bedingt erhöhten Rechte, eine Menge von anti-malware und verschlüsselte Laufwerke. Ich bin mit 32-bit-Cygwin " zu präsentieren.
Fragen begann für mich, nachdem ich installiert Git und Git-Svn-Pakete, die benötigt Perl und aktualisiert diverse weitere Cygwin-Pakete.
Rebasierung mit rebase-trigger oder rebaseall nicht lösen das Problem für mich. Weder hat die neu-Installation und setup wiederholt ausgelöst Fehler in der post-install-pahse, wenn Sie versuchen zu tun, der Stellungswechsel selbst.
Mein Erster Erfolg wurde, durch Downgrade von Perl auf die Vorherige version, dh. nach unten zu 5.22.1.2 von 5.22.2.1. Nach ein paar Wochen der Fehler, der zurückgegeben wird, vielleicht nach dem obligatorischen windows-update und Neustart.
Meinem neuesten Erfolg erzielt wurde, durch das ignorieren der dash/rebaseall-script und läuft rebase.exe direkt wie folgt:-
$ cd /bin
$ ls -1 *.dll | egrep -v '(cygwin1|cyglsa).*\.dll' >rebasedlls.txt
cygpath -wa /bin
).C:\apps\cygwin\bin> rebase.exe --info cygwin1.dll
/usr/bin/cygwin1.dll base 0x61000000 size 0x00500000
C:\apps\cygwin\bin> rebase -b 0x62000000 -4 -n -v -t -T rebasedlls.txt
So weit, So gut, meine Cygwin ist wieder zu einem funktionierenden Zustand wieder.
setup.exe
ohne Installation/Aktualisierung. Es scheint standardmäßig durchführen Stellungswechsel. Auslösen voller Stellungswechsel nennenrebase-trigger full
vorsetup.exe
.es ist in der Tat, und Rebase mit rebase-trigger oder rebaseall nicht lösen das Problem für mich
Ihre eigenen Schritte können erforderlich sein, weil der AntiVirus-software. Antivirenprogramme können anzeigen, die Ihre dlls in das Cygwin-Prozess-Adressraum mit überschneidungen mit den Cygwin-Basis-Adresse Hinweise und dies sollte behoben werden. Mehr info chromium.googlesource.com/chromium/src/+/master/docs/... Cygwin nicht kontrollieren können, das Verhalten von 3rd-party-software, und Sie machte eine gute Vermutung für den Basis-Adresse (die nicht
rebaseall
). Halten developer-Maschine, ohne AntiVirus kann eine Lösung sein.in der Tat, als ich schrieb im ersten Absatz: ich bin in einer streng kontrollierten Unternehmensumfeld nur bedingt erhöhten Rechte, eine Menge von anti-malware und verschlüsselte Laufwerke
InformationsquelleAutor Ed Randall
Hier ist der fix.
anpassen" -> "Wählen Sie den genauen Datei-Pfad"
Fügen Sie auch diese andere Binärdateien aus dem gleichen Ordner: expr.exe, uname.exe, grep.exe, rm.exe
Glück,
Gabriel
InformationsquelleAutor Gabriel Bercea
Gibt es einen Stellungswechsel-Dienstprogramm, das löst den Stellungswechsel als post-setup-phase.
Vom dash oder bash:
schließen Sie alle Prozess-und erneut ausführen setup-x86_64.exe.
InformationsquelleAutor matzeri
deinstallieren,
und installieren Sie die software für 32-bit.
InformationsquelleAutor fxleyu
Ich 3 mal neu gestartet, und dann war es okay. wtf Windows 7
InformationsquelleAutor Mladen
Diese genau die gleiche Fehlermeldung hat verschiedene Ursachen, nicht alle von Ihnen im Zusammenhang mit setup-x86_64.exe obwohl ich es gesehen habe in diesem Kontext. Aber wenn rebaseall nicht dein problem lösen, hier ist ein Vorschlag, der funktionieren könnte.
In dem Fall sah ich heute morgen, es stellte sich heraus entstanden ist, durch eine Reihe von Prozessen, die weiter laufen, nachdem ich verlassen die mintty-terminal-emulator. Meine Vermutung ist, dass diese zombie-Prozesse verhindern, dass die Konsole recycelt. In meinem Fall, die beiden Prozesse wurden experimentell bestimmt, indem eine Liste der Laufenden Prozesse für streunende Prozesse, die nicht mehr benötigt werden. Ich fand die beiden Prozesse wurden blockiert mich durch die überprüfung der Liste der Laufenden tasks.
Sah ich auf einigen anderen stackoverflow-Fragen, die git ist oft der zombie-Prozess, der bewirkt, dass dieses symptom (für einige Benutzer). Leider, restliche Prozess, der überlebt, nachdem Sie Ihre Konsole-Sitzung geschlossen wird, kann dieses problem verursachen, so müssen Sie Experimentieren.
InformationsquelleAutor philwalk