Can't open "COM1" on Linux with Trinket Pro
[  881.092161] usb 2-1: Product: USBtiny
[  881.092163] usb 2-1: Manufacturer: Adafruit
[ 1004.305143] usb 2-1: USB disconnect, device number 5
[ 1019.935505] usb 2-1: new low-speed USB device number 6 using xhci_hcd
[ 1020.106524] usb 2-1: New USB device found, idVendor=1781, idProduct=0c9f


The USB Tiny ISP device which this logs shows being connected to your system is not a USB serial device.  Therefore, it will not have any /dev/ttyXXX device associated with it.  Instead it should be used with the -c usbtiny argument to avrdude.

Adafruit documents their products fairly well, and this is no exception.  The Linux section of the user guide is at https://learn.adafruit.com/usbtinyisp/avrdude#for-linux

That guide goes on to explain that you will typically need to create a udev rule to allow an ordinary user account to access the device.  Depending on Linux installation, typical contents might be

SUBSYSTEM=="usb", SYSFS{idVendor}=="1781", SYSFS{idProduct}=="0c9f", GROUP="users", MODE="0666"


or

SUBSYSTEM=="usb", SYSFS{idVendor}=="1781", SYSFS{idProduct}=="0c9f", GROUP="adm", MODE="0666"


The above linked guide will more comprehensively explain how all of this works.

Note that the above pertains to the USB Tiny ISP programmer shown in your dmesg output.  According to the Adafruit page on the Trinket Pro, the Trinket Pro "bootloader looks just like a USBtinyISP" therefore, you would talk to it in the same way as the USB Tiny ISP that your system reports finding, ie, without using a /dev/ttyXXX device, but rather by specifying -c usbtiny in the avrdude command line, or using an Arduino IDE board configuration which does so.

Your error message suggests that avrdude is not being run with the correct command line options.  You may want to turn on verbose mode to see what is being run - it would especially helpful if you did that on both the working and the non-working Linux systems.