Unable to reinstall parallels tools on Debian Bullseye

Discussion in 'Linux Guest OS Discussion' started by gaoc, May 7, 2020.

  1. gaoc

    gaoc Bit Poster

    Messages:
    1
    Trying to reinstall parallels tools by following https://kb.parallels.com/en/124805, select upgrade tools on prompt, then installation crashes.

    Error in /var/log/parallels-tools-install.log

    Code:
    Register service to install new Guest Tools
    Perform installation into the /usr/lib/parallels-tools directory
    make: Entering directory '/usr/lib/parallels-tools/kmods'
    Will use compiler CC="cc".
    Compiler version "cc (Debian 9.3.0-11) 9.3.0"
    cd prl_eth/pvmnet && make CC=cc
    make[1]: Entering directory '/usr/lib/parallels-tools/kmods/prl_eth/pvmnet'
    make -C /lib/modules/5.6.0-1-amd64/build M=/usr/lib/parallels-tools/kmods/prl_eth/pvmnet CC=cc
    make[2]: Entering directory '/usr/src/linux-headers-5.6.0-1-amd64'
      AR      /usr/lib/parallels-tools/kmods/prl_eth/pvmnet/built-in.a
      CC [M]  /usr/lib/parallels-tools/kmods/prl_eth/pvmnet/pvmnet.o
      LD [M]  /usr/lib/parallels-tools/kmods/prl_eth/pvmnet/prl_eth.o
      MODPOST 1 modules
      CC [M]  /usr/lib/parallels-tools/kmods/prl_eth/pvmnet/prl_eth.mod.o
      LD [M]  /usr/lib/parallels-tools/kmods/prl_eth/pvmnet/prl_eth.ko
    make[2]: Leaving directory '/usr/src/linux-headers-5.6.0-1-amd64'
    make[1]: Leaving directory '/usr/lib/parallels-tools/kmods/prl_eth/pvmnet'
    cd prl_tg/Toolgate/Guest/Linux/prl_tg && make CC=cc
    make[1]: Entering directory '/usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg'
    1: /lib/modules/5.6.0-1-amd64/build
    2: /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg
    3: 20200508
    4: 1.7.0
    Start compile prl_tg...
    make -C /lib/modules/5.6.0-1-amd64/build M=/usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg SRCROOT=/usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg CC=cc modules
    make[2]: Entering directory '/usr/src/linux-headers-5.6.0-1-amd64'
    1: /lib/modules/5.6.0-1-amd64/build
    2: /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg
    3: 20200508
    4: 1.7.0
      CC [M]  /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg.o
    /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg.c: In function 'prltg_proc_create_data':
    /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg.c:405:46: error: passing argument 4 of 'proc_create_data' from incompatible pointer type [-Werror=incompatible-pointer-types]
      405 |  return proc_create_data(name, mode, parent, fops, data);
          |                                              ^~~~
          |                                              |
          |                                              struct file_operations *
    In file included from /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg.c:10:
    /usr/src/linux-headers-5.6.0-1-common/include/linux/proc_fs.h:59:31: note: expected 'const struct proc_ops *' but argument is of type 'struct file_operations *'
       59 | extern struct proc_dir_entry *proc_create_data(const char *, umode_t,
          |                               ^~~~~~~~~~~~~~~~
    cc1: some warnings being treated as errors
    make[4]: *** [/usr/src/linux-headers-5.6.0-1-common/scripts/Makefile.build:273: /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg.o] Error 1
    make[3]: *** [/usr/src/linux-headers-5.6.0-1-common/Makefile:1696: /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg] Error 2
    make[2]: Leaving directory '/usr/src/linux-headers-5.6.0-1-amd64'
    make[2]: *** [/usr/src/linux-headers-5.6.0-1-common/Makefile:180: sub-make] Error 2
    make[1]: Leaving directory '/usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg'
    make[1]: *** [Makefile:42: prl_tg] Error 2
    make: Leaving directory '/usr/lib/parallels-tools/kmods'
    make: *** [Makefile.kmods:31: compile] Error 2
    Error: could not build kernel modules
    Error during report about failed installation of parallels tools.
    Error: failed to upgrade Parallels Guest Tools!
    2020-05-08T10:10:04+0800: Started installation of Parallels Guest Tools version '15.1.4.47270'
    Error during report about start installation of parallels tools.
    
    Fri May 8 10:09:53 CST 2020
    Start installation or upgrade of Guest Tools
    Remove tools according to /var/lib/parallels-tools/.backup/.tools.list file
    rmdir: failed to remove '/etc/prltools': No such file or directory
    Removing of X server configuration is skipped.
    DKMS modules were removed successfully
    Start removal of prl_eth kernel module
    Error: could not unload prl_eth kernel module
    Start removal of prl_tg kernel module
    Error: could not unload prl_tg kernel module
    Start removal of prl_vid kernel module
    Error: could not unload prl_vid kernel module
    Start removal of prl_fs kernel module
    Error: could not unload prl_fs kernel module
    Start removal of prl_fs_freeze kernel module
    Error: could not unload prl_fs_freeze kernel module
    Remove kernel modules according to /var/lib/parallels-tools/.backup/.kmods.list file
    /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg.c: In function 'prltg_proc_create_data':
    /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg.c:405:46: error: passing argument 4 of 'proc_create_data' from incompatible pointer type [-Werror=incompatible-pointer-types]
      405 |  return proc_create_data(name, mode, parent, fops, data);
          |                                              ^~~~
          |                                              |
          |                                              struct file_operations *
    In file included from /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg.c:10:
    /usr/src/linux-headers-5.6.0-1-common/include/linux/proc_fs.h:59:31: note: expected 'const struct proc_ops *' but argument is of type 'struct file_operations *'
       59 | extern struct proc_dir_entry *proc_create_data(const char *, umode_t,
          |                               ^~~~~~~~~~~~~~~~
    cc1: some warnings being treated as errors
    make[4]: *** [/usr/src/linux-headers-5.6.0-1-common/scripts/Makefile.build:273: /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg/prltg.o] Error 1
    make[3]: *** [/usr/src/linux-headers-5.6.0-1-common/Makefile:1696: /usr/lib/parallels-tools/kmods/prl_tg/Toolgate/Guest/Linux/prl_tg] Error 2
    make[2]: *** [/usr/src/linux-headers-5.6.0-1-common/Makefile:180: sub-make] Error 2
    make[1]: *** [Makefile:42: prl_tg] Error 2
    make: *** [Makefile.kmods:31: compile] Error 2
    Error: could not build kernel modules
    Error during report about failed installation of parallels tools.
    Error: failed to upgrade Parallels Guest Tools!
    2020-05-08T10:10:04+0800: execCmd: ./install --install [167]
    2020-05-08T10:10:04+0800: Error: An error occurred when installing Parallels Tools. Please go to /var/log/parallels-tools-install.log for more information.
    After failed installation, system hangs in booting process.
    Screen Shot 2020-05-08 at 10.17.59.png
     
  2. cpdpa

    cpdpa Bit Poster

    Messages:
    2
    yep, I have the same issue. Parallels Tools is not compatible with latest Debian Bullseye.
     
  3. MichaelL40

    MichaelL40 Bit Poster

    Messages:
    1
    I have exact same issue but with Fedora 32.
     
  4. -Overlord-

    -Overlord- Bit Poster

    Messages:
    8
    I have the same issue with Kali 2020.2.
     
  5. MacDog

    MacDog Bit Poster

    Messages:
    4
    I am using Mac Parallels Version 15.1.4 (47270) and installing Parallels Tools for Kali Linux 5.6 (2020-05-12) fails using the article here.
    This is due to changes in the kernel v5.6 by commits 97a32539b9568bb653683349e5a76d02ff3c3e2c and d56c0d45f0e27f814e87a1676b6bdccccbc252e9, where include/linux/proc_fs.h changes "file_operations" to "proc_ops" in the arguments of proc_create and proc_create_data.
    To fix the issues we need to:
    1. Mount Parallels Tools CD using Parallels Menu
    2. Create directories and copy installer to local disk:
      Code:
      mkdir pt
      mkdir ptmod
      cd pt
      cp -r /media/cdrom0/* .
    3. Unpack prl_mod.tar.gz to a "Work directory" (ptmod):
      Code:
      cd ptmod
      tar -xzf ../pt/kmods/prl_mod.tar.gz .
    4. Enter work directory (ptmod) and edit files in the following directories:
      prl_fs/SharedFolders/Guest/Linux/prl_fs/
      - prlfs_compat.h
      - super.c
      prl_fs_freeze/Snapshot/Guest/Linux/prl_freeze
      - prl_fs_freeze.c
      - prlfs_freeze_compat.h
      prl_tg/Toolgate/Guest/Linux/prl_tg
      - prltg_common.h
      - prltg.c
      prl_vid/Video/Guest/Linux/kmod
      - prlvtg.c
      To check we have a successful edit, in each directory build by:
      Code:
      make
      Then clean the directory, before leaving
      make clean
    5. When finished editing, check that all builds by:
      Code:
      cd ptmod
      make -f Makefile.kmods
      Then clean the directory
      make -f Makefile.kmods clean
    6. Repackage the files in "Work directory" (ptmod):
      Code:
      tar -zcvf prl_mod.tar.gz .
    7. Copy prl_mod.tar.gz to pt/kmods replacing the original
      Code:
      sudo mv prl_mod.tar.gz ../pt/kmods/. 
    8. Install Parallels Tools
      Code:
      cd pt
      sudo ./install
    To save you the work of doing the same edits, I would love to upload my modified prl_mod.tar.gz. However, due to forum restrictions and Parallels Copyright in the files, I can't. Hopefully, Parallels will issue an update which fixes the issue.
     
    -Overlord- likes this.
  6. -Overlord-

    -Overlord- Bit Poster

    Messages:
    8
    What did you mean with "edit files" - what should I edit? Means the "-" that I should delete the files?
     
  7. -Overlord-

    -Overlord- Bit Poster

    Messages:
    8
    Can't edit this - think I found it in the two links from your post ;)
     
  8. MacDog

    MacDog Bit Poster

    Messages:
    4
    Then you are on the right track. The files listed under each directory (- filename) is the ones you need to change.
     

Share This Page