• Willkommen im Linux Club - dem deutschsprachigen Supportforum für GNU/Linux. Registriere dich kostenlos, um alle Inhalte zu sehen und Fragen zu stellen.

[gelöst] Dynamisch wachsende Swap Datei

Chris K.

Member
Hallo,

ich möchte suse 12.1 auf einer Compact Flash Karte (16 GB) installieren (eine klassische Festplatte ist nicht vorhanden).
Dabei möchte ich auch auf Swap nicht verzichten. Aus den bekannten Gründen (begrenzte Anzahl an Schreibzyklen bei Flashspeicherzellen) möchte ich möglichst viel Speicher zur Verteilung der Dateien frei haben und nicht von vornherein - beispielsweise - 2 GB in Form einer Swap Partition "abtrennen", die dann erfahrungsgemäß doch fast nie benutzt wird.
Nun weiß ich, dass man Swap Speicher auch in Form einer Datei ("virtuelles Dateisystem") anlegen kann. Das habe ich auch früher schon einmal gemacht und unter Windows ist das ja z.B. auch so.
Das würde allerdings mein Problem so noch nicht lösen, da die virtuelle Swap Partition ja auch mit einer festen Größe angelegt wird (indem einfach sehr viele Nullen aus /dev/null mittles dd in die entsprechende Datei geschrieben werden).
Was ich also gerne hätte, wäre ein Swap Datei, die standardmäßig minimal klein ist und nur bei Bedarf entsprechend wächst. (Die Performance soll hier einmal keine Rolle spielen.)

Leider konnte ich dazu bislang überhaupt keine Anleitung finden.
Aber vielleicht weiß ja hier einer Rat ;)
 

spoensche

Moderator
Teammitglied
Du kannst weder eine Swap Partition, noch eine Swap Datei für das Speichern von Dateien verwenden. Swap = Auslagerung, d.h. Swap wird nur verwendet, wenn nicht mehr genug RAM zur Verfügung steht und ein Teil vom RAM ausgelagert werden muss. Kurz gesagt: Swap ist quasi wie die Auslagrungsdatei unter Windows.
 
A

Anonymous

Gast
versuche es mit einer sparse Datei, und dann mkswap drauf machen und als swap einhangen.
ob das allerdings als swap funktioniert habe ich noch nie getestet, spricht aber nichts dagegen.
Ansonsten genügend Speicher in die Kiste, und kein suspend-to-irgendwas konfigurieren und du solltest im Normalfall nie Swap benötigen.

robi
 

Spielwurm

Advanced Hacker
Info: in eine SWAP-Partition wird eher nicht oder selten geschrieben. Auf der Systempartition wird sehr häufig geschrieben, nämlich die Log-Daten (alle 5 Sekunden).

Wenn Du die Systempartition auf einen Flash-Speicher legst, dann solltest Du Dir eher Gedanken darüber machen, als Angst wegen der SWAP-Partion zu haben. Und was ist mit den Daten? Wenn ich die Systempartition allein auf Flash lege, dann kann ich schnell mal eben eine neue machen, aber wegen der Daten machst Du Dir keine Sorgen?

Andererseits kann ich Dich wegen der Schreibzyklen beruhigen: alles alte Kamellen! Du wirst es bei einer Qualitätskarte nicht erleben, dass sie aufgibt. Ich habe meinen Miniserver 5 Jahre lang per USB-Stick betrieben und mein jetziger Server läuft von SD-Karte (jeweils mit SWAP). Allerdings benutze ich für die Daten eine normale HDD ...

Hartmut
 
OP
Chris K.

Chris K.

Member
Hi. Dass das mit den begrenzten Schreibzyklen nicht mehr so relevant ist, kann ich mir auch gut feststellen. Trotzdem hab ich tatsächlich auch /tmp und /var/log in ein tmpfs gemountet.
 
OP
Chris K.

Chris K.

Member
Ähm, das hoffe ich doch. Ist das nicht "automatisch so"?
Das sind die fstab Einträge:
tmpfs /tmp tmpfs defaults,noatime,nodiratime,mode=1777 0 0
tmpfs /var/log tmpfs defaults,noatime,nodiratime,mode=0755 0 0
 

Spielwurm

Advanced Hacker
Dann will ich hoffen, dass Du genug RAM in Deinem Rechner hast, denn in /var/log kann ganz schön was auflaufen an Datenmengen im Lauf der Zeit ...

Hartmut
 

josef-wien

Ultimate Guru
Ohne Größenangabe wird pro tmpfs-Definition der halbe Hauptspeicher als Maximalwert vorgesehen. Wenn Du berücksichtigst, daß openSUSE auch einige tmpfs-Definitionen vornimmt (siehe Ergebnis von mount | grep tmpfs bzw. df -h | grep tmpfs), mußt Du aufpassen, daß nicht das passiert, was Du nicht willst, nämlich die Auslagerung in die SWAP-Partition bzw. -Datei (und falls die nicht groß genug ist, wird dann nur noch der Griff zur Reset-Taste helfen). Wenn wir jetzt die Theorie außer Acht lassen und uns der Praxis zuwenden, besteht aber kein Grund zur Panik.

P. S. Nummer 1: Die Größe von /tmp hat (ebenso wie die "normale" Belegung des Hauptspeichers) nichts mit der Einschaltdauer zu tun, sondern mit dem, was Du machst.

P. S. Nummer 2: Die "Abnützung" von SSD steht für mich in keinem Verhältnis zu "rückwirkend" fehlenden Log-Dateien.

P. S. Nummer 3: Stelle einmal fest, wie oft z. B. die Datei ~/.kde4/share/config/kdeglobals geschrieben wird.
 

panamajo

Guru
Nox Diesque schrieb:
Trotzdem hab ich tatsächlich auch /tmp und /var/log in ein tmpfs gemountet.
Für /tmp ist das vollkommen ok, aber /var/log ist die Quelle aus der man Rückschlüsse zieht wenns schiefgeht. Und das in einem tmpfs ist sinnfrei.

Diese ganzen Warmduscher Tipps wie man eine SSD möglichst wie ein rohes Ei behandelt sind IMHO für die Katz, entweder ist die Technologie so weit ein Äquivalent für HDDs zu liefern oder nicht.

Habe seit 1/2 Jahr eine SSD die auch /var/log durchhält, kein Problem. Im c't Labor foltern sie seit geraumer Zeit SSDs, schlimmstenfalls gibts Performanceeinbrüche.
Es gibt allerdings auch SSDs die sehr kurzfristig gar nicht mehr funktionieren, blame the Manufacturer.
 
OP
Chris K.

Chris K.

Member
Okay. Also danke allgemein für die vielen Ratschläge, die hier jetzt zusammen gekommen sind. Ich werde sie vielleicht berücksichtigen; jetzt kann ich ja erstmal selbst etwas Erfahrung sammeln.
Ich denke auch, man braucht sich hier jetzt nicht in eine Diskussion über den Umgang mit Flashspeicher vertiefen. Immerhing ging es ganz allgemein um die Realisierung einer dynamisch wachsenden Swap Datei.
 
Oben