Howto: Tweaking af filsystemet for bedre ydelse på 5 min.

Har du en guide til en funktion eller et program? Har du tips og trick, som du gerne vil dele med andre? Post dem her.
spook
Indlæg: 365
Tilmeldt: 20. nov 2006, 13:54
Geografisk sted: Gram//Skanderborg//Århus

Howto: Tweaking af filsystemet for bedre ydelse på 5 min.

Indlæg af spook »

Denne guide er en oversættelse/tilretning af en guide skrevet af GoldBuggie, fundet på http://www.ubuntuguide.org

I Linux er der flere forskellige filsystemer - to af de mest brugte er Ext3 og ReiserFS. Denne guide virker for dem begge.

Ext3 er et mere "sikkert" filsystem - ved et eventuelt crash er der rigtig gode chancer for at redde data. Dette går ud over ydelsen. ReiserFS er hurtigere, men med ringere datasikkerhed.

Mere om ReiserFS og Ext3 kan findes på wikipedia. Jeg vil ikke gå i dybden med forklaringer her :)

Ext3 og ReiserFS har 3 forskellige måder at journalisere data:

1) Journal Data Writeback
2) Journal Data Ordered
3) Journal Data

Som standard bruges nummer 2. For at få mere fart på vil vi sætte det til at bruge nummer 1. Prisen der betales herfor, er at ved et crash risikerer du at gamle data skrives til filerne. Det betyder at hvis du lige har skrevet på "vigtig opgave.odt", så risikerer du at det der restores er det du skrev for en time siden, i stedet for 2 minutter siden. Det kan jeg leve med - hvis du også kan, så læs videre :)

Nu skal vi til at lave noget... Først skal vi justere vores fstab:

Kode: Vælg alt

gksudo gedit /etc/fstab


Vi skal tilføje lidt til root-partitionen - din linie i fstab ser muligvis anderledes ud, f.eks. HDA1 i stedet for SDA2

Kode: Vælg alt

# /dev/sda2 -- converted during upgrade to edgy
UUID=9196f341-b39f-4b1f-b0df-b8a3d7d605a2 / ext3 defaults,errors=remount-ro,noatime,data=writeback 0 1


Det jeg har tilføjet er data=writeback

Et andet eksempel på samme linie er:

Kode: Vælg alt

/dev/hda1 / ext3 defaults,errors=remount-ro,atime,auto,rw,dev,exec,suid,nouser,data=writeback 0 1


Gem filen, og luk gedit - blot for at starte det igen, når vi skal justere grub:

Kode: Vælg alt

gksudo gedit /boot/grub/menu.lst


Her skal vi tilføje rootflags=data=writeback til det valg vi normalt booter + dets "recovery mode". For mig ser menu.lst nu sådan her ud:

Kode: Vælg alt

title      Ubuntu, kernel 2.6.17-10-386
root      (hd0,1)
kernel      /boot/vmlinuz-2.6.17-10-386 root=UUID=9196f341-b39f-4b1f-b0df-b8a3d7d605a2 ro quiet splash rootflags=data=writeback
initrd      /boot/initrd.img-2.6.17-10-386
savedefault
boot

title      Ubuntu, kernel 2.6.17-10-386 (recovery mode)
root      (hd0,1)
kernel      /boot/vmlinuz-2.6.17-10-386 root=UUID=9196f341-b39f-4b1f-b0df-b8a3d7d605a2 ro single rootflags=data=writeback
initrd      /boot/initrd.img-2.6.17-10-386
boot


Gem & luk efter endt redigering.

Når der kommer en opdatering af Kernel'en vil disse tilføjelser automatisk blive overskrevet - medmindre vi lige kører følgende:

Kode: Vælg alt

sudo update-grub


Nu bliver det tilføjet til kernel-linien, og vil blive der selvom vi opdaterer kernel.

Til sidst er der lige en ting der skal gøres hvis du kører Ext3 (hvis du ikke ved om du gør, så gør du - Reiser skal selv vælges under install)

Kode: Vælg alt

 sudo tune2fs -o journal_data_writeback /dev/sda2


Igen skal du være opmærksom på at sda2 er i mit tilfælde - din kan meget vel hedde hda1 i stedet. Nemmeste måde at tjekke det, er at kigge i fstab. (gksudo gedit /etc/fstab)

Tjek om det kører:

Kode: Vælg alt

 sudo tune2fs -l /dev/sda2


Som en sidste ting laver vi det så systemet ikke skal opdatere access time hver eneste gang det åbner en fil - vi skal rette i fstab:

[gksudo gedit /etc/fstab]

Her skal vil tilføje en option der hedder noatime. I mit tilfælde ser det sådan her ud:

Kode: Vælg alt

# /dev/sda2 -- converted during upgrade to edgy
UUID=9196f341-b39f-4b1f-b0df-b8a3d7d605a2 / ext3 defaults,errors=remount-ro,noatime,data=writeback 0 1


Så er der kun tilbage at genstarte, og nyde et system med mere fart på! Jeg kan især mærke forskel når jeg bladrer i billederne fra mit kamera (3,5Mb /stk) - der er nu stort set ingen ventetid, og det går i hvert fald VÆSENTLIGT hurtigere end det gør i XP, eller i Ubuntu før dette tweak. God fornøjelse!

Kommentarer, rettelser, indspark og spørgsmål er som altid velkomne :)
Senest rettet af spook 2. feb 2007, 12:51, rettet i alt 1 gang.
Billede
Ormen
Indlæg: 275
Tilmeldt: 6. dec 2006, 12:15
Geografisk sted: Trekantsområdet

Re: Howto: Tweaking af filsystemet for bedre ydelse på 5 min

Indlæg af Ormen »

Har lige et par ting til afklaring :) :

spook skrev:Gem filen, og luk gedit - blot for at starte det igen, når vi skal justere grub:

Kode: Vælg alt

gksudo gedit /boot/grub/menu.lst


Her skal vi tilføje rootflags=data=writeback til det valg vi normalt booter + dets "recovery mode". For mig ser menu.lst nu sådan her ud:

Kode: Vælg alt

title      Ubuntu, kernel 2.6.17-10-386
root      (hd0,1)
kernel      /boot/vmlinuz-2.6.17-10-386 root=UUID=9196f341-b39f-4b1f-b0df-b8a3d7d605a2 ro quiet splash rootflags=data=writeback
initrd      /boot/initrd.img-2.6.17-10-386
savedefault
boot

title      Ubuntu, kernel 2.6.17-10-386 (recovery mode)
root      (hd0,1)
kernel      /boot/vmlinuz-2.6.17-10-386 root=UUID=9196f341-b39f-4b1f-b0df-b8a3d7d605a2 ro single rootflags=data=writeback
initrd      /boot/initrd.img-2.6.17-10-386
boot



Herefter skal der vel først gemmes og lukkes før man går videre til næste punkt?

Tjek om det kører:

Kode: Vælg alt

 sudo tune2fs -l /dev/sda2



Hvordan ved jeg det kører?

Som en sidste ting laver vi det så systemet ikke skal opdatere access time hver eneste gang det åbner en fil - vi skal rette i fstab:

[gksudo gedit /etc/fstab]

Her skal vil tilføje en option der hedder noatime. I mit tilfælde ser det sådan her ud:

Kode: Vælg alt

# /dev/sda2 -- converted during upgrade to edgy
UUID=9196f341-b39f-4b1f-b0df-b8a3d7d605a2 / ext3 defaults,errors=remount-ro,noatime,data=writeback 0 1



Denne tilføjelse har du allerede med, 1. gang du roder i fstab, kan de 2 punkter ikke føjes sammen eller har rækkefølgen noget at sige der?
/Ormen
Med en Ubuntu-overbevist svigermor!
spook
Indlæg: 365
Tilmeldt: 20. nov 2006, 13:54
Geografisk sted: Gram//Skanderborg//Århus

Re: Howto: Tweaking af filsystemet for bedre ydelse på 5 min

Indlæg af spook »

Ormen skrev:
Herefter skal der vel først gemmes og lukkes før man går videre til næste punkt?


Korrekt! Hermed rettet...
Tjek om det kører:

Kode: Vælg alt

 sudo tune2fs -l /dev/sda2




Hvordan ved jeg det kører?

Det ved du bare! Ej, der kommer enten en statusmelding, eller en fejl. Prøver lige at finde de præcise når jeg kommer til min pc igen.
Som en sidste ting laver vi det så systemet ikke skal opdatere access time hver eneste gang det åbner en fil - vi skal rette i fstab:

[gksudo gedit /etc/fstab]

Her skal vil tilføje en option der hedder noatime. I mit tilfælde ser det sådan her ud:

Kode: Vælg alt

# /dev/sda2 -- converted during upgrade to edgy
UUID=9196f341-b39f-4b1f-b0df-b8a3d7d605a2 / ext3 defaults,errors=remount-ro,noatime,data=writeback 0 1



Denne tilføjelse har du allerede med, 1. gang du roder i fstab, kan de 2 punkter ikke føjes sammen eller har rækkefølgen noget at sige der?


Det tror jeg faktisk godt de kan... Jeg vil prøve at gå hele denne guide lidt kritisk igennem, og måske scripte noget af den. Godt fruen har en laptop jeg kan lade det gå ud over!
Billede