Bandwidthd problem
-
I spoke too soon. I looked harder at my settings and output_cdf and draw graphs were off. So I guess it was idling along in the background but not putting data anywhere. At least there are no lib errors starting the program.
Jul 4 11:41:53 bandwidthd: Cannot open htdocs/index.html for writing
I am on nanobsd and it wants to write its graph files to:
/usr/pbi/bandwidthd-i386/bandwidthd/htdocs
But that is mounted read-only.
I guess the version for 2.0, before PBIs came along, wrote the graph files somewhere in "/var" and had a mechanism for every now and then saving stuff to the CF card, or maybe the bandwidthd history was simply thrown away when the system rebooted. I have forgotten what it used to do and don't have a 2.0.1 system to try it.
It might all work fine on a non-nanobsd system, where /usr is in a rw file system.
Just for fun, I did "mount -rw /" then kicked off bandwidthd. It runs and writes stuff to htdocs.But the GUI doesn't see the graphs. I suppose the GUI is looking somewhere else for the various graph files.Actually, the graphs did appear after a while, and there is a link from /usr/local/www/bandwidthd to the htdocs dir.
So, it needs a bit of tweaking, at least for nanobsd. If someone can specify how it is intended to be, then I am happy to change and/or test some code. -
Easiest way around that is to probably mkdir -p /var/bandwidthd/htdocs during the install process and then make the directory inside the PBI dir a symlink to that.
-
For reference, I can tell you that on my 2.0.1 nanobsd box, it writes to /usr/local/bandwidthd/htdocs, so it must not be read-only. It should, however, be read-only because I have destroyed 2 CompactFlash modules now. (oops) I thought the first time it was maybe a fluke, but I am sure it was bandwidthd this time.
Maybe, would it be possible to modify the package to always write its data to /var/local/bandwidthd (or something similar)… and then in a future rev, maybe it could have something similar to RRD where it can periodically (hourly? every x hours, whatever) save the data to CF. ??
~tommy
-
For reference, I can tell you that on my 2.0.1 nanobsd box, it writes to /usr/local/bandwidthd/htdocs, so it must not be read-only.
Same problem here - Alix 2 with
2.1-BETA0 (i386) built on Sat Sep 15 16:38:19 EDT 2012 FreeBSD 8.3-RELEASE-p4Syslog shows clearly
Sep 23 17:43:10 pfsense2 bandwidthd: Monitoring subnet 10.28.0.0 with netmask 10.28.0.0
Sep 23 17:43:10 pfsense2 bandwidthd: Cannot open htdocs/index.html for writing# touch /usr/pbi/bandwidthd-i386/bandwidthd/htdocs/index.php
touch: /usr/pbi/bandwidthd-i386/bandwidthd/htdocs/index.php: Read-only file system -
For reference, I can tell you that on my 2.0.1 nanobsd box, it writes to /usr/local/bandwidthd/htdocs, so it must not be read-only.
Same problem here - Alix 2 with
2.1-BETA0 (i386) built on Sat Sep 15 16:38:19 EDT 2012 FreeBSD 8.3-RELEASE-p4Syslog shows clearly
Sep 23 17:43:10 pfsense2 bandwidthd: Monitoring subnet 10.28.0.0 with netmask 10.28.0.0
Sep 23 17:43:10 pfsense2 bandwidthd: Cannot open htdocs/index.html for writingtouch /usr/pbi/bandwidthd-i386/bandwidthd/htdocs/index.php
touch: /usr/pbi/bandwidthd-i386/bandwidthd/htdocs/index.php: Read-only file system
Just did the upgrade from 2.0.1
And bandwidth is failing to start errors below
This is another nano install on a CF card in a watchguard, keep in mind this has been working flawless for the past 11months not a single issue and it has been rebooted once in this time.Dec 6 08:22:22 bandwidthd: Cannot open htdocs/index.html for writing Dec 6 08:22:22 bandwidthd: Cannot open htdocs/index.html for writing Dec 6 08:22:22 bandwidthd: Monitoring subnet 10.0.0.0 with netmask 10.0.0.0 Dec 6 08:22:22 bandwidthd: Monitoring subnet 10.0.0.0 with netmask 10.0.0.0 Dec 6 08:22:12 bandwidthd: Cannot open htdocs/index.html for writing Dec 6 08:22:12 bandwidthd: Cannot open htdocs/index.html for writing Dec 6 08:22:12 bandwidthd: Monitoring subnet 10.0.0.0 with netmask 10.0.0.0 Dec 6 08:22:12 bandwidthd: Monitoring subnet 10.0.0.0 with netmask 10.0.0.0
-
The quoted netmasks (10.0.0.0.0 and 10.28.0.0) are "unusual". Shouldn't they be 255.0.0.0 or the like?
-
I wanted to see why bandwidthd was reported as working on 2.0.1 nanobsd, so I loaded a clean 2.0.1 on a CF card and stuck it in an Alix 2D13. Directly after installing bandwidthd 2.0.1.3 from the Package Manager the CF card is left mounted RW. So bandwidthd runs, happily scribbling on the CF card at regular intervals until the next reboot.
After a reboot, the CF card is correctly mounted readonly. bandwidthd can't scribble on the CF card. The system log regularly reports this:Dec 9 18:12:25 kernel: pid 20118 (bandwidthd), uid 0: exited on signal 11 Dec 9 18:15:43 kernel: pid 15441 (bandwidthd), uid 0: exited on signal 11 Dec 9 18:15:46 kernel: pid 31625 (bandwidthd), uid 0: exited on signal 11 Dec 9 18:19:09 kernel: pid 25051 (bandwidthd), uid 0: exited on signal 11
So 2.0.1 nanobsd systems that have bandwidthd working must have one of:
a) Never been rebooted since installing the package; or
b) An old version of the bandwidthd package that mounts the CF card RW; or
c) Another package that wrongly mounts the CF card RW at boot time; or
d) A bit of extra code hacked in by the admin to purposely mount the CF card RW.Anyway, now I know that this is not a new problem in 2.1 - I had been really struggling to see how it could have been working for 2.0.1 nanobsd users.
Now to fix it… -
I d like to see a fix as i truly miss Bandwidth D. Is there a fix that a newbie to Linux like me could deploy easily ?
-
-
Any updates on this issue? :(
-
ditto.
Any updates ? -
on install i get this in the syslog
php: /pkg_edit.php: The command '/usr/local/etc/rc.d/bandwidthd.sh stop' returned exit code '1', the output was 'No matching processes were found'/usr/local/etc/rc.d/bandwidthd.sh start
Syntax Error "syntax error" on line 32However there is no line 32 in bandwidthd.sh ???
Running 2.1-BETA1 (amd64)
built on Fri Feb 15 04:33:17 EST 2013
FreeBSD 8.3-RELEASE-p5 -
php: /pkg_edit.php: The command '/usr/local/etc/rc.d/bandwidthd.sh stop' returned exit code '1', the output was 'No matching processes were found'
That is no problem - when it tries to stop/start there will be no existing process running the first time, so that message comes out.
/usr/local/etc/rc.d/bandwidthd.sh start
Syntax Error "syntax error" on line 32I have nanoBSD systems, and the bandwidthd install now writes a custom bandwidthd.sh for the nanobsd case that puts the bandwidthd output data into /var/bandwidthd - so that the CF card can be left readonly.
I had a look at the code that creates bandwidthd.sh for the other cases and can't see an obvious error.
Please post the bandwidthd package version (latest is 2.0.1.4) and the content of bandwidthd.sh - then I can track down what is going wrong. -
Please post the bandwidthd package version (latest is 2.0.1.4) and the content of bandwidthd.sh - then I can track down what is going wrong.
Oh my bad. The last line in the subnet settings text, "The subnet(s) on which bandwidthd will report. (separate with ';' for multiple subnets, e.g. 192.168.1.0/24;10.0.0.0/24)."The ordinary subnet for the selected interface/s is automatically put in the config, do not specify it here."
Well i had, and it gave me that error, now im running bandwithd without problems ;)So if anyone get
bandwidthd: Syntax Error "syntax error" on line 32
bandwidthd: Syntax Error "syntax error" on line 33
Check subnet config -
Alternatively, bandwidthd since version 2 can log to an external postgresql database. To test, I just set up bandwidthd on a local linux server with postgesql to catch bandwidthd logs from my Alix based nanobsd install of pfsense. I was able to get the linux install of bandwidthd working using postgresql for storage after a fair amount of newbie fanagling.
Presumably using bandwidthd as a 'forwarder' sort of like pfflowd instead of hosting the php and data files locally on a compact flash installation should conceivably alleviate some of the issues?
Unfortunately, I am unable to persist changes to the bandwidthd.conf file for obvious reasons. How does one properly modify config files that are subject to the pfsense GUI?
arri
ps. Sullrich attached the readme file from bandwidthd here: http://forum.pfsense.org/index.php/topic,2117.msg23881.html#msg23881 note the section on database support for more information.
-
The bandwidthd package consists of the bandwidthd tbz/pbi of the "real" software, plus the pfSense PHP and xml in GitHub at:
https://github.com/pfsense/pfsense-packages/tree/master/config/bandwidthd
That code generates the conf file and controls the start/stop…
If you can give it an option to pass the data to another system, feel free to mod the code and submit a pull request. That would certainly be beneficial for nanoBSD CF installs. -
Phil, I am going to attempt to respond to your suggestion and would very much appreciate some guidance regarding my progress in a new thread: http://forum.pfsense.org/index.php/topic,64790.msg351425.html#msg351425
arri
-
Try change
<url>/bandwidthd" target="_blank</url>
->```
<url>/bandwidthd/index.html" target="_blank</url>After that I can watch statistics normally :)
-
@nirovulf - what browser+version+settings are you using?
I am using Firefox (23.0.1). That displays the index.html automatically, without needing it specified. We can easily put your change into the bandwidthd package, as it should not do any harm. I would just like to know what environment causes the problem. -
phil.davis
I use Firefox 19.0.2, pfsense version: 2.0.3-RELEASE (i386)
built on Fri Apr 12 10:22:21 EDT 2013
FreeBSD pfsense.router 8.1-RELEASE-p13 FreeBSD 8.1-RELEASE-p13 #0: Fri Apr 12 10:47:01 EDT 2013 root@snapshots-8_1-i386.builders.pfsense.org:/usr/obj.pfSense/usr/pfSensesrc/src/sys/pfSense_SMP.8 i386
Settings: interface - LAN, checked output_cdf, recover_cdf, draw_graphs; Meta Refresh set to 120. All other settings are default