Richtiges Einrichten der Intel SSD unter Ubuntu Lucid

Esc

Active member
Themenstarter
Registriert
17 Juni 2007
Beiträge
1.728
Hallo,

Ich habe nun die Intel X25 G2 SSD mit 160 GB vor mir liegen.
Bevor ich sie überhaupt einbaue und so langsam mich von mein liebgewonnes Ubuntu 8.04 samt allen Einstellungen etc. trenne, möchte ich fragen, was ich nun bitte genau zu beachten habe.

Mein System ist nur Ubuntu-only. Soll heissen, dass ich nur Ubuntu drauf habe. (Über Virtualbox installiere ich mir auch Win7, aber das nur wegen zwei Programmen, itunes und iPhone und ein Medizinstudium-Programm^^)

Meine Fragen:

- wie partioniere ich es nun, damit das Alignment passt?
- welches Dateisystem nehme ich?
- Swap ist unnötig? Habe nur 2GB-Ram, erweitere auf 3 GB demnächst
- kleinere Tweaks, die ich nach der Installation machen sollte?
- wird TRIM irgendwann laufen mit einem Kernelupdate?
- was wird aus den Firmwareupdates? Brauche ich dafür zwingend eine native Windows Partition?

Ich habe google bemüht und konnte keine aktuellen Threads darüber finden. Bitte seht mir es nach^^
 
Bei einer SSD lohnt sich IMHO auch den Arbeitsspeicher aufzurüsten, 4 GB oder noch etwas mehr - bei Ubuntu reichen 3, besser 4 GB RAM auf jeden Fall aus, wenn man nicht gerade Riesenanwendungen laufen hat. Dann das Swapping ausknipsen. Ist auch deswegen ratsam, weil man ja i.d.R. eine separate Swap-Partition von x GB anlegt, das ist dann ein kleiner fest definierter Bereich auf der SSD, der häufig beschrieben wird. Aus dem selben Grund empfehle ich auch, die Auslagerungsdatei unter Windows auszuknipsen und auf die Indexierung zu verzichten.
 
Wegen dem Allignment würde ich einfach die Windwos 7 DVD booten und bis zum partitionieren weiterklicken. Dann legst du dort deine gewünschten Partitionen an und installierst danach dein Ubuntu.
 
Leider ist mir der Link einfach zu kompliziert. Ich bin auf mein Notebook angewiesen und müsste innerhalb von paar Stunden wieder betriebsbereit sein.

Hat denn jemand schon damit Erfahrungen gemacht, die SSD erstmal mit Win7 partitionieren zu lassen? Ab wann breche ich da ab? Und wie richte ich mir dann das Ubuntu drauf ein?

Muss ich da einfach die gegebene Partitions-Struktur beibehalten?
 
Jetzt mal ungeachtet dessen ob die bis jetzt angebotenen Tipps Sinn machen oder nicht (habe selber nur Fragezeichen hierzu über dem Kopf).
Win7 installation starten, und weiterführen bis es zu dem Punkt geht "Automatisch oder manuell partitionieren" (oder so ähnlich, kein Win7 vorhanden) dort dann "manuell" wählen, und die gewünschte(n) Partition(en) einrichten. Vielleicht nochmal ein "sind sie sicher" abnicken, und dann kann abgebrochen werden.

Zu den Fragen:

- wird TRIM irgendwann laufen mit einem Kernelupdate?
offiziell scheint es ja im .33 Kernel drin zu sein, also sieht es gut aus

- was wird aus den Firmwareupdates? Brauche ich dafür zwingend eine native Windows Partition?
Nein, soweit ich weis, wird eh eine BootCD fürs Update gemacht

Edit: Vielleicht auch mal hier rein gucken
 
Kleiner Hinweis: ich habe Win7 (ntfs) und Ubuntu (ext4) auf meiner SSD installiert, wobei Grub das Booten kontrolliert. Seitdem ist der Bootvorgang von Win7 locker doppelt so lang am laufen, auch die beim Boot geladenen Programme laden sehr erheblich länger.

Irgendetwas bremst da ganz gehörig den Win7-Boot in dieser Konfiguration. Ubuntu dagegen ist blitzschnell.
 
Vielleicht hilft dir auch mein damaliger Thread weiter:
[Linux] Linux und SSD

Dort findest du auch eine Anleitung für Alignment und ein paar Optionen, welche evtl. die SSD schneller machen.
 
[quote='Esc',index.php?page=Thread&postID=846204#post846204]Hat denn jemand schon damit Erfahrungen gemacht, die SSD erstmal mit Win7 partitionieren zu lassen? Ab wann breche ich da ab? Und wie richte ich mir dann das Ubuntu drauf ein?

Muss ich da einfach die gegebene Partitions-Struktur beibehalten?[/quote]Du lässt einfach die DVD booten, bis du zu dem Punkt kommst, wo du die Partition wählen sollst, auf der Win7 installiert werden soll. An diesem Punkt sollte deine SSD als komplett unpartitionierter Bereich in der oberen Auswahl stehen. Die wählst du aus und erstellst unten deine gewünschte Partitionsgröße.

Wenn die Partitionen im oberen Teil so angezeigt werden, wie du sie gerne hättest, kannst du das Setup direkt abbrechen.

Gruß
 
Reicht es wenn ich eine Partition erstelle oder soll ich eine kleine (für die /boot) und eine größere für (/) erstellen?
 
Vielleicht solltes du lieber mal hier rein schauen.
Ich bin mit der Standardeinstellung eigentlich immer ganz gut gefahren: eine Partition für root (/) und eine für die Benutzerdaten(/home), ggf noch eine Fat32/NTFS Partition für einfachen Datenaustausch mit der Windows-Welt
 
Hab nur gefragt, weil in allen Dokus über SSD und Linux darüber geraten wird, dass man eine kleine /boot -Partition anlegt. Aber das macht ja Windows 7 ja wie ich verstanden habe, erstmal selber, um das Alignment auch richtig zu setzen.
 
Vielen Dank für die ganzen Tipps.

Ich habe mich gestern endlich aufgemacht und mir die Platte eingerichtet. Dazu habe ich zuerst der Win7 Installation das Partitionieren überlassen. Danach habe ich Ubuntu Lucid gebootet, die erste kleine Partition so gelassen, wie sie ist und Ubuntu installiert.

Dank dem Ultrabay-Schacht, konnte ich ganz locker alle meine alten Daten, Einstellungen sehr leicht auf die neue Festplatte übertragen.


Folgende Einstellungen habe ich gemacht, um den Umgang von Linux mit meiner SSD zu optimieren:
Meine fstab sieht nun so aus:
Code:
# /etc/fstab: static file system information.
#
# Use 'blkid -o value -s UUID' to print the universally unique identifier
# for a device; this may be used with UUID= as a more robust way to name
# devices that works even if disks are added and removed. See fstab(5).
#
# <file system> <mount point>   <type>  <options>       <dump>  <pass>
proc            /proc           proc    nodev,noexec,nosuid 0       0
# / was on /dev/sda2 during installation
UUID=090457b9-1e1e-4ab1-97ec-a0c48e35547b /               ext4    noatime,nodiratime,errors=remount-ro 0       1
tmpfs /var/log tmpfs defaults 0 0
tmpfs /tmp tmpfs defaults 0 0
tmpfs /var/tmp tmpfs defaults 0 0

Außerdem die rc.local:
Code:
echo 1500 > /proc/sys/vm/dirty_writeback_centisecs
echo 20 > /proc/sys/vm/dirty_ratio
echo 10 > /proc/sys/vm/dirty_background_ratio

Das Alignment? sudo fdisk -lu
Code:
Platte /dev/sda: 160.0 GByte, 160041885696 Byte
255 Köpfe, 63 Sektoren/Spur, 19457 Zylinder, zusammen 312581808 Sektoren
Einheiten = Sektoren von 1 × 512 = 512 Bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0xd7953dbc

   Gerät  boot.     Anfang        Ende     Blöcke   Id  System
/dev/sda1   *        2048      206847      102400    7  HPFS/NTFS
Partition 1 endet nicht an einer Zylindergrenze.
/dev/sda2          206848   312578047   156185600   83  Linux
Partition 2 endet nicht an einer Zylindergrenze.

Hier mal paar Benchmarks:
hdparm -tT /dev/sda
Code:
/dev/sda:
 Timing cached reads:   2134 MB in  2.00 seconds = 1068.08 MB/sec
 Timing buffered disk reads:  348 MB in  3.02 seconds = 115.36 MB/sec

Habt ihr irgendwelche Kommentare, Tipps oder selbst Fragen für mich? Kann ich noch etwas verbessern oder eher weglassen? Oder klingt das alles soweit gut?

Mein T60 rennt einfach, es ist ein sehr krasser Unterschied zur normalen HDD davor. Damit spare ich mir dieses Jahr eine Neuanschaffung =) Jetzt fehlt mir nur noch eine Ram-Erweiterung auf 3GB und ich bin zufrieden!
Auch Virtualbox mit meiner Win7-Installation läuft deutlich schneller!
 
Sieht alles gut aus. Lediglich deine Benchmarks sind meiner Meinung nach so leider wertlos, da vom Cache beeinflußt. Ein gutes Programm für Benchmarks einer SSD unter Linux hab ich noch nicht gefunden. Nur Bootchart war ganz interessant, aber das protokolliert nur den Start.
 
Einige Fragen wurden schon geklärt und mit dem Setup bist du offenbar schon durch. Trotzdem nochmal meine Sicht der Dinge :P.

Code:
Swap ist unnötig? Habe nur 2GB-Ram, erweitere auf 3 GB demnächst
Linux geht mit Speicher großzügig um und geht davon aus, dass im Notfall Swapspace zur Verfügung steht. Ich würde daher immer eine Swappartition anlegen. Wenn man kein Hibernate nutzt, muss die Partition auch überhaupt nicht groß sein. 512 - 768 MB sind völlig ausreichend.
So eine Swappartition kann man mit dem entsprechenden Treiber auch aus Windows heraus für die Auslagerungsdatei nutzen.
Dass man bei einer SSD kein Journaling benutzen sollte, Swapspace/Auslagerung abstellen und Browser-Profile in dem RAM auslagern sollte, um Schreibzugriffe auf die SSD möglichst zu vermeiden und die Haltbarkeit zu erhöhen, ist ein Relikt aus den Tagen, wo man noch auf JMicron-Controller angewiesen war (zu Journaling: hier).
Wer eine SSD mit aktuellem Controller hat, brauch sich keine Gedanken um die Haltbarkeit machen, solange er nicht grade 10+ GB am Tag schreibt. Selbst bei 20GB täglich hält so eine X25-M laut Intel mindestens 5 Jahre durch (Kapitel 3.5).

welches Dateisystem nehme ich?
Hier gibt's einen Benchmark einer X25-E mit verschiedenen Dateisystemen.
Am besten abgeschnitten haben XFS und EXT4. TRIM läuft auf beiden.
Ich persönlich benutze JFS, weil mich der ganze Rummel um TRIM nicht so sehr interessiert. Ich schreibe fast gar nicht auf der SSD und war mit JFS in der Vergangenheit immer sehr zufrieden, da es schnell mountet und wenig CPU beansprucht. Passt auch ganz gut, dass es von IBM ist :P.

Generell sollte man sich mit Benchmarks und optimalen Schreib/Readwerten nicht verrückt machen. Im normalen (Office/WLAN-)Betrieb zählen diese Peakwerte nicht, da hier nur mit kleinen Dateien gearbeitet wird.
Ich habe hier zwei Maschinen, beide mit einer X25-M, einmal erste und einmal zweite Generation. Ich habe die Konfiguration eine Zeit lang oft gewechselt von 64bit zu 32bit und von ext3 über xfs, ext4 und wieder zu jfs.
Fazit ist, dass man keinen Unterschied spürt ;).

- wird TRIM irgendwann laufen mit einem Kernelupdate?
Manuelles TRIM:
Aus der readme von wiper, einem Bestandteil von hdparm, mit dem manuelles TRIM durchgeführt wird:
Code:
This script works for read-write mounted ext4 and xfs filesystems and for read-only mounted/unmounted ext2, ext3, ext4, reiser3 and xfs filesystems.
Automatisches TRIM:
In Kernel 2.6.33 wurde das Kernelmodul libata erweitert, sodass jetzt über die mount-option discard für SATA-Platten/-Disks das TRIM-Kommando an den Controller weitergegeben werden kann (http://www.heise.de/open/artikel/Kernel-Log-Was-2-6-33-bringt-2-Storage-913690.html).
Soweit ich weiß, ist das momentan nur mit EXT4 und BTRFS möglich (vielleicht auch NILFS).

- was wird aus den Firmwareupdates? Brauche ich dafür zwingend eine native Windows Partition?
- kleinere Tweaks, die ich nach der Installation machen sollte?
Das Firmwareupgrade ist völlig unabhängig vom installierten OS, da das Update über Boot-Diskette/-CD/-USB-Stick stattfindet.
Kleinere Tweaks umfassen das Auslagern von Browsercache in /dev/shm, Optimierungen in /proc/sys/vm/, mounten von Dateisystemen mit noatime und Wahl des richtigen Schedulers.

- wie partioniere ich es nun, damit das Alignment passt?
Mit fdisk:
fdisk -H 224 -S 56 /dev/sda (Nachtrag: das ist ein 128k Alignment. Für Controller mit 512 k erase block size kann es von Vorteil sein, stattdessen z.B. -H 32 -S 32 für ein 512k Alignment zu nutzen).
Dann ganz normal die Partitionen erstellen (n für neue partition, t für type der partition, a für active). Mit x gelangt man in den Expertenmodus und kann das Offset manuell anpassen. Ich habe es von 56 auf 256 angepasst, wobei ich mir nicht sicher bin, dass das notwendig oder überhaupt von Vorteil ist.
Wer noch Windows installieren will, muss aber aufpassen. Bei mir hat die Installation von Windows in sda1 das Alignment immer von 224 heads und 56 sectors/track auf 255:63 umgestellt.
Um das Problem zu umgehen musste ich Windows in /dev/sda2 installieren. /dev/sda1 nutze ich als swap.

So sieht mein Alignment bei einer X25-M aus:
Code:
Disk /dev/sda: 80.0 GB, 80026361856 bytes
224 heads, 56 sectors/track, 12460 cylinders
Units = cylinders of 12544 * 512 = 6422528 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x08e53fd3

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1               1         168     1053568   82  Linux swap / Solaris
/dev/sda2   *         169        1841    10493056    7  HPFS/NTFS
/dev/sda3            1842       12460    66602368    5  Extended
/dev/sda5            1842        2344     3154688   83  Linux
/dev/sda6            2345        3014     4202112   83  Linux
/dev/sda7            3015       12460    59245184    7  HPFS/NTFS
Code:
Disk /dev/sda: 224 heads, 56 sectors, 12460 cylinders

Nr AF  Hd Sec  Cyl  Hd Sec  Cyl     Start      Size ID
 1 00   1   1    0 223  56  167        256    2107136 82
 2 80   0   1  168 223  56 1023    2107392   20986112 07
 3 00 223  56 1023 223  56 1023   23093504  133204736 05
 4 00   0   0    0   0   0    0          0          0 00
 5 00 223  56 1023 223  56 1023        256    6309376 83
 6 00 223  56 1023 223  56 1023        256    8404224 83
 7 00 223  56 1023 223  56 1023        256  118490368 07
Nicht sehr aussagekräftig, aber um der Vollständigkeit willen die hdparm-tT-Werte mit obigem Alignment und JFS.
Code:
 > hdparm -tT /dev/sda
/dev/sda:
Timing cached reads:   7288 MB in  1.99 seconds = 3654.08 MB/sec
 Timing buffered disk reads:  804 MB in  3.00 seconds = 267.76 MB/sec

Grüße,
mikar
 
Kleines How To

Hallo Zusammen,

ich habe ein W510 4389-W1B und eine Intel X25-M G2 80 GB . Dazu Ubuntu 10.04. Ich habe mich mit SSDs die letzten Wochen etwas beschäftigt und dazu ein kleines How To bei mir ins Wiki geschrieben.

hier klicken

Ich würde mich natürlich freuen, wenn Ihr euch mit weiteren Ratschlägen / Verbesserungen / Korrekturen anschließen würdet :-)

Code:
/dev/sda:
 Timing cached reads:   16292 MB in  2.00 seconds = 8153.97 MB/sec
 Timing buffered disk reads:  626 MB in  3.00 seconds = 208.64 MB/sec
 
zumindest bei ubuntu und gentoo ist eine blockgröße von 4 kb für ext{2,3,4} standard. zu finden in /etc/mke2fs.conf. bei anderen distirs dürfte es auch der fall sein.
 
RE: Kleines How To

1. Man kann noch hinzufügen,
a) dass bei erweiterten Partitionen das Alignment manuell korrigiert werden muss. Also per x in den Expertenmodus und mit b das Offset bestimmen.
b) dass automatisches TRIM mittels discard auch von btrfs unterstützt wird. Ebenso funktioniert manuelles TRIM diesen und auch anderen Dateisystem (s.o.).

2. Drei Dinge sind nicht so ganz klar:
a) über die erase block size der Intel SSDs gibt es keine eindeutigen Informationen. Neben 512kb ist auch 128kb im Gespräch: http://forums.anandtech.com/showthread.php?t=2069082
b) afaik ist der CFQ-Scheduler besser für den Einsatz mit SSDs geeignet, zumindest bei einer Intel. Ansosten eher noop. Wie kommst du auf deadline?
c) Wieso eine stripe size von 32? Bei einer Blockgröße von 4kb versucht das Dateisystem dann auf 128kb zu alignen. Die richtige Größe wäre imo 128, wenn wir schon ein 512k-alignment verwenden.

Grüße,
mikar
 
ad 1b: manuelles trimmen mit hdparm und wiper.sh geht bei ext4, xfs und btrfs online also bei gemountetem fs und bei den anderen fs nur offline. online gehts nur bei fs, die den fallocate() unterstützen und das sind die 3 genannten (oder hab ich welche vergessen). bei ext4, xfs und btrfs geht offline natürlich auch und bringt ein etwas besseres ergebnis als online-trimmen.
 
  • ok1.de
  • ok2.de
  • thinkstore24.de
  • Preiswerte-IT - Gebrauchte Lenovo Notebooks kaufen

Werbung

Zurück
Oben