Open-VM-Tools don't work well any more on pfsense 2.2+


  • Hi there,

    I've noticed a few problems with teh new version of pfsense 2.2 and 2.2.1 with openvmtools. I can't shutdown the guest OS anymore, which means if you trigger a reboot on a host it doesn't shutdown the pfsense VM gracefully, which can lead to corruption.

    It used to work perfectly well before on 2.1.

    Sometimes if you try many times to shutdown teh guest it may work, but most of the times you get the error in vSphere client "Call "VirtualMachine.ShutdownGuest" for object "pfSense" on vCenter Server "vCenter" failed.

    Anyone having the same issue of able to reproduce this problem?

    I'm seeing it across many different ESXi build versions, so it seems more related to teh version of openvmtools and pfsense than the host itself


  • In the VM run the following commands;

    vmware-toolbox-cmd script power disable
      vmware-toolbox-cmd script resume disable
      vmware-toolbox-cmd script suspend disable
      vmware-toolbox-cmd script shutdown disable

    This will create a file tools.conf in the directory /usr/pbi/open-vm-tools-amd64/local/share/vmware-tools and add the following lines to it:

    [powerops]
      poweron-script=
      resume-script=
      suspend-script=
      poweroff-script=

    source : http://www.v-front.de/2015/01/pfsense-22-was-released-how-to-install.html


  • Understood, just a shame I will need to do this across all instances of pfsense.

    It would be handy to have the openvmtools package updated with this problem fixed


  • I fixed that issue in the package.

  • Banned

    I get this still on the console….



  • @cmb:

    I fixed that issue in the package.

    I udated to 2.2.2 today and reinstalled the package, still the same problem across a few different instances of pfsense


  • Does anybody knows what script vmware tools invokes to shutdown.

    When i shutdown pfsense trough vmware-tools it doesnt stop the running packages. Im using Freeradius with accounting and now it doesnt send accouting stop packages when i shut it down with vmware-tools.

    I tried a custom shutdown script in tools.conf (poweroff-script=), but vmware-tools ignores my script and just shutdowns the machine without stopping the packages.

  • Banned

    @mephisto:

    @cmb:

    I fixed that issue in the package.

    I udated to 2.2.2 today and reinstalled the package, still the same problem across a few different instances of pfsense

    Because it installs outdated junk that is NOT needed and worse, breaks what's already shipped with core OS by default. Stop installing this package.


  • @doktornotor:

    @mephisto:

    @cmb:

    I fixed that issue in the package.

    I udated to 2.2.2 today and reinstalled the package, still the same problem across a few different instances of pfsense

    Because it installs outdated junk that is NOT needed and worse, breaks what's already shipped with core OS by default. Stop installing this package.

    the package available is listed as 1280544_11, but it downloads 1280544_09 when you hit the install button.

    What other options do we have?

    I checked openvmtools website and says the latest is 9.10, I'm a bit confused

  • LAYER 8 Global Moderator

    what exactly are you trying to do and what is not working?

    Yes the version of openvm tools installed is
    [2.2.2-RELEASE][root@pfSense.local.lan]/root: vmware-toolbox-cmd -v
    9.4.0.25793 (build-1280544)

    Sure looks looks like 128044 is the build to me, which is what pfsense package is labeled.

    I don't see _11 on https://files.pfsense.org/packages/10/All/ so that seems to be a mistake??

    But not sure what issue your having with the tools?

    [2.2.2-RELEASE][root@pfSense.local.lan]/root: kldstat
    Id Refs Address            Size    Name
    1  10 0xffffffff80200000 22d0f80  kernel
    2    1 0xffffffff824d1000 8160    vmblock.ko
    3    1 0xffffffff824da000 13680    vmhgfs.ko
    4    1 0xffffffff824ee000 5630    vmxnet.ko
    5    1 0xffffffff82611000 22f7    vmmemctl.ko

    You can turn of the scripts in the vclient..


  • Guess ill have a try with the original vmware tools.

  • LAYER 8 Global Moderator

    native tools break the vmx3.. you have to disable checksumming on the nic, etc.

    What is it you feel is not working in the open?  It is working just fine for me - as you can see all the stuff is running..  What is that you feel is not shutting down?

  • Banned

    Uninstalled the package and the errors went away.


  • @johnpoz:

    What is it you feel is not working in the open?  It is working just fine for me - as you can see all the stuff is running..  What is that you feel is not shutting down?

    The problem is with the shutdown procedure of the VM. When my pfsense i given a shutdown from ESXi it first need to stop (not kill) my packages and after that shutdown the OS. Im useing Captive Portal / FreeRADIUS with accounting and now when i shutdown a VM from ESXi no accounting stop packet is send out by Captive Portal.

    So i tried to set /etc/rc.initial.halt in tools.conf as a poweroff script since that properly stops all packages but this doesnt seems to have any effect.

    Maby some of u guys know another way to fix my problem.

  • LAYER 8 Global Moderator

    so when you shutdown pfsense via gui for example or command line does your stuff get shutdown correctly?

    you can run whatever scripts you want when vmware tools shutdown btw..

    the package seems to be currently broken, its not installing _11 and mine just hangs on a clean just installed 2.2.2


  • Yup when u shutdown from the GUI it stops the packages first. I think it runs /etc/rc.stop_packages and then shuts down.

    So where can i configure a custom script at shutdown? A custom poweroff= entry in tools.conf seems to be ignored.

  • LAYER 8 Global Moderator

    that is not where you put it..

    [2.2.2-RELEASE][root@pfSense.local.lan]/usr/local/bin: vmware-toolbox-cmd help script
    script: control the scripts run in response to power operations
    Usage: /usr/local/bin/vmware-toolbox-cmd script <power|resume|suspend|shutdown><subcommand>[args]

    Subcommands:
      enable: enable the given script and restore its path to the default
      disable: disable the given script
      set <full_path>: set the given script to the given path
      default: print the default path of the given script
      current: print the current path of the given script</full_path></subcommand></power|resume|suspend|shutdown>


  • @johnpoz:

    that is not where you put it..

    [2.2.2-RELEASE][root@pfSense.local.lan]/usr/local/bin: vmware-toolbox-cmd help script
    script: control the scripts run in response to power operations
    Usage: /usr/local/bin/vmware-toolbox-cmd script <power|resume|suspend|shutdown><subcommand>[args]

    Subcommands:
      enable: enable the given script and restore its path to the default
      disable: disable the given script
      set <full_path>: set the given script to the given path
      default: print the default path of the given script
      current: print the current path of the given script</full_path></subcommand></power|resume|suspend|shutdown>

    Running these commands result in a entry in tools.conf, so  its the same thing.

  • LAYER 8 Global Moderator

    no really no..  Because just editing the file doesn't show up until after its tools have been restarted and it reads tools.conf  If you do this then it makes it active.  And what is the path to your script show if you do current?

    since the default doesn't work

    [2.2.2-RELEASE][root@pfSense.local.lan]/: vmware-toolbox-cmd script power current
    /usr/local/share/vmware-tools/poweron-vm-default

    This not where the script is - the script is here

    [2.2.2-RELEASE][root@pfSense.local.lan]/usr/pbi/open-vm-tools-amd64/local/share/vmware-tools: ls -la
    total 60
    drwxr-xr-x  3 root  wheel  512 Apr 19 07:26 .
    drwxr-xr-x  14 root  wheel  512 Nov 27 16:37 ..
    -r-xr-xr-x  1 root  wheel  4359 Nov 27 16:37 poweroff-vm-default
    -r-xr-xr-x  1 root  wheel  4359 Nov 27 16:37 poweron-vm-default
    -r-xr-xr-x  1 root  wheel  4359 Nov 27 16:37 resume-vm-default
    drwxr-xr-x  3 root  wheel  512 Nov 27 16:37 scripts
    -r-xr-xr-x  1 root  wheel  1473 Nov 27 16:37 statechange.subr
    -r-xr-xr-x  1 root  wheel  4359 Nov 27 16:37 suspend-vm-default
    -rw-r–r--  1 root  wheel    45 Apr 19 07:26 tools.conf
    -r-xr-xr-x  1 root  wheel  7594 Nov 27 16:37 vm-support

    [2.2.2-RELEASE][root@pfSense.local.lan]/usr/pbi/open-vm-tools-amd64/local/share/vmware-tools: vmware-toolbox-cmd script power current
    /usr/pbi/open-vm-tools-amd64/local/share/vmware-tools/poweron-vm-default
    [2.2.2-RELEASE][root@pfSense.local.lan]/usr/pbi/open-vm-tools-amd64/local/share/vmware-tools:

    how did you edit your tools.conf and did you reboot to let the tools load the config?
    [2.2.2-RELEASE][root@pfSense.local.lan]/usr/pbi/open-vm-tools-amd64/local/share/vmware-tools: cat tools.conf
    [powerops]
    poweron-script=/usr/pbi/open-vm-tools-amd64/local/share/vmware-tools/poweron-vm-default

    Also what does your esxi show for which scripts will be run?


  • Banned

    This is what I get.

    Not possible to do that via the ESXi GUI apparently….






  • LAYER 8 Global Moderator

    well you clearly do not have tools running.

    From pfsense run kldstat

    [2.2.2-RELEASE][root@pfSense.local.lan]/root: kldstat
    Id Refs Address            Size    Name
    1  10 0xffffffff80200000 22d0f80  kernel
    2    1 0xffffffff824d1000 8160    vmblock.ko
    3    1 0xffffffff824da000 13680    vmhgfs.ko
    4    1 0xffffffff824ee000 5630    vmxnet.ko
    5    1 0xffffffff82611000 22f7    vmmemctl.ko

    What does esxi say about the tools?  Oh that it is not installed - here is what it should look like if you have the tools installed openvm package.


  • Banned

    I uninstalled them and wanted the VmWare one since it gets errors on some .ko files.

    Installed the package again and getting this…




  • LAYER 8 Global Moderator

    your clearly not installing the correct tools.. your just installing the package from package installs right or are you trying to install with pkg install?  Or a file?

    That error is something wrong - what version of pfsense are you running, and what version of esxi?

    Im going to do a clean install of 2.2.2 and install the openvm package because you should not be having these problems.

    edit:  Well I can see why you might be having problems
    On a clean install of 2.2.2 64bit and trying to install the openvm tools package it just seems to hang on

    Executing custom_php_install_command()…

    And yup its still actually downloading _9 vs the package saying its _11, let me give it a bit more time and see if it every finishes, etc.

  • Banned

    pfSense  2.2.2 and ESXi 4.1U3 at test site.

    I click install on the Open VM package available in the packages menu.

  • LAYER 8 Global Moderator

    I don't think freebsd 10.1 is supported on esxi 4..  Pretty sure 10.1 was not available until 5.5u2 – did they back port to 4??

    http://blogs.vmware.com/guestosguide/guest-os/unix-and-others/freebsd

  • Banned

    Its just installed as FreeBSD 64bit. No specific choice of OS.

    Works fine and runs no issues. I just get the error in the Open Vmtools package.

  • LAYER 8 Global Moderator

    dude 10.1 is not supported on that version of esxi, it works your lucky..  Run a older version of pfsense if your not going to be current with your esxi version

    also see this error other than _9 being downloaded vs _11
    php-fpm[77198]: /pkg_mgr_install.php: Could not open /usr/local/share/vmware-tools/tools.conf for writing

    If you create the dir and file the pkg installs, shows 3rd party and running in esxi, but the ko's are not loaded when you check kldstat

    Clearly the package is broken and will have to wait until its fixed.  But again freebsd 10.1 and pfsense 2.2 is not supported on that version of esxi

  • Banned

    2.1.5 vs 2.2.2.

    Opne Vmtools installed on both  systems. Same version of ESXi. Serving the pfsense clusters.

    I have attached screendumps.

    Error began with upgrade to 2.2.2…. 2.1.5 running no issues at all. Open Vm tools shows unmanaged in 2.1.5 and ESXi 4.1U3.










  • Banned

    @Supermule:

    Error began with upgrade to 2.2.2…. 2.1.5 running no issues at all. Open Vm tools shows unmanaged in 2.1.5 and ESXi 4.1U3.

    Yeah. When you take modules compiled for FreeBSD 8.3 kernel and shove them on FreeBSD 10.1 box, things don't work. Hardly surprising. The errors are damn explicit, cannot believe that totally broken packages are shipped. (Now, at least the breakage resulting from install seems to be mitigated by the fact that it's so badly broken that it actually fails to install altogether, which is a good thing, considering the state of things…  ::))

  • Banned

    Yes.

    But its seems they have corrected the vmxnet.ko file error.

  • Banned

    @Supermule:

    But its seems they have corrected the vmxnet.ko file error.

    Yeah. By removing the module altogether.


  • Guess ill wait this the package is fixed.

  • Banned

    Apparently the driver is present in 10.1 so its not needed in the tools??

    @doktornotor:

    @Supermule:

    But its seems they have corrected the vmxnet.ko file error.

    Yeah. By removing the module altogether.

  • LAYER 8 Global Moderator

    freebsd 10.1 has native vmx3 support so you don't need the tools at all really other than to be able to clearly shutdown pfsense from esxi, integration with the console, etc.

    I reported that is fully broken in the package thread.. Not sure on who the specific package owner/contributors are - but sure they will fix it up soon enough.

    You can run pfsense 2.2.2 just fine on above 5.5u2 of esxi without any issues, and since vmx3 is part of freebsd now you don't really need to install the tools.


  • Every open issue that existed for open-vm-tools is fixed now.

  • Banned

    TOTALLY AWESOME!!

    Thanks Chris. Really appreciated!


  • Gonna have a go on ESXI 5.5U2 and 6 ASAP.


  • Still cant run a custom shutdown script.

    Running this custom script.

    #!/usr/local/bin/php -f
            /* parse the configuration and include all functions used below */
            require_once("config.inc");
            require_once("functions.inc");
                    system_halt();
    ?>

    Dunno if vmware-tools can even run this script.

    Any ideas?


  • Is there a need for a shutdown script? It shuts down the VM without one.

    Did you chmod +x that php file?


  • Yes i need to run a custom script. I'm running CP+FreeRADIUS with SQL accounting, when i shutdown the VM no acctstoptime it send to the SQL database. And since im use Simultaneouse-Use attribute this is a problem. This problem does not occur when u shutdown/reboot pfsense from the GUI.

    Yeah the file is executable. Running it from the commandline works fine.

    Maby i should write a script to query the database for empty acctstoptime and run it with shellcmd @ boot.