time dd if=/dev/zero of=/mnt/testfile bs=16k count=4096Ez szekvenciálisan ír a lemezre (a /mnt/testfile-ba), létrehoz egy 64 MB-os fájlt nullákkal feltöltve, és ennek az írásnak az idejét adja vissza a time parancs. Ezt a fájlméretet veheted nagyobbra is, nagyobb memóriánál, hogy kiküszöböld a lemezcache jótékony hatását. Ebből megcsinálsz egy párat (5-10), és átlagolod őket. Igy megkapod azt a sebességet, amivel a leggyakrabban létrejön a kapcsolat. Ezután próbáld ki a fájl visszaolvasását:
time dd if=/mnt/testfile of=/dev/null bs=16kEzt is csináld meg egy párszor. Aztán csatold le, majd vissza a kipróbálandó NFS szervert, de úgy, hogy nagyobbra állítod az rsize és a wsize értékét. Ezek 1024 többszörösei lehetnek, de nem nagyobbak 16384-től, mert ennyi a maximális méret az NFS második verziójánál. Ha túl nagy méretet adsz meg nekik, akkor a tipikus jelenség az, hogy belépve a becsatolt könyvtárba és kiadva egy ls parancsot egy hiányos fájllistát kapunk, de hibaüzenet nélkül! Vagy például olvasni akarsz egy fájlt és nem sikerül, de nem jön hibaüzenet. Ezeket megelőzendő kell helyesen beállítanod az rsize és a wsize méretét. Újabb Linux kerneleknél az előreolvasás mérete nagyobb vagy megegyezik a gép lapméreténél. Ez Intel processzoros gépeken 4096 byte. Az előreolvasással jelentős mértékben nő az NFS olvasási sebessége.
Ne felejtsd el a kikísérletezett adatokat beírni a /etc/fstab fájlba. Egy trükk az NFS írási sebességének növelésére, ha kikapcsolod a szinkron írást a szerveren. Az NFS specifikáció azt mondja, hogy az NFS nem válaszol addig, amíg be nem fejezte az írást a lemezre. Ez korlátozza az írási sebességet, míg az aszinkron írás növeli azt. A Linux nfsd-je sohasem használja a szinkron írást, mivel a Linux fájlrendszerében ez nincs implementálva, de nem Linux szervereknél hasznos lehet valami hasonló beállítás:
/dir -async,access=linuxboxAz adott gép manuáljának tanulmányozása hasznos lehet a beállításban.