OWFS på Buffalo Linkstation

OWFS - One Wire File System är en Linuxmjukvara som stödjer de flesta kommersiellt tillgängliga 1wire-enheterna. OWFS saknar helt möjligheter att presentera data - detta måste göras med tex RRDTool
Kategoriregler
Vill du visa bilder i ditt inlägg? Använd funktionen "Ladda upp bilaga" nedanför textrutan!
MartinF
Tar hemautomation på allvar
Inlägg: 141
Blev medlem: 04 jan 2010, 12:24
Ort: Sunne

OWFS på Buffalo Linkstation

Inlägg av MartinF »

Jag har införskaffat en Buffalo Linkstation Live 2TB V2 NAS med ARM Marvel Kirkwood-processor: http://www.dustin.se/buffalo-linkstatio ... 5010527993. Den kör Buffalos egen Linux distribution med en 2.6.31.8 kernel. Firmware 1.56. Jag har skaffat mig full access via PuTTy och SSH http://forum.buffalo.nas-central.org/vi ... 68&t=24717. Den är från början redan laddad med perl, mysql, phpMyAdmin, m.m.

Nu skulle det vara trevligt att få in OWFS också, och senare rrdtool. Med mina kunskaper i Linux är detta en stor utmaning. Alla tips om vägval mottages tacksamt!
Albin polar 35,Laddomat, 3x750l, Danfoss ECL 100 & Sfinxs solfångare. Loggar och styr vedpanna, elpatron, solfångare, motorvärme och mycket annat med 1-wire, zwave, och webswitch via Domoticz.
MartinF
Tar hemautomation på allvar
Inlägg: 141
Blev medlem: 04 jan 2010, 12:24
Ort: Sunne

Re: OWFS på Buffalo Linkstation

Inlägg av MartinF »

Jag provade att följa instruktionerna i den senare delen av detta dokument:http://owfs.org/uploads/Debian%20with%2 ... w%20To.pdf
Resultatet blev

Kod: Markera allt

configure: error: no acceptable C compiler found in $PATH
Något saknas alltså för att bygga det hela...
Fortsättning följer och tips mottas tacksamt.
Senast redigerad av MartinF den 28 dec 2011, 23:45, redigerad totalt 1 gånger.
Albin polar 35,Laddomat, 3x750l, Danfoss ECL 100 & Sfinxs solfångare. Loggar och styr vedpanna, elpatron, solfångare, motorvärme och mycket annat med 1-wire, zwave, och webswitch via Domoticz.
jed
Tar hemautomation på allvar
Inlägg: 179
Blev medlem: 16 apr 2011, 10:51
Ort: Stockholm

Re: OWFS på Buffalo Linkstation

Inlägg av jed »

Du har ingen c-kompilator installerad.
Jag vet inte vilken distrubution buffalo har utgått från. Jag gissar att det är debian eller redhat (eller någon av dom distro som bygger på dom).

Testa:

Kod: Markera allt

sudo apt-get install gcc
(debianbaserat)
eller

Kod: Markera allt

sudo yum install gcc
(redhatbaserat)


Jag har ingen redhat åtkomlig hemifrån så jag är lite osäker på vad paketet heter, funkar det inte så prova med
yum search gcc


En av dom borde fungera, den andra gör det inte. Beror som sagt på vilken dist buffalo bygger på :)
MartinF
Tar hemautomation på allvar
Inlägg: 141
Blev medlem: 04 jan 2010, 12:24
Ort: Sunne

Re: OWFS på Buffalo Linkstation

Inlägg av MartinF »

Det är Debian och kompilatorn saknades. Kanske en del annat också. Istället har jag nu klämt in Debian Squeeze enligt denna instruktion: http://buffalo.nas-central.org/wiki/Deb ... _others%29. Därmed åkte allt förinstallerat ut, men det känns bra med en ren installation.
Albin polar 35,Laddomat, 3x750l, Danfoss ECL 100 & Sfinxs solfångare. Loggar och styr vedpanna, elpatron, solfångare, motorvärme och mycket annat med 1-wire, zwave, och webswitch via Domoticz.
MartinF
Tar hemautomation på allvar
Inlägg: 141
Blev medlem: 04 jan 2010, 12:24
Ort: Sunne

Re: OWFS på Buffalo Linkstation

Inlägg av MartinF »

Samma fel igen trots ny Debian! Provar

Kod: Markera allt

sudo apt-get install gcc
men det funkar inte för också sudo saknas...
Provar utan sudo, och då går det!

Samma problem uppstod sedan för make, men det kunde lösas på samma sätt.
Också felmeddelandet

Kod: Markera allt

preprocessor "/lib/cpp" fails sanity check
kunde jag lösa genom

Kod: Markera allt

apt-get install g++
Och på motsvarande sätt med liblist-moreutils-perl

Tack!
Albin polar 35,Laddomat, 3x750l, Danfoss ECL 100 & Sfinxs solfångare. Loggar och styr vedpanna, elpatron, solfångare, motorvärme och mycket annat med 1-wire, zwave, och webswitch via Domoticz.
MartinF
Tar hemautomation på allvar
Inlägg: 141
Blev medlem: 04 jan 2010, 12:24
Ort: Sunne

Re: OWFS på Buffalo Linkstation

Inlägg av MartinF »

Jag följer sedan fortsättningen av Ubuntu guiden här på forumet (som jag kanske borde följt redan från början) startar OWFS och får "Segmenteringsfel". :evil:
Vad betyder det?
Albin polar 35,Laddomat, 3x750l, Danfoss ECL 100 & Sfinxs solfångare. Loggar och styr vedpanna, elpatron, solfångare, motorvärme och mycket annat med 1-wire, zwave, och webswitch via Domoticz.
jed
Tar hemautomation på allvar
Inlägg: 179
Blev medlem: 16 apr 2011, 10:51
Ort: Stockholm

Re: OWFS på Buffalo Linkstation

Inlägg av jed »

sudo gör att du kan köra kommandon med fulla rättigheter som en vanlig användare, men om du kan köra dom ändå så har du loggat in som root och har redan fulla rättigheter.
installera sudo (apt-get install sudo) och logga in som din vanliga användare istället.

segmenteringsfel betyder två saker:
1. du har installerat systemet med svenskt språk. Blir jobbigt att googla på felmeddelanden ;)
2. programmet krashar, segmentation fault på engelska. Den har antagligen dumpat ut sin minnesarea på en fil.


Hur startar du owfs? Vilket kommando kör den?
MartinF
Tar hemautomation på allvar
Inlägg: 141
Blev medlem: 04 jan 2010, 12:24
Ort: Sunne

OWFS på Buffalo Linkstation

Inlägg av MartinF »

Startade owfs enligt forumguiden för Ubuntu. Märker nu att om jag startar med sudo så får jag inget felmeddelande. Jag får å andra sidan inga givare mappade heller. Märkligt att det kan bli någon skillnad eftersom jag ändå kör som root?

Dags för felsökning alltså och misstankarna riktas mot USB-porten. När jag stoppar in en sticka så flashar dioden till men tänds sedan inte mer. Där verkar finnas ström men stickan upptäcks nog inte av systemet. Vad saknas?
Albin polar 35,Laddomat, 3x750l, Danfoss ECL 100 & Sfinxs solfångare. Loggar och styr vedpanna, elpatron, solfångare, motorvärme och mycket annat med 1-wire, zwave, och webswitch via Domoticz.
jed
Tar hemautomation på allvar
Inlägg: 179
Blev medlem: 16 apr 2011, 10:51
Ort: Stockholm

Re: OWFS på Buffalo Linkstation

Inlägg av jed »

Jag har ingen lysdiod på min 1-wireadapter, iaf ingen som lyser. (den sitter lite dumt till så jag ser inte om det finns någon på den).

Kör alla kommandon nedan som root, inte som din vanliga användare.
Och ta bort phpmyadmin så snart du skapat dina databaser, det är ett säkerhetshål utan dess like...

Du kan kolla vad som sitter inkopplat på usb med kommandot lsusb:

Kod: Markera allt

root@ha:~# lsusb
...
Bus 002 Device 003: ID 04fa:2490 Dallas Semiconductor DS1490F 2-in-1 Fob, 1-Wire adapter
...
Du kan även dra ur och stoppa i den och kolla vad dmesg säger. Det är bara att skriva dmesg och kolla dom sista raderna.

Om du ser din 1-wireadapter så kan du fortsätta med owfs.
Owserver och owhttpd kan du skippa om du bara vill läsa av temperaturer etc via owfs.

OBS! Se till att du inte har någonting monterat innan du startar! Starta om servern om du är osäker.

Så här startar jag owfs på min server:

Kod: Markera allt

/opt/owfs/bin/owfs -u --allow_other --usb_regulartime  /mnt/owfs
Då kan jag läsa av alla sensorer som vilken användare som helst.

Har lagt in det i ett (enkelt) startskript, det kan bara dra igång owfs, inte kolla status eller avmontera det. Det gör jag för hand.
Skapa ett skript i /etc/init.d/owfs och skriv:

Kod: Markera allt

#!/bin/sh

/opt/owfs/bin/owfs -u --allow_other --usb_regulartime  /mnt/owfs
Sätt rättigheterna på skriptet så det kan köras:

Kod: Markera allt

chmod 0755 /etc/init.d/owfs
Se till att det körs när servern bootas:

Kod: Markera allt

update-rc.d owfs defaults
Nu ska du ha en katalog som heter /mnt/owfs, i den ska det finnas några kataloger som börjar på en siffra. Det är dina sensorer.
MartinF
Tar hemautomation på allvar
Inlägg: 141
Blev medlem: 04 jan 2010, 12:24
Ort: Sunne

Re: OWFS på Buffalo Linkstation

Inlägg av MartinF »

Tack för alla tips.
OWFS kan jag ganska väl, har loggning som snurrar sedan ett par år på en PC med Ubuntu. Sämre är det med kunskaperna i Linux och problemet just nu är att få Linux Squeeze att gå som det ska på min NAS. När detta funkar ska jag flytta över allt jag har från PC:n till denna mera strömsnåla maskin. Rubriken på denna tråd satte jag när jag trodde jag var nära att få det att funka, beklagar om jag var otydlig med problemet.

Kan inte kolla just nu men min 1-wireadapter har nog inte heller någon diod, vad jag provade med var en minnessticka.

Det var två användbara kommandon du gav mig:
lsusb returnerar en tom rad.
dmesg säger att "program smartctl is using a deprecated SCSI ioctl, please convert it to SG_IO".

Jag diskuterar problemet samtidigt på det tidigare nämnda forumet för Buffalo NAS: http://forum.buffalo.nas-central.org/vi ... 68&t=24717.
Albin polar 35,Laddomat, 3x750l, Danfoss ECL 100 & Sfinxs solfångare. Loggar och styr vedpanna, elpatron, solfångare, motorvärme och mycket annat med 1-wire, zwave, och webswitch via Domoticz.
jed
Tar hemautomation på allvar
Inlägg: 179
Blev medlem: 16 apr 2011, 10:51
Ort: Stockholm

Re: OWFS på Buffalo Linkstation

Inlägg av jed »

om lsusb returnerar en tom rad så funkar inte usb för dig.

Kollade på länken du skickade, "insserv: warning: script 'usb' missing LSB tags and overrides" kan du skippa. Det enda det betyder är att du saknar lite kommentarer i början av ditt skript.
T.ex dom här:

Kod: Markera allt

### BEGIN INIT INFO
# Provides:          sudo
# Required-Start:    $local_fs $remote_fs
# Required-Stop:
# X-Start-Before:    rmnologin
# Default-Start:     2 3 4 5
# Default-Stop:
# Short-Description: Provide limited super user privileges to specific users
# Description: Provide limited super user privileges to specific users.
### END INIT INFO
"/etc/init.d/usb: 23: Syntax error: "(" unexpected" är däremot allvarligt, du har missat att kopiera något/några tecken när du skapade startskriptet till usb eller så har du fått in ett extra tecken som inte ska vara där. T.ex kanske ett ( som ska vara en kommentar följde med av misstag?
Kopiera in hela filen /etc/init.d/usb här så kan vi kolla på den.
MartinF
Tar hemautomation på allvar
Inlägg: 141
Blev medlem: 04 jan 2010, 12:24
Ort: Sunne

Re: OWFS på Buffalo Linkstation

Inlägg av MartinF »

Tack igen, här är hela filen:

Kod: Markera allt

root@MYNAS:~# cat -n /etc/init.d/usb
     1  #!/bin/sh
     2  #
     3  # usb: control USB interface power status
     4  #
     5  # blstools - Tools for Buffalo Linkstation
     6  # Copyright (C) 2010-2011 Michele Manzato
     7  # Distributed under the MIT License
     8
     9  MODULES=("usbcore" "ehci-hcd" "ohci-hcd" "uhci-hcd" "usb_storage" "usblp")
    10
    11  load_modules()
    12  {
    13          COUNTER=0
    14          while [ ${MODULES[${COUNTER}]} ]
    15          do
    16                  modprobe ${MODULES[${COUNTER}]}
    17                  [ $? -ne 0 ] && return 1
    18                  COUNTER=$((${COUNTER} + 1))
    19          done
    20          return 0
    21  }
    22
    23  unload_modules()
    24  {
    25          COUNTER=${#MODULES[@]}
    26          while [ ${COUNTER} -ge 0 ]
    27          do
    28                  modprobe -r ${MODULES[${COUNTER}]}
    29                  [ $? -ne 0 ] && return 1
    30                  COUNTER=$((${COUNTER} - 1))
    31          done
    32  }
    33
    34  detect_usbfs()
    35  {
    36          IsMounted=`cat /proc/mounts |grep usbfs`
    37          if [ "${IsMounted}" != "" ] ; then
    38                  return 1
    39          else
    40                  return 0
    41          fi
    42  }
    43
    44  mount_usbfs()
    45  {
    46          detect_usbfs
    47          [ $? -eq 1 ] && return 0
    48          mount -t usbfs usbfs /proc/bus/usb
    49          return $?
    50  }
    51
    52  umount_usbfs()
    53  {
    54          detect_usbfs
    55          [ $? -eq 0 ] && return 0
    56          umount -f /proc/bus/usb
    57          return $?
    58  }
    59
    60
    61  case $1 in
    62  start)
    63          # Power on the USB interface
    64          echo on > /proc/buffalo/gpio/power_control/usb0
    65
    66          load_modules
    67          [ $? -ne 0 ] && echo "USB power-on failed" 1>&2 && unload_modules && exit 1
    68
    69          mount_usbfs
    70          ;;
    71  stop)
    72          umount_usbfs
    73          [ $? -ne 0 ] && echo "USB power-off failed" 1>&2 && exit 1
    74
    75          unload_modules
    76
    77          # Power off the USB interface
    78          echo off > /proc/buffalo/gpio/power_control/usb0
    79          ;;
    80  *)
    81          ;;
    82  esac

Har provat med både start och stop och fått samma resultat. Är siffran 23 en felkod eller en radhänvisning tro?
Albin polar 35,Laddomat, 3x750l, Danfoss ECL 100 & Sfinxs solfångare. Loggar och styr vedpanna, elpatron, solfångare, motorvärme och mycket annat med 1-wire, zwave, och webswitch via Domoticz.
jed
Tar hemautomation på allvar
Inlägg: 179
Blev medlem: 16 apr 2011, 10:51
Ort: Stockholm

Re: OWFS på Buffalo Linkstation

Inlägg av jed »

Prova att byta ut rad 1 mot:
#!/bin/bash

Med andra ord, byt ut sh mot bash. Om det är som jag tror har du uppgraderat och fått en riktigt sh istället för en länk till bash.
MartinF
Tar hemautomation på allvar
Inlägg: 141
Blev medlem: 04 jan 2010, 12:24
Ort: Sunne

Re: OWFS på Buffalo Linkstation

Inlägg av MartinF »

Tack!

Kod: Markera allt

root@MYNAS:~# lsusb
Bus 001 Device 002: ID 0781:5150 SanDisk Corp. SDCZ2 Cruzer Mini Flash Drive (thin)
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
En bra början på det nya året tycker jag! Tyvärr :lol: så firas nyåret på en skidanläggning och jag kan inte fysiskt nå burken hemma för att byta flash driven till 1-wire-stickan. Återkommer!
Albin polar 35,Laddomat, 3x750l, Danfoss ECL 100 & Sfinxs solfångare. Loggar och styr vedpanna, elpatron, solfångare, motorvärme och mycket annat med 1-wire, zwave, och webswitch via Domoticz.
MartinF
Tar hemautomation på allvar
Inlägg: 141
Blev medlem: 04 jan 2010, 12:24
Ort: Sunne

Re: OWFS på Buffalo Linkstation

Inlägg av MartinF »

Nu fungerar nu OWFS!

Var tvungen att manuellt lägga in "USB start" vid boot.
Måste sedan ominstallera OWFS efter att också ha bråkat lite med Python.

Vad som återstår är att få OWFS att autostarta vid boot.

Kod: Markera allt

#!/bin/bash

# Starts OWFS

/opt/owfs/bin/owfs -u --allow_other --usb_regulartime  /mnt/1wire

Kod: Markera allt

root@MYNAS:~# ls -la /etc/init.d/MyStartScript.sh
-rwxr-xr-x 1 root root 94 Jan  3 16:27 /etc/init.d/MyStartScript.sh
I /var/log/boot står:

Kod: Markera allt

Tue Jan  3 16:37:18 2012: /etc/init.d/MyStartScript.sh: line 5:   929 Segmentation fault      /opt/owfs/bin/owfs -u --allow_other --usb_regulartime /mnt/1wire
Albin polar 35,Laddomat, 3x750l, Danfoss ECL 100 & Sfinxs solfångare. Loggar och styr vedpanna, elpatron, solfångare, motorvärme och mycket annat med 1-wire, zwave, och webswitch via Domoticz.
Skriv svar