du hast Glück, weil du hier in diesem Forum auf Leute treffen kannst, die wirklich gut mit solchen Themen Bescheid wissen und du hast Pech, dass ausgerechnet ich nun Zeit habe und dir zu antworten versuche.
Vor über 20 Jahren machte ich mal eine Ausbildung im Themenkreis Computer. Seither versuche ich den Kontakt zu solchen Geräten zu minimieren und möglichst wenig Energie und Zeit zu investieren; das Leben hält für mich deutlich interessantere Dinge bereit ;-)
Deshalb ist alles, was ich mir da zu Recht gelegt und überlegt habe, in keinster Weise fundiert. Lediglich einige der Dinge, die ich aus der grauen Vorzeit erinnere, begegnen mir heute noch immer und immer wieder werden ungefragt die gleichen Lösungen benutzt, die es schon vor 20 Jahren gab und die damals angesichts der verfügbaren HW einen großen Sinn machten. Heute sollten solche Automatismen überdacht werden.
Dabei ist es sicher ein Unterschied, ob ich einen Server betreiben möchte, der nur wenige Aufgaben wahrnimmt, diese aber sehr stabil und zuverlässig ausführen soll, wo ich Analysen betreibe und Logs studiere, um Fehlverhalten, unerwünschte Vorkommnisse und einiges mehr in Erfahrung zu bringen, wo auch mal einen Dump studieren muss um vielleicht einen Fehler zu finden und wo ich also "Informatik" betreibe, oder ob ich einen Desktop-PC aufbaue den ich zum Ansehen von Filmen, Bildern und Mails benutzen möchte und wo ich selbst als User gar nicht in der Lage bin, die diversen Logs zu deuten und deshalb auch auf sie verzichten kann.
Ich hoffe, dass du aus diesem verstehst und siehst, dass du es bei mir mit einem User der letzten Kategorie zu tun hast. Mein PC soll ein Desktop sein, wo eine Grafische Oberfläche mir bequemes Arbeiten ermöglicht und wo ich nicht ein Informatik-Studium brauche, um Programme bedienen zu können. Der PC selbst interessiert mich wenig bis gar nicht und das gilt auch ein wenig für das Betriebssystem und seine Feinheiten. Ich will das Ding nutzen und möglichst so, wie ich mir das vorstelle. Weshalb ich da gerade bei FreeBSD gelandet bin, ist sicher nicht uninteressant. Es ist das erste System gewesen, das ich in der gewünschten Art überhaupt hinbekommen konnte und seither bin ich dabei geblieben.
Computer sind für mich unwichtig und eher ein Spielzeug. SIe sind auch produktiv, keine Frage, aber mein Grundsatz bleibt: was wichtig ist, gehört nicht auf einen PC. Ich gehe weiter und sage, was im Leben wichtig ist, hat nichts mit PC zu tun.
Das gilt sicher nicht für alle Anwender.
Es ist aber bei mir so und deshalb gehe ich auch recht sorglos damit um.
Vor diesem Hintergrund also zurück zu deinen Fragen.
Was ich machen würde, unterscheidet sich also von dem, was andere empfehlen und es ist nur zu verstehen, wenn man meine (nicht vorhandenen) Ansprüche kennt.
Ich würde eine Einzige Partition auf der SSD für alles belegen (den 64k Block zum Booten zähle ich nicht eigens). Dann würde ich ausreichend Speicher einbauen und wie schon mal gepostet ein tmpfs nutzen, um einige Dinge dort zu halten, die ich beim nächsten Einschalten auch nicht wieder brauche. SWAP würde ich, genau wie du, auf der HDD anlegen und dann aber nicht nutzen (swapoff schaltet im laufenden Betrieb ab, damit kann einfach getestet werden, ob das geht. Dann, wenn es geht (es geht eigentlich fast immer) würde ich SWAP herauskonfigurieren). Den Rest der HDD würde ich wieder als eine Partition anlegen und hier die zusätzlichen Daten lagern, Filme, Musik, Mail....
Als Dateisystem würde ich für beide Partitionen das gleiche nehmen und wenn du die Berichte gelesen hast, mit gpart -a dafür sorgen, dass die Partitionen auch passend angelegt werden.
Dann würde ich alle Journals und Softupdates und solche Dinge von beiden Platten weglassen und noatime mounten. Die SSD würde ich zusätzlich mit TRIM anlegen.
Bevor die Journals erfunden wurden, lebten wir eigentlich auch schon ganz gut. Manchmal ging ein Filesystem kaputt. Da hört man wirkliche Horror-Geschichten, aber mir ist das nicht ein einziges Mal passiert, bei keinem Dateisystem. Ich nutzte eine Weile ext2 und später XFS (mit einem Journal) und danach nur noch FreeBSD-UFS(2). Ich lebe in einem Land, wo häufig mal der Strom ausfällt und den Luxus einer UPS gönnte ich mir erst ziemlich spät. Deshalb hatte ich häufig damit zu tun, dass ich fsck anwenden musste, doch es war nicht ein einziges Mal ein System dabei zerstört worden. Es gab einmal eine ziemlich aufwendige reparatur mit Austausch von Superblocks und das hatte mich Nerven gekostet, aber es funktionierte letztlich auch. Diese Aktionen kamen nur mit Rechnern und plötzlichem Stromausfall vor.
Das bedeutet, auf einem Laptop mit Akku fühle ich mich da grundsätzlich um mehrere Stufen sicherer. Es gab bei meinen Bastelleien aber auch schon Hänger, bei denen ich tatsächlich den Laptop ausschalten musste und dabei kam es auch schon mal vor, dass ich ein fsck beim nächsten Boot laufen lassen musste. Mehr nicht.
Also, aus meiner Sicht ganz klar: beim Einsatz von SSD und überhaupt auf Laptops, nehme ich keine Journals, weil ich gut ohne sie leben kann und die Vorteile für mich nicht so wichtig sind, wie die gesteigerte Performance und Lebensdauer (vor allem bei SSD) .
Den Unterschied in der Performance merkt man tatsächlich spürbar.
Als ich das bei einer Installation mal vergessen hatte, wunderte ich mich, dass das Systems beim Spielen von Filmen von SSD ruckelte, bei der HDD hatte es indessen ohne Ruckeln funktioniert. Alle Optimierungen halfen nicht, bis ich schließlich merkte, dass tatsächlich das eingeschaltete Journal dieses Ruckeln verursachte. Die an sich schnellere SSD wurde dadurch so sehr ausgebremst (viel Schreiben, Schreiben auf SSD relativ langsam...), dass sie sogar schlechter funktionierte, als eine HDD.
Außerdem erscheint es mir bei Laptops auch sinnvoll, auf Journals und zusätzliche Schreibarbeit (etwa Systemlogs) zu verzichten, um damit überhaupt erst die Vorraussetzung zu schaffen, möglicherweise die Platte auch mal schlafen zu legen. Wenn da dauernd Dienste drauf zugreifen wollen, wird das nämlich nicht passieren. Weil ich oft Filme von Stick oder über Netzwerk sehe, ärgerte es mich eben, dass die Platte nicht zum Stillstand zu bewegen war. Dabei muss ich allerdings zusätzlich einschränken, dass bei gleichem System eine HDD und eine SSD sich schlafen legten, während zwei andere SSD nicht dazu zu bewegen waren. Hier gibt es offensichtlich Unterschiede in der HW.
Nun darfst du trotzdem nicht unbedingt den Trugschluss ziehen, dass moderne Dateisysteme mit Journal langsamer sind, als die älteren Systeme ohne Journal. Ich weiß überhaupt nicht, wie das alles funktioniert und ob jemand Perfrmance-Tests gemacht hat. Meine Erinnerung an die alten Systeme ist natürlich auch die Erinnerung an ältere und langsamere HW. Aber es ist nicht etwa so, dass an den Code für ein Dateisystem einfach der Teil für das Journal angehangen wird. Die neuen Dateisysteme sind eine vollkommene Überarbeitung oder Neugestalltungen. Ich habe das Gefühl, dass etwa das neuere ext4 deutlich schneller ist, als das ältere ext3 und beide erscheinen mir auch mit Journal schneller, als es ext2 gewesen ist. Das Journal nicht zu nutzen bleibt deshalb für mich die Ausnahme, die ganz bewusst entschieden werden sollte. Aber gerade auf Sticks, USB-Platten oder eben auf Platten in Laptops und besonders auf SSD sehe ich keine Vorteile in einem Journal, sondern eher nur Nachteile.
Wenn du die Ports nutzen willst und da intensiv baust, würde ich das über einen Link erledigen und die auf der HDD unterbringen.
Du kannst auch einfach die Konfigurationsdateien ändern und dann ein beliebiges Verzeichnis zum Portsverzeichnis machen. Genau, wie die Anwendungen, suche ich aber selbst natürlich in /usr/ports und nicht irgendwo sonst. Deshalb möchte ich gerne die ports in /usr/ports finden.
Für alle, die mitlesen und nicht wissen, wie ich das meine, vielleicht nochmal konkret dieses Beispiel:
ls /usr
das zeigt dir, ob da schon ein ports existiert. Ist das der Fall, verschiebst du es auf die HDD. Angenommen, der Mountpoint ist /platte2.
mv /usr/ports /platte2
ln -s /platte2/ports /usr/ports
Das sollte schon genügen. Evtl kontrollierst du noch die Zugriffrechte deines Links und natürlich darf /platte2 nicht etwa nur ro eingebunden sein. Ich denke, diese Dinge verstehen sich aber von selbst.
Ist /usr/ports nicht da, kannst du direkt ports auf /platte2 anlegen und dann verlinken. Anschließend passiert alles genau, wie vorgesehen, denn /usr/ports wird ja gefunden, nur dass nun die Daten dem Link folgen und entsprechend auf der HDD landen.
Das ist, finde ich, wesentlich einfacher und flexibler als viele Partitionen zu nutzen.
Und nochmal: es gibt allerdings gute Gründe (besonders bei Servern) trotzdem Partitionen zu nutzen. Nur für mich habe ich die Entscheidung anders getroffen und besonders im Hinblick auf den Gebrauch als Desktop-Rechner halte ich das auch für vertretbar und gerade bei Laptops sogar für Vorteilhaft.
Vielleicht sollte ich das nochmal detaillierter an einem anderen Beispiel zeigen. Ich weiß es nicht, ob es da Verständnis-Probleme gibt. Es ist so, dass meine Kollegen mich bei solchen Dingen immer sehr merkwürdig anblicken und ich das Gefühl habe, nicht verstanden zu werden. Es fehlt mir wohl an der nötigen Ausdrucksstärke. Allerdings vermute ich eigentlich, dass ich hier viel zu viel tue und alle längst wissen, was ich meine. Also, dann einfach übergehen.
Die Ausgabe von ls -l zeigte in meinem Verzeichnis einen Link:
Code:
lrwxr-xr-x 1 pit wheel 16 22 Nov 10:43 .thumbnails -> /tmp/.thumbnails
Da ist ein Verzeichnis .thumbnails auf /tmp als Ziel meines Links .thumbnails. Ursprünglich war das Verzeichnis .thumbnails in meinem Heimatordner angelegt und dort landen Vorschaubilder einiger Programme. Diese Vorschaubilder möchte ich nicht für die Ewigkeit sammeln und erhalten. Es genügt mir, diese während einer laufenden Sitzung zu speichern. Deshalb habe ich dieses Verzeichnis in /tmp angelegt und dann durch den Link in mein Heimatverzeichnis zugewiesen.
Code:
pit@syo ~:-> ll /tmp/.thumbnails
total 4
drwx------ 2 pit wheel 0 22 Nov 10:47 large
drwx------ 2 pit wheel 1240 22 Nov 10:47 normal
pit@syo ~:-> ll .thumbnails
lrwxr-xr-x 1 pit wheel 16 22 Nov 10:43 .thumbnails -> /tmp/.thumbnails
pit@syo ~:-> ll .thumbnails/
total 4
drwx------ 2 pit wheel 0 22 Nov 10:47 large
drwx------ 2 pit wheel 1240 22 Nov 10:47 normal
pit@syo ~:-> mount | grep tmp
tmpfs on /tmp (tmpfs, local)
Die Ausgaben sagen wohl mehr und besser alles, was ich irgendwie anscheinend nie richtig erklären kann. So habe ich diese .thumbnails also einfach auf ein vollkommen anderes Dateisystem verfrachtet (ob ich das bei jedem Systemstart mit einem Script neu mache oder dieses Verzeichnis im /tmp (tmpfs) erhalten bleibt, weiß ich nun nicht).
Natürlich: /tmp wäre nicht nur mir zugänglich! Das wollte ich garantiert nicht so (einfach) haben, wenn mein Rechner mehreren Nutzern verfügbar wäre oder wenn da sensible Daten lagern würden. Doch das sind wieder eigene Überlegungen, die jeder dann für sich selbst anstellen muss.
Die Möglichkeit mit tmpfs "etwas" in den RAM zu legen ist sehr empfehlenswert, gerade bei Laptops und SSD. Ab etwa 1.5GB RAM sollte das auch funktionieren und auch ohne SWAP.
Bei noch mehr Speicher könnte man sich Gedanken um weitergehende Technologien machen. Sogenannte RAMDISKS ermöglichen es, ganze Verzeichnisse zu mounten. Diese Technologie ist vor allem im Embeded-Bereich verbreitet, wo zusätzlich dann bestimmter Speicher nicht einfach beschrieben werden kann. Dieser (Flash-)RAM ist eigentlich als ROM zu betrachten und da wird oft ein Image eines Systems durch eine spezielle Prozedur eingespielt, das unveränderlich bleibt und in einem Bootvorgang "ausgepackt" und auf einzelne RAMDISKS verteilt wird. Veränderliche Teile (meist so etwas wie /var) werden dann einfach auf beschreibbarem Speicher gehalten und entsprechend gemountet. Grundsätzlich sind das in meinen Augen ganz ausgezeichnete Technologien, den Schreibbedarf auf eine SSD zu minimieren. Ich spiele schon länger mit dem Gedanken, so etwas auf einem Laptop zu probieren, aber ich kann dazu nicht genug und es würde mich viel Zeit kosten.
Ein gutes Beispiel dafür, wie so etwas gehen kann, ist KNOPPIX oder auch FreeNAS.
In einem solchen Szenario würde dann die SSD also nahezu ausschließlich als Boot-Medium dienen und beinahe der komplette Systembetrieb wäre in den RAM verlagert.
Da bleibt dann eigentlich nur die Frage: wozu denn noch eine SSD? Da würde ein USB-Stick es nämlich genausogut tun. Da denke ich ähnlich, wie es Yamagi beschreibt. Wenn ich schon eine SSD habe, möchte ich die doch auch nutzen und nicht vor lauter Schonung gar nicht angreifen.
Ich glaube nicht, dass die Benutzung in einem Laptop ein wirklicher Stress für diese SSD sind. Im laufenden Betrieb machen die eher Pause und besonders, wenn du Daten auf der HDD liegen hast, wird die SSD kaum gebraucht. Das sollte eigentlich Schonung genug sein. Mehr Gedanken würde ich mir da nicht machen, neben dem schon erwähnten Abschalten von Softupdates etc und einschalten von TRIM.