Ustawianie dysków twardych i ich testy
Program hdparm znajduje się na trzeciej płycie standardowej dystrybucji Mandrake 8.2.
Umożliwia on testowanie parametrów dysków twardych i ich późniejsze ustawianie. Ponieważ jest to
"groźne" narzędzie, aby móc pracować z tym programem należy przejść (na konsoli) w ustawienia root
poleceniem su -, enter. Następnie piszemy hdparm /dev/hdb (bo u mnie Linux jest na drugim dysku twardym) i otrzymujemy (w moim przypadku) aktualne ustawienia dysku:
multcount = 32 (on)
I/O support = 0 (default 16 -bit)
unmaskirq = 0 (off)
using_dma = 1 (on)
keepsettings = 0 (off)
nowerr = 0 (off)
readonly = 0 (off)
readhead = 8 (on)
geometry = ...
busstate =1 (on)
Jak rozumieć te symbole multcount = 32 mówi nam o trybie
pracy 32 bitowej, I/O support = 0 informuje nas ile bitów można przesłać na jedno przerwanie,
using_dma = 1 mówi o trybie pracy dysku (dma lub udma). Reszta parametrów ma mniejsze znaczenie.
Przechodzimy teraz do fazy testowania. Wydajemy polecenie hdparm -tT /dev/hdb i otrzymujemy:
57,86 MB/sec oraz 7,74 MB/sec. Pierwsza cyfra mówi nam o szybkości pracy dyskowej pamięci (cache), a druga o prędkości odczytu danych z dysku. Wartości te są małe ze względu na stary sprzęt i stary dysk. Aby uzyskać dodatkowe informacje o maksymalnych ustawieniach parametrów dysku należy wydać polecenie
hdparm -i /dev/hdb. Z otrzymanych danych interesują nas nastepujące parametry: MaxMultiSect = 32
oraz MultiSect = 32 i *udma 2. Posiadając w/w dane możemy wpisać polecenie ustawiające
parametry dysku.
Aby wiedzieć dokładnie co będziemy robić należy skorzystać z man hdparm, który jest po polsku i zapoznać się z opcjami programu. Ja wypisze tylko te opcje, które mnie interesowały. I tak mamy:
-qa32 - liczba sektorów odczytywanych z wyprzedzeniem 32 bitowym
-qA1 - włączanie odczytu z wyprzedzeniem (buforowanie)
-qc1 - włączanie obsługi 32 bitowego I/O
-qd1 - włączanie trybu dma i udma
-qm32 - ustawianie licznika wielosektorowego I/O na 32 bity
-qW1 - włączanie zapisu z wyprzedzeniem (buforowanie)
-qu1 - korzystanie z innych przerwań niż zarezerwowane dla napędów
-qX64 - włączenie trybu udma 0
-qX65 - włączenie trybu udma 1
-qX66 - włączenie trybu udma 2
-qX67 - włączenie trybu udma 3
-qX68 - włączenie trybu udma 4
-qX69 - włączenie trybu udma 5
Z linii poleceń należy napisać: hdparm -qa32 -qA1 -qc1 -qd1 -qm32 -qu1 -qW1 -qX66 i wcisnąć enter. Zmiany ustawień parametrów dysku zostały wprowadzone do systemu i działają od razu. Jedynym mankamentem takiego rozwiązania jest utracenie tych ustawień po restarcie systemu. Aby tego uniknąć należy powyższą sekwencje dopisać do pliku /etc/rc.d/rc.local (na samym końcu). Wtedy program hdparm bedzie ustawiał parametry dysku przy każdym starcie systemu. Następnie należy dokonać restartu systemu i po jego uruchomieniu od razu dokonać testu (hdparm /dev/hdb). Eksperymentując z programem hdparm należy zachować szczególną uwagę, gdyż wpisując zawyżone parametry można uszkodzić system
plików. Czy można uszkodzić dysk? Tego nie wiem, bo w opisie programu nic na ten temat nie znalazłem.
Opisany powyżej sposób ustawiania dysku jest na stałe stosowany na moim sprzęcie i testy pokazały, że
dysk czyta szybciej (105,79 MB/sec i 8,15 MB/sec).
do góry 2003.05.17