Hej! Jag har lyckats få Thermiq (och OWFS) att fungera under Debian Squeeze på min D-link DNS-320. Är det någon fler som är intresserad, så gör så här:
1) Följ HowTo:n på http://wiki.temperatur.nu/index.php/OWFS_p%C3%A5_DNS-320/325, inkl. HowTo:n för att installera OWFS.
2) Skapa en användare thermiq på din DNS-320 (här kallad eddie):
ssh eddie -l root
DNS-320# adduser thermiq
DNS-320# adduser thermiq sudo
3) Skapa en fil thermiq_init.debian på din NAS med nedanstående innehåll.
4) Gör filen körbar och kör den.
DNS-320# chmod +x /mnt/HD/HD_a2/thermiq_init.debian
DNS-320# /mnt/HD/HD_a2/thermiq_init.debian
5) Boota om din DNS-320.
Du kommer att få en loggfil /mnt/HD/HD_a2/ffpdeb.log som kan innehålla två felmeddelanden:
– från apache2, vilket är väntat eftersom port 80 är upptagen av D-links egen webserver.
– från exim4, som protesterar mot (i sin paniclog) att IPv6 inte finns.
Bägge felen går att ignorera.
Jag har mailat Anders samma info, kanske (säkert) hittar han några förbättringar. 🙂
— thermiq_init.debian BEGIN —
#!/bin/sh
# Install packages.
apt-get -y install lighttpd sqlite3 php5-cli php5-cgi php5-sqlite usbutils php-pear
# Expect a configuration error since port 80 is already in use by the
# NAS web server.
# Fix port issue.
sh -c ’echo ”server.port = 8081″ >> /etc/lighttpd/lighttpd.conf’
# To enable PHP5 in Lighttpd, we must modify /etc/php5/cgi/php.ini and
# uncomment the line cgi.fix_pathinfo=1:
sed -i ’s/^.*;cgi.fix_pathinfo=1/cgi.fix_pathinfo=1/’ /etc/php5/cgi/php.ini
sed -i ’s:^.*;date.timezone.*:date.timezone = Europe/Stockholm:’ /etc/php5/cgi/php.ini
sed -i ’s:^.*;date.default_latitude.*:date.default_latitude = 63.8142:’ /etc/php5/cgi/php.ini
sed -i ’s:^.*;date.default_longitude.*:date.default_longitude = 20.4174:’ /etc/php5/cgi/php.ini
lighttpd-enable-mod fastcgi fastcgi-php
#ls -l /etc/lighttpd/conf-enabled
#/etc/init.d/lighttpd force-reload
#Create test file.
#perl -e ’open(FILE,”>/var/www/info.php”); print FILE ”\n”’
apt-get install -y lighttpd
#Open in web browser: http://your.server.com:8081/info.php
# Download thermiq stuff.
mkdir /opt/thermiq
cd /opt/thermiq
wget -T 900 -t 30 http://www.thermiq.net/ThermIQ_Client/thermiq_svn.tar.gz
mkdir cur
cd cur
tar -xzf ../thermiq_svn.tar.gz
chown -R thermiq:thermiq /opt/thermiq
# To avoid having to change references to /ffp and /ffp/thermiq.
ln -s /mnt/HD/HD_a2/ffp /ffp
ln -s /opt/thermiq/cur /ffp/thermiq
# Make links to database scripts in main html dir.
# Would have been prettier to modify a bunch of paths, but…
cd /ffp/thermiq/common/webcontent/html
ln -s ../../usr/sbin/* .
# Stuff from thermiq’s installation script.
cd /ffp
mkdir -p www/logs www/pages
#chmod a+x /ffp/start/lighttpd.sh
chown root:www-data /ffp/www/logs/
chmod 774 /ffp/www/logs/
# Make lighttpd-thermiq run under its own name.
ln -s /usr/sbin/lighttpd /usr/sbin/lighttpd-thermiq
# Start script.
cat > /etc/init.d/startlighttpd-thermiq.sh /tmp/debug_usbagent\n\n# ThermIQ handling\nif [ \”\\\$PRODUCT\” = \”4d8/fdeb/1\” ]; then\n\tif [ \”\\\$ACTION\” = \”add\” ]; then\n\t\t/bin/touch /tmp/thermiq_usb_is_present\n\tfi\n\n\tif [ \”\\\$ACTION\” = \”remove\” ]; then\n\t\t/bin/rm -f /tmp/thermiq_usb_is_present\n\tfi\n\texit 0\nfi\n\n”’ /mnt/root/etc/hotplug/usb.agent
echo ”done.”
EOF
# Make executable and sort into startup sequence.
chmod +x /etc/init.d/init-thermiq-usb.sh
update-rc.d init-thermiq-usb.sh defaults
# Add crontab with poller
crontab -l | grep -v /usr/sbin/poller > /tmp/crontab.tmp
echo ”* * * * * /bin/sh -c ’if [ -e /mnt/root/tmp/thermiq_usb_is_present ]; then /opt/thermiq/cur/common/usr/sbin/poller > /dev/null; fi'” >> /tmp/crontab.tmp
crontab /tmp/crontab.tmp
rm -f /tmp/crontab.tmp
echo ”Init script complete, now you should reboot the NAS.”
— thermiq_init.debian END —