Buffalo LS-WTGL v3 softan päivittäminen

Viestiketju alueella 'Tallennus' , aloittaja vesas, 01.10.2018.

Tagit:
  1. vesas

    vesas

    Viestejä:
    20
    Rekisteröitynyt:
    23.10.2016
    Vanha Buffalon nas poistui päivittäiskäytöstä ja kun tuossa oli alkuperäinen firmware niin harrastusmielessä piti tutkia mitäs tuohon saisi. Nas tölkkien koottutietopankki on näemmä kadonnut netistä (nas-central.org) joten tieto saikin sitten kaivella.

    Buffalon tuki on näemmä tehty vuosia sitten Debianin ARM versioon ja siksi tuo on säilynyt tuettuna siitä asti. Buffalon vanhat mallit käyttää Marvelin Orion5x sarjan prossuja, Debianin installerin tiedostot löytyy täältä:
    Index of /debian/dists/stretch/main/installer-armel/current/images/orion5x/network-console
    Buffalon tapauksessa levy pitää osioida toisessa Linux laitteessa siten että ensimmäinen osio on ext2 tyyppinen ja sinne laitetaan initrd.buffalo ja uImage.buffalo. Levy tölkkiin ja virrat päälle. Hetken kuluttua tölkki hakee dhcp:llä ip:n ja avaa ssh portin. Ssh:lla login (installer:install) ja vastassa odottaa normaali Debianin installerin ruutu.

    Asennus normaalisti, mutta /boot pitää olla oma osionsa ja sen tulee olla levyn ensimmäinen osio. Graaffista työpöytää ei kannata asentaa, kun ei ole sitä näytönohjainta.

    Asennuksen jälkeen käytössä on sitten normaali Debian.

    Sitten ongelmiin. LS-WTGL tuki on vain v1 laitteelle, tässä v3 versiossa USB:t pysyy mykkänä. Ilmeisesti USB hubin pitäisi kääntää liityntöjen virta päälle, mutta näin ei tapahdu. v1:sessä kun on vain yksi portti niin hubin tuki on puutteellinen. Ensimmäinen usb toimii kun laittaa sähköt muuten usb laitteeseen. Jos jollakulla on intoa/osaamista niin voisin ottaa vinkkejä vastaan mistäpäin kerneliä pitää ruuvata että saa kummatkin portit käyttöön ja sähköt päälle. Arm piirin gpio:ta ei tuota sähkö ohjaa, ne tuli jo käytyä läpi.

    Toinen kohta on laitteen puhallin ja virtakytkin. Näiden ohjaukset puuttuu. Puhallinta saa ohjattua thermal-devicen kautta echolla. Kytkinten tuki on rikki, ne joutuu ottamaan Linux GPIO:lla käyttöön. Tein oheisen scriptin joka ajetaan kerran minuutissa cronilla:

    #!/bin/bash
    # Purpose: Turn fan on if hdd temp is too high. Shutdown system is slide SW is OFF position
    # # -----------------------------------------------------------------
    HDDS="/dev/sda /dev/sdb"
    HDT=/usr/sbin/hddtemp
    LOG=/usr/bin/logger
    LEVEL1=0
    LEVEL2=45
    LEVEL3=50
    HDTEMP=$LEVEL3
    for disk in $HDDS
    do
    if [ -b $disk ]; then
    HDTEMP=$( ${HDT} --numeric ${disk} )
    #value below LEVEL1
    if [[ $HDTEMP -lt LEVEL1 ]];
    then
    $LOG "Fan off, HD temp $HDTEMP"
    echo 0 > /sys/class/thermal/cooling_device0/cur_state
    fi
    #value LEVEL1 and below LEVEL2
    if [[ $HDTEMP -ge LEVEL1 && $HDTEMP -lt LEVEL2 ]];
    then
    $LOG "Fan speed 1, HD temp $HDTEMP"
    echo 1 > /sys/class/thermal/cooling_device0/cur_state
    fi
    #value LEVEL2 and below LEVEL3
    if [[ $HDTEMP -ge LEVEL2 && $HDTEMP -lt LEVEL3 ]];
    then
    $LOG "Fan speed 2, HD temp $HDTEMP"
    echo 2 > /sys/class/thermal/cooling_device0/cur_state
    fi
    #value over LEVEL3
    if [[ $HDTEMP -ge LEVEL3 ]];
    then
    $LOG "Fan speed 3, HD $HDTEMP"
    echo 3 > /sys/class/thermal/cooling_device0/cur_state
    fi
    fi
    done

    #test if gpio22 exist, if not greate it
    if [ ! -d /sys/class/gpio/gpio22 ]; then
    echo 22 > /sys/class/gpio/export
    fi
    #test if gpio 10 exist, if not greate it
    if [ ! -d /sys/class/gpio/gpio10 ]; then
    echo gpio_keys > /sys/bus/platform/drivers/gpio-keys/unbind
    echo 10 > /sys/class/gpio/export
    fi
    SW_AUTO=$(cat /sys/class/gpio/gpio22/value)
    SW_ON=$(cat /sys/class/gpio/gpio10/value)
    if [[ ( "$SW_AUTO" == "1") && ( "$SW_ON" == "1" ) ]]; then
    echo 255 > /sys/class/leds/linkstation\:red\:alarm/brightness
    /sbin/shutdown -h +1 "Shutting down in 1 minute."
    fi

    Tölkki siis lukee hddtemp:illä levyjen lämpötilan ja asettaa sen mukaan puhaltimen kierrokset. Level arvoilla voi säätää halutut asterajat. Lisäksi luetaan kytkimen asento ja off asento ajaa laitteen sammuksiin.


    Vanhan firmiksen 2.6 sarjalaisesta 4-sarjan kerneliin siirtyminen toi 30-50% lisää nopeutta samballe. Ajemmin siirtyi ~15MB/s nyt saa 20-22M nopeuksia samalla sata-levyllä. Eipä tuota voi siis gigabittilaitteeksi kehua, mutta ylittyypähän 100 sentään vähän.
     
    Viimeksi muokattu: 01.10.2018
  2. vesas

    vesas

    Viestejä:
    20
    Rekisteröitynyt:
    23.10.2016
    Romukasasta löytyi toinenkin levy, joten laitoin sen Buffaloon. Lyhyt havainto että toisella levyllä ei saa olla primary 1 osiota, muuten ei osaa buutata. Fdisk:illä osiot pois ja tilalle primary 4. Nyt on kumpikin levy käytössä datalle, lvm:llä yhteen ja ext4 osiona samballa jaettuna.