IMHO the best way is to use a NAS to share the files as all OSs support SMB/NFS/CIFS shares. So instead of a USB disk moving around your PCs, you'd have network-connected storage than can be simultaneously accessed by all your computers, regardless of the OS. The NAS filesystem is usually Ext4-based, but it's better to avoid the same forbidden characters as in exFAT and NTFS because the files will be accessed by Windows too.
To answer your original question - note that the length limit is 255 chars *per path item*. The full path can have up to 32760 chars (~32K), but the filename and each folder name in the path cannot exceed 255 chars.
You can add an expression column to show invalid files. This one detects long path elements and invalid chars:
Linux version - for/paths/with/forward/slashes:
ifelse(
Regex([filename],[\\:?*"\|<>],0),Invalid chars!,
Compare(ListMath(ListMix(length([L1]), 0, Replace([filename],\,;)),1),>,255),Too Long!,1, OK)
Windows version - for\paths\with\backslashes:
ifelse(
Regex([filename],[//:?*"\|<>],0),Invalid chars!,
Compare(ListMath(ListMix(length([L1]), 0, Replace([filename],//,;)),1),>,255),Too Long!,1, OK)