Netgate Discussion Forum
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Search
    • Register
    • Login

    Bandwidthd problem

    Scheduled Pinned Locked Moved pfSense Packages
    48 Posts 28 Posters 49.5k Views
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • P
      phil.davis
      last edited by

      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.

      As the Greek philosopher Isosceles used to say, "There are 3 sides to every triangle."
      If I helped you, then help someone else - buy someone a gift from the INF catalog http://secure.inf.org/gifts/usd/

      1 Reply Last reply Reply Quote 0
      • jimpJ
        jimp Rebel Alliance Developer Netgate
        last edited by

        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.

        Remember: Upvote with the 👍 button for any user/post you find to be helpful, informative, or deserving of recognition!

        Need help fast? Netgate Global Support!

        Do not Chat/PM for help!

        1 Reply Last reply Reply Quote 0
        • T
          TommyTheKid
          last edited by

          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

          1 Reply Last reply Reply Quote 0
          • C
            Criggie
            last edited by

            @TommyTheKid:

            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-p4

            Syslog 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

            1 Reply Last reply Reply Quote 0
            • G
              generious
              last edited by

              @Criggie:

              @TommyTheKid:

              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-p4

              Syslog 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

              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
              
              1 Reply Last reply Reply Quote 0
              • W
                wallabybob
                last edited by

                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?

                1 Reply Last reply Reply Quote 0
                • P
                  phil.davis
                  last edited by

                  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…

                  As the Greek philosopher Isosceles used to say, "There are 3 sides to every triangle."
                  If I helped you, then help someone else - buy someone a gift from the INF catalog http://secure.inf.org/gifts/usd/

                  1 Reply Last reply Reply Quote 0
                  • W
                    wadmutter
                    last edited by

                    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 ?

                    1 Reply Last reply Reply Quote 0
                    • K
                      kalu
                      last edited by

                      Nope there's not a fix yet.
                      I'm on
                      –----
                      pfsense:
                      2.1-BETA1 (i386)
                      built on Thu Dec 27 15:19:47 EST 2012
                      FreeBSD 8.3-RELEASE-p5


                      Bandwidthd
                      BETA
                      2.0.1.3
                      platform: 1.2.1

                      still throws error:::: Please start bandwidthd to populate this directory.
                      :(

                      i love pfsense because i love open source.

                      1 Reply Last reply Reply Quote 0
                      • S
                        serialdie
                        last edited by

                        Any updates on this issue? :(

                        1 Reply Last reply Reply Quote 0
                        • K
                          kalu
                          last edited by

                          ditto.
                          Any updates ?

                          i love pfsense because i love open source.

                          1 Reply Last reply Reply Quote 0
                          • K
                            Krakke
                            last edited by

                            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 32

                            However 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

                            1 Reply Last reply Reply Quote 0
                            • P
                              phil.davis
                              last edited by

                              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 32

                              I 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.

                              As the Greek philosopher Isosceles used to say, "There are 3 sides to every triangle."
                              If I helped you, then help someone else - buy someone a gift from the INF catalog http://secure.inf.org/gifts/usd/

                              1 Reply Last reply Reply Quote 0
                              • K
                                Krakke
                                last edited by

                                @phil.davis:

                                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

                                1 Reply Last reply Reply Quote 0
                                • A
                                  arriflex
                                  last edited by

                                  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.

                                  1 Reply Last reply Reply Quote 0
                                  • P
                                    phil.davis
                                    last edited by

                                    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.

                                    As the Greek philosopher Isosceles used to say, "There are 3 sides to every triangle."
                                    If I helped you, then help someone else - buy someone a gift from the INF catalog http://secure.inf.org/gifts/usd/

                                    1 Reply Last reply Reply Quote 0
                                    • A
                                      arriflex
                                      last edited by

                                      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

                                      1 Reply Last reply Reply Quote 0
                                      • N
                                        nirovulf
                                        last edited by

                                        Try change<url>/bandwidthd" target="_blank</url>->```
                                        <url>/bandwidthd/index.html" target="_blank</url>

                                        After that I can watch statistics normally :)
                                        1 Reply Last reply Reply Quote 0
                                        • P
                                          phil.davis
                                          last edited by

                                          @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.

                                          As the Greek philosopher Isosceles used to say, "There are 3 sides to every triangle."
                                          If I helped you, then help someone else - buy someone a gift from the INF catalog http://secure.inf.org/gifts/usd/

                                          1 Reply Last reply Reply Quote 0
                                          • N
                                            nirovulf
                                            last edited by

                                            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

                                            1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post
                                            Copyright 2025 Rubicon Communications LLC (Netgate). All rights reserved.