open-vm-tools icon indicating copy to clipboard operation
open-vm-tools copied to clipboard

systemctl status vmtoolsd.service does not return prompt handle after executing

Open CodeSpaniard opened this issue 1 year ago • 7 comments

Describe the bug

systemctl status vmtoolsd.service does not return prompt handle after executing

Reproduction steps

  1. Launch systemctl status vmtoolsd.service on Ubuntu 64-bit Arm 22.04.3 after installing open-vm-tools
  2. The output ends with lines 1-10/10n (END) but does not return the prompt to the user.

Expected behavior

The prompt should be returned to the user.

Additional context

I am trying to install and use open-vm-tools, specifically to allow for copying between my host mac M1 and the Ubuntu VMware guest.

CodeSpaniard avatar Jan 04 '24 11:01 CodeSpaniard

We'll need more info:

Host mac M1:

  • Mac OS X version
  • VMware Fusion version
  • If not using Mac OS X, what's the host OS with all the version details you can get and what version of VMware Workstation being used.

VM information (Ubuntu 22.04.3):

  • 'uname -a' output
  • open-vm-tools packages installed (and versions)
  • Any related errors in syslog?
  • number of vcpu, ram size,
  • might also need to look into the /usr/lib/systemd/system/open-vm-tools.service content.
  • VMTools/OVT logs might have info if it had issues. look at /var/log/vmware-vmtoolsd-.log and /var/log/vmware-vmsvc-.log files for errors.

Thanks

PaTHml avatar Jan 04 '24 15:01 PaTHml

Right and the output for the command. As described it doesn't make sense.

PaTHml avatar Jan 04 '24 15:01 PaTHml

@CodeSpaniard What you are seeing with the "systemctl status" is "normal" behavior. The command is waiting for the user to enter q just as needed at the end of less output.

Confirm that you have both open-vm-tools and open-vm-tools-desktop packages installed. apt list --installed | grep open-vm-rools

After installing open-vm-tools-desktop, you will nee to either log out of the desktop and log back on - or - reboot the Ubuntu VM.

Check that you have 2 vmtoolsd processes running - one for the system service and one for the desktop user.

ps -aef | grep vmtoolsd

For best results with copy/paste, select "Ubuntu on Xorg" from the setting icon when entering you password when logging into the desktop.

johnwvmw avatar Jan 04 '24 16:01 johnwvmw

Not sure why, but it looks like in your environment systemctl is using a pager. Try one ot these:

systemctl --no-pager status vmtoolsd.service systemctl status vmtoolsd.service | cat

I would also check environment variable like SYSTEMD_PAGER and PAGER. If SYSTEMD_PAGER is not defined you might have success defining it to empty string to disable the behavior.

Just TOH ideas, YMMV.

PaTHml avatar Jan 04 '24 16:01 PaTHml

To be complete:

  • https://man7.org/linux/man-pages/man1/systemctl.1.html ENVIRONMENT : [...] $SYSTEMD_PAGER Pager to use when --no-pager is not given; overrides $PAGER. If neither $SYSTEMD_PAGER nor $PAGER are set, a set of well-known pager implementations are tried in turn, including less(1) and more(1), until one is found. If no pager implementation is discovered no pager is invoked. Setting this environment variable to an empty string or the value "cat" is equivalent to passing --no-pager.

         Note: if $SYSTEMD_PAGERSECURE is not set, $SYSTEMD_PAGER (as
         well as $PAGER) will be silently ignored.
    

[...]

   $SYSTEMD_LESS
       Override the options passed to less (by default "FRSXMK").
       ...

etc.

I haven't found a reference on how to change the behavior through a (systemd) configuration file.

PaTHml avatar Jan 04 '24 18:01 PaTHml

@PaTHml and @johnwvmw : Thank you for the elaborate feedback. Finally, I can copy between host and guest. I honestly don't know what was the issue and what has finally changed. I have made several attempts at installing vmware tools/open-vm-tools and am not sure how successful I was. Besides, Reinstall VMware Tools is grayed out as before.

Responses to your questions and suggestions:

Host mac M1:

Mac OS X version: Not using Mac OS X VMware Fusion version: Player Version 13.5.0 (22583790) If not using Mac OS X, what's the host OS with all the version details you can get and what version of VMware Workstation being used. : Host: macOS ventura Version 13.5.1 (22G90)

VM information (Ubuntu 22.04.3): Ubuntu 64-bit Arm 22.04.3

'uname -a' output: Linux ariel-virtual-machine 6.5.0-14-generic #14~22.04.1-Ubuntu SMP PREEMPT_DYNAMIC Mon Nov 20 20:26:31 UTC 2 aarch64 aarch64 aarch64 GNU/Linux

open-vm-tools packages installed (and versions) Any related errors in syslog? number of vcpu, ram size, might also need to look into the /usr/lib/systemd/system/open-vm-tools.service content. VMTools/OVT logs might have info if it had issues. look at /var/log/vmware-vmtoolsd-.log and /var/log/vmware-vmsvc-.log files for errors.

What you are seeing with the "systemctl status" is "normal" behavior. The command is waiting for the user to enter q just as needed at the end of less output.: That's right, I realized typing q returns the prompt just as typing Ctrl+C

apt list --installed | grep open-vm-rools: WARNING: apt does not have a stable CLI interface. Use with caution in scripts.

ps -aef | grep vmtoolsd: root 573 1 0 14:56 ? 00:02:07 /usr/bin/vmtoolsd ariel 1952 1492 0 14:56 ? 00:01:13 /usr/bin/vmtoolsd -n vmusr --blockFd 3 --uinputFd 4 hadoop 12216 4674 0 22:57 pts/0 00:00:00 grep --color=auto vmtoolsd

For best results with copy/paste, select "Ubuntu on Xorg" from the setting icon when entering you password when logging into the desktop.: Not sure how to go about that

Not sure why, but it looks like in your environment systemctl is using a pager. Try one ot these:

systemctl --no-pager status vmtoolsd.service: Right, now the prompt is automatically returned

systemctl status vmtoolsd.service | cat: Same here, the prompt is automatically returned

I would also check environment variable like SYSTEMD_PAGER and PAGER. If SYSTEMD_PAGER is not defined you might have success defining it to empty string to disable the behavior.: None of them is defined

$SYSTEMD_PAGERSECURE: Not defined

CodeSpaniard avatar Jan 04 '24 23:01 CodeSpaniard

For best results with copy/paste, select "Ubuntu on Xorg" from the setting icon when entering you password when logging into the desktop.:

Not sure how to go about that`

When logging on to the desktop and presented with the "password" screen, click on the "setup" icon in the lower right corner of the screen. Select "Ubuntu on Xorg"

On Gnome, "Ubuntu" selects the Wayland client and that is indicated by the --uinputFd 4 on the "vmtoolsd -n vmusr" process reported above.

johnwvmw avatar Jan 04 '24 23:01 johnwvmw