PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : "Zu wenig Speicherplatz" Fehlermeldung, obwohl mehr als genug vorhanden ist. Lösung?



Catonga
27.07.06, 07:35
Ich bin jetzt schon mehrmals auf ein merkwürdiges Phänomen beim Installieren
von diversen Windows Programmen unter wine gestoßen.

Z.B. melden einige Installationsprogramme "insufficient disc space" bzw. "zu wenig Speicherplatz vorhanden" obwohl mehr als genug freier Platz auf
der Festplatte vorhanden ist.

Bei meinem jetzigen Problemfall habe ich z.B. mehr als 12 GB freien Speicherplatz, aber das Setup Programm meldet mir, daß nur 2040 MB
frei währen und somit nicht genügend Platz für das zu installierende Programm vorhanden wäre.

Bei einem anderen Programm meldet er mir sogar,
daß nur 130 MB frei währen, obwohl das natürlich ebenfalls nicht zutrifft.

Kennt ihr dieses Problem auch?
Gibt es dafür irgendeine Lösung für dieses Problem?

xanlosch
27.07.06, 09:52
Die Gründe dafür können diverse sein. Entweder gibt es durch zuvielen freien Speicher einen Überlauf in der Installationsroutine, so dass diese dann meldet, dass zu wenig Festplattenspeicher frei wäre oder aber auch, dass Wine aus Gründen auch immer, einen falschen Wert liefert.

Es gibt einen Patch, der dieses Problem behebt und auch in der nächsten Version von Wine mit drin ist.

Russel-Athletic
27.07.06, 15:00
Ich glaube ich kenne dein Problem:
Auf der root partition ist nicht genug Platz.
Besonders wenn du über Z (root) nach irgendeinen Mountpunkt wird der Speicherplatz von der Root gerechnet. Warum weiß ich auch nicht.

xanlosch
27.07.06, 16:11
Ne gute Idee, Russel-Athletic!

Wenn ich recht informiert bin, dann nimmt Wine immer bei der Größenberechnung die Informationen der Root-Partition bzw. dorthin, wo Z: zeigt (rein spekultativ, da ich es nicht im Quellcode verifiziert habe). Wine müsste dann aber noch zusätzlich nachschauen, ob man nicht über Z: auf eine andere Partition gegangen ist und deren verfügbaren Speicher berechnen bzw. wiedergeben. Eine nicht triviale Sache, wie ich finde.

Catonga
29.07.06, 07:08
Die Gründe dafür können diverse sein. Entweder gibt es durch zuvielen freien Speicher einen Überlauf in der Installationsroutine, so dass diese dann meldet, dass zu wenig Festplattenspeicher frei wäre oder aber auch, dass Wine aus Gründen auch immer, einen falschen Wert liefert.

Das es an der Installationsroutine der Anwendung liegt kann ich mir nicht vorstellen,
denn dann müßte die Installation ja auch unter Windows
fehlschlagen.





Es gibt einen Patch, der dieses Problem behebt und auch in der nächsten Version von Wine mit drin ist.

Meinst du mit nächster Version Wine 0.9.19 oder doch 0.9.18?
Letztere wurde nämlich an dem gleichen Tag an
dem du das hier geschrieben hast herausgegeben
und da meine CVS Version gerademal ein paar Stunden älter ist und das Problem dort noch vorhanden ist
würde ich mal 0.9.19 vermuten.
Vielleicht gab es aber auch noch schnell ein paar Updates
bzw. geschieht das aktualisieren über den anonymous cvs Zugang sowieso meistens mit einer kleinen Verzögerung,
zumindest ist das bei mehrere Projekten so.

BTW, wo kann man diesen Patch downloaden? (url?)

Catonga
29.07.06, 07:13
Ich glaube ich kenne dein Problem:
Auf der root partition ist nicht genug Platz.
Besonders wenn du über Z (root) nach irgendeinen Mountpunkt wird der Speicherplatz von der Root gerechnet. Warum weiß ich auch nicht.

Hm, meinst du mit Z (root) (Tippfehler?) den (root) Pfad für Unix/Linux,
also / ?
/ ist bei mir nämlich in der Tat sehr klein (ca. 128 MB),
der Rest ist in Unterpartitionen eingeteilt.

Oder meinst du mit Z, den Wine Laufwerksbuchstaben Z:?
Unter Wine ist Z: bei mir das CD-Rom Laufwerk.

EDIT:
Ok, ich hatte xanlosch's Posting nach deinem noch nicht zu Ende gelesen. Es scheint also Z: zu sein.

@ all
Übrigens danke für die Antworten.

xanlosch
29.07.06, 10:44
Catonga, ich meinte die Version 0.9.18. Es gibt von Dan Kegel (http://www.winehq.org/pipermail/wine-patches/2006-July/028832.html) einen Patch. Aber wie ich gelesen habe, bezieht sich dieser auf winedos. Ich habe aber keine Ahnung, ob diese Routinen dort, auch Auswirkungen auf die normalen Installationsprogramme haben. Das sie unter Windows nicht fehlschlagen, kann einfach ne andere Ursache haben: Unter Windows gibt es sogut wie keine eingehangenen Mountpoints im Dateisystem ;)

Wegen CVS: Nimm git ;) Der CVS-Server kann etwas hinterherhinken, der europäische unter Garantie, da dieser nur noch unregelmäßig aktualisiert wird (Probleme mit der Synchronisation).

Catonga
29.07.06, 12:34
Catonga, ich meinte die Version 0.9.18. Es gibt von Dan Kegel (http://www.winehq.org/pipermail/wine-patches/2006-July/028832.html) einen Patch. Aber wie ich gelesen habe, bezieht sich dieser auf winedos. Ich habe aber keine Ahnung, ob diese Routinen dort, auch Auswirkungen auf die normalen Installationsprogramme haben.

Ok, ich habe jetzt nochmal versucht das Programm unter einer aktuellen CVS Version, welche den Patch enthält, zu installieren, aber leider besteht der Fehler immer noch.
Das Installationsprogramm scheint wohl winedos nicht zu verwenden.




Das sie unter Windows nicht fehlschlagen, kann einfach ne andere Ursache haben: Unter Windows gibt es sogut wie keine eingehangenen Mountpoints im Dateisystem ;)

Das das daran liegen könnte glaube ich nicht.
Wine sollte das darunterliegende Linux System mit seinen Mountpointen abstrahieren, d.h. die Windows Anwendung
darf nichtmal wissen bzw. bemerken, daß sie unter einem Linux ausgeführt wird. Wenn das irgendetwas mit den Mountpointen zu tun haben würde, dann wäre es in so einem Fall also ein Bug in der Abstraktionsschicht von Wine.

Da die Anwendung unter Windows funktioniert, wäre das zumindest auch
das naheliegenste, daß der Bug in Wine sitzt.




Wegen CVS: Nimm git ;)
Danke für den Tip, ich werde mir git mal anschauen.

xanlosch
29.07.06, 21:42
Das das daran liegen könnte glaube ich nicht.
Wine sollte das darunterliegende Linux System mit seinen Mountpointen abstrahieren, d.h. die Windows Anwendung
darf nichtmal wissen bzw. bemerken, daß sie unter einem Linux ausgeführt wird.

Wenn das irgendetwas mit den Mountpointen zu tun haben würde, dann wäre es in so einem Fall also ein Bug in der Abstraktionsschicht von Wine.


Genau das macht Wine meines Wissens nach nicht ! Wine analysiert nicht, was wie wo im Dateisystem gemountet ist.

Erstmal ist dies auch recht schwierig zu bewerkstelligen (schätze ich mal) und das die Lösung dafür auch portabel sein muss, da Wine nicht nur auf Linux-Systemen funktionieren muss !

Catonga
30.07.06, 02:23
Genau das macht Wine meines Wissens nach nicht ! Wine analysiert nicht, was wie wo im Dateisystem gemountet ist.


So habe ich das nicht gemeint.
Ich würde mal annhemen, daß das ganze Zeugs mit den Mountpunkten Sache des Kernels ist
und die Programme greifen dann im Userspace darauf zu.
Für das Windows Programm sollte der Mountpunkt aber keine Rolle spielen,
da Wine einfach den Platz anzeigen sollte, welcher für die an diesem Mountpunkt gemountete Partition frei ist.

xanlosch
30.07.06, 08:19
Und das genau macht Wine nicht.

Folgendes Szenario: / - Partition mit 100 MB frei. In /mnt/daten ist eine Partition eingehängt, die noch 20 GB frei hat. / wird in Wine via "Z:" angesprochen.

Installiert man nun ein Programm in "Z:\mnt\daten" dann wird bei der Zurücklieferung des freien Festplattenspeichers die 100 MB zurückgeliefert.

Wine müsste analysieren, dass es sich bei "Z:\mnt\daten" um einen Mountpunkt von /mnt/daten handelt und dessen freien Festplattenspeicher zurückliefern, was es meines Wissens nach nie macht.

Ändert man nun das gleiche Ausgangsszenario ab, dass /mnt/daten über das Laufwerk X: in Wine angesprochen werden kann, dann erhält man die richtigen 20 GB an freien Festplattenspeicher.

Catonga
30.07.06, 16:52
Ok jetzt habe ich verstanden was du meinst.

Nur hilft mir das bei meinem Problem nicht weiter,
da der im Installationsprogramm angegebene freie Speicher
mit keiner meiner Partitionen übereinstimmt.

Es sei denn, der Wert wird falsch berechnet, also die Bytes mit 1024 multipliziert, anstatt geteilt um die MB Zahl herauszubekommen, dann wäre /var am wahrscheinlichsten die Partition, die Wine ausliest.
Zumindest kommt die am nächsten an den angegeben Wert heran.

xanlosch
31.07.06, 09:08
Ich hab, ehrlich gesagt, noch nie auf die Werte genau geguckt, sondern immer nur installiert, da auf den jeweiligen Partitionen immer genügend Platz war.

Wenn dies bei Installationsroutinen von Demos bzw. frei verfügbaren Programmen passiert, wäre ich mal um Namen bzw. Links zu den Programmen interessiert.

Noch ne Frage: Welches Dateisystem nutzt du, nicht dass es daran liegt.

Catonga
31.07.06, 21:38
Ich hab, ehrlich gesagt, noch nie auf die Werte genau geguckt, sondern immer nur installiert, da auf den jeweiligen Partitionen immer genügend Platz war.


Wie schon gesagt, auf der jeweiligen Partition ist genügend Platz, nur denkt das Installationsprogramm etwas anderes.



Wenn dies bei Installationsroutinen von Demos bzw. frei verfügbaren Programmen passiert, wäre ich mal um Namen bzw. Links zu den Programmen interessiert.

Das Programm mit dem ich das gerade oben geschildertes Problem habe, ist der MS Flight Simulator 2004.
Eine Demo von dem gibt es aber leider nicht.





Noch ne Frage: Welches Dateisystem nutzt du, nicht dass es daran liegt.
ext3

xanlosch
01.08.06, 08:04
Es ist zwar keine unbedingt schöne Lösung, aber lege mal für den entsprechenden Mountpunkt noch in Wine ein virtuelles Laufwerk an bspw. "E:". Dann sollte es klappen.

Ich mach dies meist so, da ich die Programme, die ich unter diversen Wine-Versionen nutzen / testen will, nicht andauernd installiere.