everyone who is bored with slow hard drives
can try these steps and see if it will do what it should do :
| Speeding Up Your Linux Partitions |
| By Craig Keough |
| With a few notes by R a v e N |
So, you installed LINUX and the speed is not what you heard it was. Am I correct ?
The default installation of any distribution is designed to work on a broad range of computer setups and therefore has minimal optimizations (Same as Windows9x by the way).
Freshly-installed boxes come with a default kernel and default settings, which are supposed to be as compatible as possible. By optimizing your settings, you can do wonders. For example: RedHat 6.2 comes with a 660k kernel, but you can easily reduce it down to somewhere around 500k, even less. This should speed up your performance greatly.
But today we're about to do something completely different.
We will begin by tweaking your hard drive for the fastest performance, so if you are using
KDE, then exit to the console. ( because of the nature of these tweaks your computer could become unstable resulting in corrupted or lost data, therefore it should be done without X-Windows running)
if you are logged in as a normal user, type su at the command prompt then enter the password.
The command we will be using is : hdparm
You can get a list of all the commands for hdparm by typing it by itself and hitting enter,
A further explanation of these commands can be obtained by typing man hdparm
The next step will be to determine what your hard drive is called, hda, hdb, etc.
If you already know GREAT otherwise :
type dmesg this will display all the information that was displayed during boot.
If you have 1 hard drive then more than likely it is called: hda
If you have 2 hard drives then more than likely it is called: hdb
Lets assume it is hda.
Now type: hdparm -I /dev/hda
This will read all sorts of information directly from the drive, telling us what it can support.
Before you use a particular tweak, make sure you check this information to make sure your drive supports it.
Do a speed test by typing: hdparm -t /dev/hda
Repeat this a few times and get a general idea of the speeds and write them down
so when we are finished you can compare the results.
I got the results of : 4.31 MB/s
Next Type in: hdparm /dev/hda
This output tells you what the defaults are set at, you will notice that I/O
support reads 16-bit, its probably not using DMA and the unmask irq is probably 0 (off),
along with multicount being disabled.
Most newer hard drives can use these settings, so we will be turning them on.
type in: hdparm -c3 -m16 /dev/hda
This will turn on multireads and turn on the 32-bit flag w/sync
Now do your speed test again, what a great improvement !!!
You may want to stop here because the next few tweaks could make your computer lock up
if they are not supported.
We need to turn DMA on by typing: hdparm -d1 /dev/hda
We can also turn on multiword DMA2 by typing hdparm -d1 -X34 /dev/hda
Set the unmask irq bit to on by typing: hdparm -u1 /dev/hda
Do: man hdparm to understand what this does.
And the last setting will be to set the PIO mode of your drive, so look at the inforamtion
from doing hdparm -I /dev/hda and see which pio modes it supports.
Type in hdparm -p4 /dev/hda
Replace 4 with the highest number supported by your drive.
Run: hdparm -t /dev/hda
At this point I got a reading of 19.43 MB/s
Which is a drastic improvement.
Now we dont want to type in these parameters every time we reboot, so we will add them to a startup script.
Change to /etc/rc.d
I simply added them to the end of the rc.local script, because It is the last script that
is executed and any fscking is done before that point.
You can combine all these settings on one line or you can put each on a separate line
if you want to make it easier to understand. Also make sure you put in a comment
saying what these settings are for so you can find them easier if you need to change them.
Example: hdparm -c3 -m16 -d1 -X34 -u1 -p4 -kK /dev/hda
PLEASE NOTE: do these things at your own risk, i am not responsible.
if any one have more about this , please post it here. and if any one can tell au about the technecal stuff like: DMA and IRQ ..etc. please do that ...
guys, when i did this in my old kernel 2.4.5 it didnt work. i was asking if any of you have any recources about modefing and configuring new kernels on you your box, you know what to do....