Parallels Tools installation failure on Ubuntu 22.04

AndyZ1

Junior Member
After updating to Parallels 17.1.4 (51567), Parallels Tools failed to update. I tried installing from the iso using ./install-cli.sh but encountered the following error.
Code:
Started installation of Parallels Guest Tools version '17.1.4.51567'
./install-cli.sh: line 1310: /media/andy/Parallels Tools/installer/prl_istatus-arm64: No such file or directory
Error during report about start installation of parallels tools.

Thu Jun 2 06:22:31 PM PDT 2022
Start installation or upgrade of Guest Tools
Failed to stop prltools_updater.service: Unit prltools_updater.service not loaded.
Failed to stop prl-x11.service: Unit prl-x11.service not loaded.
Removing files according to '/var/lib/parallels-tools/.backup/.tools.list'
rmdir: failed to remove '/etc/prltools': No such file or directory
Ignoring old or unknown version 5.15.0-30-generic (latest is 5.15.0-33-generic)
DKMS modules were removed successfully
Start removal of prl_tg kernel module
Error: could not unload prl_tg kernel module
Start removal of prl_fs kernel module
Kernel module prl_fs was unloaded
Start removal of prl_fs_freeze kernel module
Kernel module prl_fs_freeze was unloaded
Start removal of prl_notifier kernel module
Error: could not unload prl_notifier kernel module
Remove kernel modules according to /var/lib/parallels-tools/.backup/.kmods.list file
awk: cmd. line:1: warning: regexp escape sequence `\#' is not a known regexp operator
warning: the compiler differs from the one used to build the kernel
  The kernel was built by: gcc (Ubuntu 11.2.0-19ubuntu1) 11.2.0
  You are using:           cc (Ubuntu 11.2.0-19ubuntu1) 11.2.0
In file included from /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg.c:23:
/usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg_common.h: In function 'tg_out':
/usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg_common.h:179:14: warning: assignment to 'long unsigned int' from 'void *' makes integer from pointer without a cast [-Wint-conversion]
  179 |         port += dev->base_addr;
      |              ^~
/usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg_common.h:183:24: warning: passing argument 2 of 'iowrite64' makes pointer from integer without a cast [-Wint-conversion]
  183 |         iowrite64(val, port);
      |                        ^~~~
      |                        |
      |                        long unsigned int
In file included from ./arch/arm64/include/asm/io.h:185,
                 from ./include/linux/io.h:13,
                 from ./include/linux/irq.h:20,
                 from ./include/asm-generic/hardirq.h:17,
                 from ./arch/arm64/include/asm/hardirq.h:17,
                 from ./include/linux/hardirq.h:11,
                 from ./include/linux/interrupt.h:11,
                 from ./include/linux/pci.h:38,
                 from /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg.c:7:
./include/asm-generic/io.h:769:64: note: expected 'volatile void *' but argument is of type 'long unsigned int'
  769 | static inline void iowrite64(u64 value, volatile void __iomem *addr)
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~^~~~
In file included from ./include/linux/kernel.h:19,
                 from ./include/linux/list.h:9,
                 from ./include/linux/module.h:12,
                 from /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg.c:5:
/usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg.c: In function 'prl_tg_probe_common':
./include/linux/kern_levels.h:5:25: warning: format '%lx' expects argument of type 'long unsigned int', but argument 3 has type 'void *' [-Wformat=]
    5 | #define KERN_SOH        "\001"          /* ASCII Start Of Header */
      |                         ^~~~~~
./include/linux/printk.h:422:25: note: in definition of macro 'printk_index_wrap'
  422 |                 _p_func(_fmt, ##__VA_ARGS__);                           \
      |                         ^~~~
/usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg.c:520:9: note: in expansion of macro 'printk'
  520 |         printk(KERN_INFO "detected %s, base addr %08lx, IRQ %d\n",
      |         ^~~~~~
./include/linux/kern_levels.h:14:25: note: in expansion of macro 'KERN_SOH'
   14 | #define KERN_INFO       KERN_SOH "6"    /* informational */
      |                         ^~~~~~~~
/usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg.c:520:16: note: in expansion of macro 'KERN_INFO'
  520 |         printk(KERN_INFO "detected %s, base addr %08lx, IRQ %d\n",
      |                ^~~~~~~~~
/usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg.c: In function 'prl_tg_init_module':
/usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg.c:646:13: warning: unused variable 'rc' [-Wunused-variable]
  646 |         int rc;
      |             ^~
In file included from /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg_call.c:11:
/usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg_common.h: In function 'tg_out':
/usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg_common.h:179:14: warning: assignment to 'long unsigned int' from 'void *' makes integer from pointer without a cast [-Wint-conversion]
  179 |         port += dev->base_addr;
      |              ^~
/usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg_common.h:183:24: warning: passing argument 2 of 'iowrite64' makes pointer from integer without a cast [-Wint-conversion]
  183 |         iowrite64(val, port);
      |                        ^~~~
      |                        |
      |                        long unsigned int
In file included from ./arch/arm64/include/asm/io.h:185,
                 from ./include/linux/io.h:13,
                 from ./include/linux/irq.h:20,
                 from ./include/asm-generic/hardirq.h:17,
                 from ./arch/arm64/include/asm/hardirq.h:17,
                 from ./include/linux/hardirq.h:11,
                 from ./include/linux/interrupt.h:11,
                 from ./include/linux/pci.h:38,
                 from /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg_call.c:7:
./include/asm-generic/io.h:769:64: note: expected 'volatile void *' but argument is of type 'long unsigned int'
  769 | static inline void iowrite64(u64 value, volatile void __iomem *addr)
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~^~~~
Skipping BTF generation for /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prl_tg.ko due to unavailability of vmlinux
warning: the compiler differs from the one used to build the kernel
  The kernel was built by: gcc (Ubuntu 11.2.0-19ubuntu1) 11.2.0
  You are using:           cc (Ubuntu 11.2.0-19ubuntu1) 11.2.0
Skipping BTF generation for /usr/lib/parallels-tools/kmods/prl_fs/SharedFolders/Guest/Linux/prl_fs/prl_fs.ko due to unavailability of vmlinux
/bin/sh: 1: cd: can't cd to prl_notifier/Installation/lnx/prl_notifier
make: *** [Makefile.kmods:50: compile] Error 2
Error: could not build kernel modules
./install-cli.sh: line 1310: /media/andy/Parallels Tools/installer/prl_istatus-arm64: No such file or directory
Error during report about failed installation of parallels tools.
Error: failed to upgrade Parallels Guest Tools!
 
After updating to Parallels 17.1.4 (51567), Parallels Tools failed to update. I tried installing from the iso using ./install-cli.sh but encountered the following error.
Code:
Started installation of Parallels Guest Tools version '17.1.4.51567'
./install-cli.sh: line 1310: /media/andy/Parallels Tools/installer/prl_istatus-arm64: No such file or directory
Error during report about start installation of parallels tools.

Thu Jun 2 06:22:31 PM PDT 2022
Start installation or upgrade of Guest Tools
Failed to stop prltools_updater.service: Unit prltools_updater.service not loaded.
Failed to stop prl-x11.service: Unit prl-x11.service not loaded.
Removing files according to '/var/lib/parallels-tools/.backup/.tools.list'
rmdir: failed to remove '/etc/prltools': No such file or directory
Ignoring old or unknown version 5.15.0-30-generic (latest is 5.15.0-33-generic)
DKMS modules were removed successfully
Start removal of prl_tg kernel module
Error: could not unload prl_tg kernel module
Start removal of prl_fs kernel module
Kernel module prl_fs was unloaded
Start removal of prl_fs_freeze kernel module
Kernel module prl_fs_freeze was unloaded
Start removal of prl_notifier kernel module
Error: could not unload prl_notifier kernel module
Remove kernel modules according to /var/lib/parallels-tools/.backup/.kmods.list file
awk: cmd. line:1: warning: regexp escape sequence `\#' is not a known regexp operator
warning: the compiler differs from the one used to build the kernel
  The kernel was built by: gcc (Ubuntu 11.2.0-19ubuntu1) 11.2.0
  You are using:           cc (Ubuntu 11.2.0-19ubuntu1) 11.2.0
In file included from /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg.c:23:
/usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg_common.h: In function 'tg_out':
/usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg_common.h:179:14: warning: assignment to 'long unsigned int' from 'void *' makes integer from pointer without a cast [-Wint-conversion]
  179 |         port += dev->base_addr;
      |              ^~
/usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg_common.h:183:24: warning: passing argument 2 of 'iowrite64' makes pointer from integer without a cast [-Wint-conversion]
  183 |         iowrite64(val, port);
      |                        ^~~~
      |                        |
      |                        long unsigned int
In file included from ./arch/arm64/include/asm/io.h:185,
                 from ./include/linux/io.h:13,
                 from ./include/linux/irq.h:20,
                 from ./include/asm-generic/hardirq.h:17,
                 from ./arch/arm64/include/asm/hardirq.h:17,
                 from ./include/linux/hardirq.h:11,
                 from ./include/linux/interrupt.h:11,
                 from ./include/linux/pci.h:38,
                 from /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg.c:7:
./include/asm-generic/io.h:769:64: note: expected 'volatile void *' but argument is of type 'long unsigned int'
  769 | static inline void iowrite64(u64 value, volatile void __iomem *addr)
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~^~~~
In file included from ./include/linux/kernel.h:19,
                 from ./include/linux/list.h:9,
                 from ./include/linux/module.h:12,
                 from /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg.c:5:
/usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg.c: In function 'prl_tg_probe_common':
./include/linux/kern_levels.h:5:25: warning: format '%lx' expects argument of type 'long unsigned int', but argument 3 has type 'void *' [-Wformat=]
    5 | #define KERN_SOH        "\001"          /* ASCII Start Of Header */
      |                         ^~~~~~
./include/linux/printk.h:422:25: note: in definition of macro 'printk_index_wrap'
  422 |                 _p_func(_fmt, ##__VA_ARGS__);                           \
      |                         ^~~~
/usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg.c:520:9: note: in expansion of macro 'printk'
  520 |         printk(KERN_INFO "detected %s, base addr %08lx, IRQ %d\n",
      |         ^~~~~~
./include/linux/kern_levels.h:14:25: note: in expansion of macro 'KERN_SOH'
   14 | #define KERN_INFO       KERN_SOH "6"    /* informational */
      |                         ^~~~~~~~
/usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg.c:520:16: note: in expansion of macro 'KERN_INFO'
  520 |         printk(KERN_INFO "detected %s, base addr %08lx, IRQ %d\n",
      |                ^~~~~~~~~
/usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg.c: In function 'prl_tg_init_module':
/usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg.c:646:13: warning: unused variable 'rc' [-Wunused-variable]
  646 |         int rc;
      |             ^~
In file included from /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg_call.c:11:
/usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg_common.h: In function 'tg_out':
/usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg_common.h:179:14: warning: assignment to 'long unsigned int' from 'void *' makes integer from pointer without a cast [-Wint-conversion]
  179 |         port += dev->base_addr;
      |              ^~
/usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg_common.h:183:24: warning: passing argument 2 of 'iowrite64' makes pointer from integer without a cast [-Wint-conversion]
  183 |         iowrite64(val, port);
      |                        ^~~~
      |                        |
      |                        long unsigned int
In file included from ./arch/arm64/include/asm/io.h:185,
                 from ./include/linux/io.h:13,
                 from ./include/linux/irq.h:20,
                 from ./include/asm-generic/hardirq.h:17,
                 from ./arch/arm64/include/asm/hardirq.h:17,
                 from ./include/linux/hardirq.h:11,
                 from ./include/linux/interrupt.h:11,
                 from ./include/linux/pci.h:38,
                 from /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg_call.c:7:
./include/asm-generic/io.h:769:64: note: expected 'volatile void *' but argument is of type 'long unsigned int'
  769 | static inline void iowrite64(u64 value, volatile void __iomem *addr)
      |                                         ~~~~~~~~~~~~~~~~~~~~~~~^~~~
Skipping BTF generation for /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prl_tg.ko due to unavailability of vmlinux
warning: the compiler differs from the one used to build the kernel
  The kernel was built by: gcc (Ubuntu 11.2.0-19ubuntu1) 11.2.0
  You are using:           cc (Ubuntu 11.2.0-19ubuntu1) 11.2.0
Skipping BTF generation for /usr/lib/parallels-tools/kmods/prl_fs/SharedFolders/Guest/Linux/prl_fs/prl_fs.ko due to unavailability of vmlinux
/bin/sh: 1: cd: can't cd to prl_notifier/Installation/lnx/prl_notifier
make: *** [Makefile.kmods:50: compile] Error 2
Error: could not build kernel modules
./install-cli.sh: line 1310: /media/andy/Parallels Tools/installer/prl_istatus-arm64: No such file or directory
Error during report about failed installation of parallels tools.
Error: failed to upgrade Parallels Guest Tools!
Hello, kindly update to 17.1.4 and let us know if still the issue persist.
 
The line from the log
/bin/sh: 1: cd: can't cd to prl_notifier/Installation/lnx/prl_notifier
indicates something weird is going on. May be because of the lack of disk space? Another idea is to clean-up previous parts of Parallels Tools installation
$ sudo rm -rf /usr/lib/parallels-tools
and to re-try installation.
 
I've figured out the issue, which is mounting prl-tools-lin.iso instead of prl-tools-lin-arm.iso. However, the GUI installer issue still needs to be fixed.
 
The line from the log
/bin/sh: 1: cd: can't cd to prl_notifier/Installation/lnx/prl_notifier
indicates something weird is going on. May be because of the lack of disk space? Another idea is to clean-up previous parts of Parallels Tools installation
$ sudo rm -rf /usr/lib/parallels-tools
and to re-try installation.
FWIW I had the same problem, and a slight variation of the above fixed it:
- Delete /{usr,var}/lib/parallels-tools
- Reboot
- Reinstall parallels tools (I used the command line version, not sure it matters)
- Reboot again
Thanks!
 
FWIW I had the same problem, and a slight variation of the above fixed it:
- Delete /{usr,var}/lib/parallels-tools
- Reboot
- Reinstall parallels tools (I used the command line version, not sure it matters)
- Reboot again
Thanks!
Works great! Thanks!
Just to add that only command-line installation works for me.
 
Back
Top