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

      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
              • P
                phil.davis
                last edited by

                I am a bit surprised that your Firefox does not go looking for index.html by default. But anyway, it is safer for all old/new/whatever browsers if we explicitly specify index.html like you suggest.
                Pull request: https://github.com/pfsense/pfsense-packages/pull/483
                30 minutes after that is committed you should be able to reinstall bandwidthd XML and it will work.

                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
                • C
                  cboy2
                  last edited by

                  How about editing /usr/local/etc/rc.d/bandwidthd.sh to point at /usr/pbi/bandwidthd-amd64/bandwidthd/bandwidthd instead of /usr/local/bandwidthd/bandwidthd?

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

                    @cboy2:

                    How about editing /usr/local/etc/rc.d/bandwidthd.sh to point at /usr/pbi/bandwidthd-amd64/bandwidthd/bandwidthd instead of /usr/local/bandwidthd/bandwidthd?

                    This code in bandwidthd.inc "should" select/use the new PBI-based directory names based on the pfSense version (>2.0 means it has PBI) and 32 or 64-bit install.

                    // Check pfSense version
                    $pfs_version = substr(trim(file_get_contents("/etc/version")),0,3);
                    switch ($pfs_version) {
                      case "1.2":
                      case "2.0":
                        define('PKG_BANDWIDTHD_BASE', '/usr/local/bandwidthd');
                        break;
                      default:
                        define('PKG_BANDWIDTHD_BASE', '/usr/pbi/bandwidthd-' . php_uname("m") . '/bandwidthd');
                     }
                    // End: Check pfSense version
                    

                    I don't have a 64-bit install to try. What happens now on pfSense 2.1-RELEASE 64-bit?
                    Post the bandwidthd.sh that it makes, then hopefully I can see what happens.

                    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
                    • C
                      cboy2
                      last edited by

                      `#!/bin/sh

                      This file was automatically generated

                      by the pfSense service handler.

                      rc_start() {
                      /usr/local/bandwidthd/bandwidthd
                      }

                      rc_stop() {
                      /usr/bin/killall bandwidthd
                      }

                      case $1 in
                      start)
                      rc_start
                      ;;
                      stop)
                      rc_stop
                      ;;
                      restart)
                      rc_stop
                      rc_start
                      ;;
                      esac`   I've had this issue on two different 64 bit systems and one 32 (all I have tried) all running 2.1 or a RC thereof.

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

                        Now I really looked at the code! It has never worked for a 2.1 PBI-based full install.
                        Edit /usr/local/pkg/bandwidthd.inc to change line 324 from:

                        /usr/local/bandwidthd/bandwidthd
                        

                        to

                        {$bandwidthd_base_dir}/bandwidthd
                        

                        like in this GitHub change: https://github.com/phil-davis/pfsense-packages/commit/c918257082611cc9d9e9f9987a0a317d629885d7

                        That should make it understand full installs for 2.0.n and 2.1 in both i386 and amd64.

                        Then save your bandwidthd settings again and check that bandwidth.sh has better code, and that bandwidthd actually works.
                        If all is well, I will submit the pull request.

                        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
                        • F
                          freehood4all
                          last edited by

                          @kalu:

                          Hello every one

                          I have the latest pfsense build installed:
                          –--------------------
                          2.1-DEVELOPMENT (i386)
                          built on Wed May 2 08:30:27 EDT 2012
                          FreeBSD 8.3-RELEASE

                          installed the latest bandwidthd
                          –-----------------------
                          "bandwidthd 2.0.1.3"

                          and it always shows me Please start bandwidthd to populate this directory.
                          I searched in this forum and was not able to find a proper solution
                          Thanks
                          kalu

                          To anyone running into "Please start bandwidthd to populate this directory."

                          First check to see if it's running:

                          ps auxwww | grep -i bandwidthd
                          

                          If it's running check the directory:

                          ls -al /usr/local/www/bandwidthd
                          lrwxr-xr-x  1 root  wheel    43 Sep 16 12:41 /usr/local/www/bandwidthd -> /usr/pbi/bandwidthd-amd64/bandwidthd/htdocs
                          

                          I can see that the actual files aren't being written there.

                          Check this directory:

                          ls -al /usr/local/bandwidthd/htdocs/
                          

                          If you see files in there, all you need to do is make the correct link

                          rm /usr/local/www/bandwidthd
                          
                          ln -s /usr/local/bandwidthd/htdocs/ /usr/local/www/bandwidthd
                          

                          Note: I ended up installing bandwidthd from pkg_add because I ran into issues originally, so my way is definitely non-standard.  And this probably only affects people who updated through the 2.1 beta, RC development cycle.  I'm sure stable has this working out of the box.

                          1 Reply Last reply Reply Quote 0
                          • P
                            pkrnjevic
                            last edited by

                            Just a comment freehood4all's note:

                            "Note: I ended up installing bandwidthd from pkg_add because I ran into issues originally, so my way is definitely non-standard.  And this probably only affects people who updated through the 2.1 beta, RC development cycle.  I'm sure stable has this working out of the box."
                            If I read your note right, you suggest that stable versions shouldn't have this problem.
                            I updated from a recently installed 2.0.3Release to 2.1Release, and definitely do have this problem.

                            Phil.davis describes a fix (previous comment in this thread) that mostly works, except for missing icons.

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

                              Hi, I noticed that this only happens when I use firfox, not chrome or IE.

                              Thanks

                              1 Reply Last reply Reply Quote 0
                              • X
                                xerxes
                                last edited by

                                @freehood4all:

                                To anyone running into "Please start bandwidthd to populate this directory."

                                First check to see if it's running:

                                ps auxwww | grep -i bandwidthd
                                

                                If it's running check the directory:

                                ls -al /usr/local/www/bandwidthd
                                lrwxr-xr-x  1 root  wheel    43 Sep 16 12:41 /usr/local/www/bandwidthd -> /usr/pbi/bandwidthd-amd64/bandwidthd/htdocs
                                

                                Check this directory:

                                ls -al /usr/local/bandwidthd/htdocs/
                                

                                If you see files in there, all you need to do is make the correct link

                                rm /usr/local/www/bandwidthd
                                
                                ln -s /usr/local/bandwidthd/htdocs/ /usr/local/www/bandwidthd
                                

                                This one works for me.. Thanks.

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

                                  This last method did not work for me.
                                  I also upgraded.. from 2.0.3 to 2.1 and had bandwidthd previously installed.

                                  So for me this was the fix:

                                  #First remove the package via GUI.

                                  killall bandwidthd #Just incase it still runs.

                                  find / -name "bandwidthd" #You get a list of files and directories related to Bandw.D.

                                  #Now delete all of them..
                                  rm -rf /directory/you/find

                                  #I also removed these.., which seem to be packages..
                                  /root/var/db/pbi/installed/bandwidthd-2.0.1_5-i386
                                  /root/var/db/pbi/.hashqueue/bandwidthd-2.0.1_5-i386

                                  Now install it again via GUI and it worked for me.

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

                                    @phil.davis:

                                    Now I really looked at the code! It has never worked for a 2.1 PBI-based full install.
                                    Edit /usr/local/pkg/bandwidthd.inc to change line 324 from:

                                    /usr/local/bandwidthd/bandwidthd
                                    

                                    to

                                    {$bandwidthd_base_dir}/bandwidthd
                                    

                                    like in this GitHub change: https://github.com/phil-davis/pfsense-packages/commit/c918257082611cc9d9e9f9987a0a317d629885d7

                                    That should make it understand full installs for 2.0.n and 2.1 in both i386 and amd64.

                                    Then save your bandwidthd settings again and check that bandwidth.sh has better code, and that bandwidthd actually works.
                                    If all is well, I will submit the pull request.

                                    #!/bin/sh
                                    # This file was automatically generated
                                    # by the pfSense service handler.
                                    
                                    rc_start() {
                                    	// /usr/local/bandwidthd/bandwidthd
                                    /usr/pbi/bandwidthd-amd64/bandwidthd/bandwidthd
                                    }
                                    
                                    rc_stop() {
                                    	/usr/bin/killall bandwidthd
                                    }
                                    
                                    case $1 in
                                    	start)
                                    		rc_start
                                    		;;
                                    	stop)
                                    		rc_stop
                                    		;;
                                    	restart)
                                    		rc_stop
                                    		rc_start
                                    		;;
                                    esac
                                    
                                    

                                    Should the commented out line use # instead of //? ( // /usr/local/bandwidthd/bandwidthd)

                                    edit: I believe the // issue was my doing as I commented that line out without verifying it wasn't a standalone line.

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

                                      I can confirm that uninstalling the package leaves the old directory intact (/usr/local/bandwidthd) and that removing this directory prior to reinstalling makes the new install function as expected.

                                      The difference appears to be that /usr/local/bandwidthd/bandwidthd is now a symlink to /usr/pbi/bandwidthd-amd64/bandwidthd/bandwidthd, the bandwidthd.inc line 324 is the same.

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

                                        To resolve this problem (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') on start the bandwidth on new version of pfsense 2.1 and new version off bandwidth 2.0.1 i do just removed the directory "/usr/local/bandwidthd" and reinstalled a bandwidth. Its work fine to me.

                                        Ps.: My english is not good. :( hehe

                                        1 Reply Last reply Reply Quote 0
                                        • R
                                          rsleegers
                                          last edited by

                                          @kalu:

                                          installed the latest bandwidthd
                                          and it always shows me Please start bandwidthd to populate this directory.

                                          I ran through the troubleshooting and confirmed BandwidthD was running, but when clicking on Services, BandwidthD, the Access BandwidthD, a new page/tab opens to https://192.168.0.1/bandwidthd/index.html with the same error (using Firefox).

                                          If I change the URL to https://192.168.0.1/bandwidthd/ then the summary page appears as expected. It would appear the link is not set correctly, or the index page should be deleted when proper data is found. I'm using the output_cdf method.

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

                                            I just checked installing fresh on a new system. The initial "Please start bandwidthd to populate this directory." page is found at index.html, and after a while index.html is updated with the daily data.
                                            I now have the following in /usr/local/www/bandwidthd

                                            -rw-r--r--  1 root  wheel  2230 Dec 13 13:33 10.49.143.1-1-R.png
                                            -rw-r--r--  1 root  wheel  2207 Dec 13 13:33 10.49.143.1-1-S.png
                                            -rw-r--r--  1 root  wheel  2636 Dec 13 13:33 Subnet-1-10.49.143.0.html
                                            -rw-r--r--  1 root  wheel  2242 Dec 13 13:26 Subnet-2-10.49.143.0.html
                                            -rw-r--r--  1 root  wheel  2245 Dec 13 13:16 Subnet-3-10.49.143.0.html
                                            -rw-r--r--  1 root  wheel  2242 Dec 13 13:33 Total-1-R.png
                                            -rw-r--r--  1 root  wheel  2244 Dec 13 13:33 Total-1-S.png
                                            -rw-r--r--  1 root  wheel  2587 Dec 13 13:26 Total-2-R.png
                                            -rw-r--r--  1 root  wheel  2646 Dec 13 13:26 Total-2-S.png
                                            -rw-r--r--  1 root  wheel  1844 Dec 13 13:16 Total-3-R.png
                                            -rw-r--r--  1 root  wheel  1853 Dec 13 13:16 Total-3-S.png
                                            -rw-r--r--  1 root  wheel  3323 Dec 13 13:33 index.html
                                            -rw-r--r--  1 root  wheel  2939 Dec 13 13:26 index2.html
                                            -rw-r--r--  1 root  wheel  2948 Dec 13 13:16 index3.html
                                            -rw-r--r--  1 root  wheel   653 Dec 13 12:16 index4.html
                                            -rw-r--r--  1 root  wheel  1649 Dec 13 11:51 legend.gif
                                            -rw-r--r--  1 root  wheel  7573 Dec 13 11:51 logo.gif
                                            

                                            @rsleegers - If you can reproduce this, what does your system have in /usr/local/www/bandwidthd ?

                                            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
                                            • First post
                                              Last post
                                            Copyright 2025 Rubicon Communications LLC (Netgate). All rights reserved.