Mikä kumma että kun laitoin fstabiin kiintolevyn optiokohtaan kohdan sync (editoin tuota mousepadilla sudona) niin silti käynnistyksen jälkeenkin kovo tuntuu käyttävän kirjoitusvälimuistia? Katsoin nimittäin sen hdparmilla (hdparm -W /dev/sda) ja se palauttaa arvon 1 eli kirjoitusvälimuisti on päällä.
Miten tuon syncin saa päälle elikkä siis kirjoitusvälimuistin pois päältä pysyvämmin, ei viitsis aina jokaisen käynnistyksen jälkeen komentaa päätteelle "sudo hdparm -W0 /dev/sda"..
Tuolla sen toki saisi pois mutta kuten sanoin, ei joka käynnistyksen jälkeen viitsi erikseen komentaa kun kerran fstabissa on sitä varten optiokin olemassa ja se käynnistyksen yhteydessä liitetään ja voisi samalla kytkeä välimuistin pois..
Kovo on Seagate PATA-levy. Käyttis Xubuntu 8.04.1.
Sitten toinen kysymys. Miksi nuo uudemmat Ubuntut ym. luokittelee IDE eli Pata-levynkin Sata-levyksi? Jos esim kirjoitan päätteessä "sudo fdisk /dev/hda" niin ei löydy levyä mutta jos kirjoitan "sudo fdisk /dev/sda" niin silloin se löytää levyn?
Miten tuon syncin saa päälle elikkä siis kirjoitusvälimuistin pois päältä pysyvämmin, ei viitsis aina jokaisen käynnistyksen jälkeen komentaa päätteelle "sudo hdparm -W0 /dev/sda"..
Tuolla sen toki saisi pois mutta kuten sanoin, ei joka käynnistyksen jälkeen viitsi erikseen komentaa kun kerran fstabissa on sitä varten optiokin olemassa ja se käynnistyksen yhteydessä liitetään ja voisi samalla kytkeä välimuistin pois..
Kovo on Seagate PATA-levy. Käyttis Xubuntu 8.04.1.
Sitten toinen kysymys. Miksi nuo uudemmat Ubuntut ym. luokittelee IDE eli Pata-levynkin Sata-levyksi? Jos esim kirjoitan päätteessä "sudo fdisk /dev/hda" niin ei löydy levyä mutta jos kirjoitan "sudo fdisk /dev/sda" niin silloin se löytää levyn?
Vastaukset 7
Vanhimmat
Ensin on Linuxin levyvälimuisti, joka sijaitsee koneen keskusmuistissa. Tämän ominaisuuksia voi joissain tiedostojärjestelmissä säätää mount komennolle annettavalla optiolla. Mount komennon säätötiedosto on fstab.
Toinen on itse levyllä sijaitseva välimuisti, jota ohjaillaan hdparm nimisellä ohjelmalla. Tämä lukee taas asetuksensa bootissa hdparm.conf tiedostosta. Tämä välimuisti ei sitten riipu mitenkään käyttöjärjestelmästä vaan sitä ohjaa kiintolevyn oma firmware.
kirjoitusvälimuistia voi sit kytkee pois tuoss hdparm.conf tiedostossa, ei oo meinaan kokemusta tuon tiedoston editoinnista. fstabin editointi jo onnistuu, kuten kerroinkin. Tuosta levyn omasta välimuistista en ollut tietoinen, luulin että vain käyttiksessä on välimuisti, tai no toki LUKUvälimuistin tiesin olevan myös itse levyssä mutta tuo kirjoitusvälimuisti josta siis on tässä kyse.
hadparm:lla saat vaikka levysi tuhottua ellet ole erityisen varovainen joten mietintämyssy päähän aina kun säädät hdaparm:lla jotakin.
siis hdparm oli tarkoitus sanoa joka kohdassa ;)
vaan tuon että ottaisin kirjoitusvälimuistin pois käytöstä eli tieto kirjoitetaankin suoraan levylle eikä jää mihinkään puskuriin. Mä nimittäin tiedän että hdparmilla voi saada levyn jumiin, jopa tuhottua. On noissa aikalailla vaarallisia komentoja joukossa, tiedän myös sen että toi -W pitää todella kirjoittaa isolla W kirjaimella, se pieni w on ihan muuta kuin kirjoitusvälimuistiin vaikuttavaa. En ulkoa muista mikä ton pikku -w:n tarkoitus mut ainakin se on mulle tarpeeton komento.
Mut kaipaisin siis neuvoja miten editoida hdparm.confia niin että saan tuon kirjoitusvälimuistin myös itse levystä pois käytöstä.
Moi.
Elikkäs, ensin tuo hdparm.conf:
/dev/sdx {
write_cache = off
}
Sitten tuo IDE->SCSI
Sulla on kernelin config tiedostossa tällänen:
Sitten sulla on joko:
Tämä on se jota yleentä nykyisin käytetään eli libata. libata taas käyttää scsi_lib ihan suoraan.
CONFIG_BLK_DEV_SD=y
CONFIG_ATA=y ja sille händleri joko CONFIG_SATA_AHCI=y tai joku muu.
Eli libata käyttää natiivina scsi nimiä.
Sitten hieman vanhempaa kalustoa:
IDE_GD=y IDE levy.
BLK_DEV_IDESCSI=y Levylle SCSI tunnus.
t: -> toivottavasti oli epäselvä.
siis tuo viestisi loppuosan kohta.
Tuon alun vielä ymmärsin jossa käsiteltiin hdparm.conf tiedostoa.