My Jetson can not recognize my U disk which is exfat.There’s an error " Failed to mount “KINGSTON”.Error mounting /dev/sda1 at /media/jetson/KINGSTON:unknown filesystem type ‘exfat’ ".I searched some solutions,which sad that I should type the following commands:
The exfat-fuse was successfully installed,but as for the exfat-utils,there’s an error: E: Package exfat-utils has no installation candidate.I also installed exfatprogs,but it still can’t recognize format exfat.I saw an answer https://forums.developer.nvidia.com/t/mounting-exfat-drives-on-jetpack-6/275221/9,which sad I should add the kernel config for exFAT.But I can’t find the file.There is only a Makefile in Linux_for_Tegra/source/kernel/ .I don’t know where to add it.
The kernel used in L4T R35.x (which is JetPack 5.x) was configured by NVIDIA and had some out of tree content. The L4T R36.x release (which is from JetPack 6.x) uses a purely Linux mainline kernel with no out of tree content. In the former case it was NVIDIA which set the default configuration, while in the latter case this is the default as distributed by Ubuntu in mainline.
Info Not Needed But Useful:
What it comes down to is that you’ll need to build the exfat module and copy it to the right location. You should use the content from your exact L4T release. Check: head -n 1 /etc/nv_tegra_release
You will find that this also leads to the JetPack/SDK Manager download, but a newer JetPack/SDKM can be used. To tell JetPack/SDKM to use a specific or older release from a newer one start like this: sdkmanager --archived-versions
What you do need are the documents and kernel source which match your running kernel. Typically the URLs above will provide the correct kernel source, which is the main reason I gave that information. If you configure your kernel source to exactly match the running kernel, then you can simply build the module and copy it in place and you are done (well, you would need to reboot or run sudo depmod -a). If you lack something and the configuration changes in some way other than adding a new module, then the module would not load correctly.
One complication I fear is that if the module for exfat is needed during boot, then you would also need to add this to the initrd. However, you’d still need the module.
You do have an easier option: Create the same size partition on an ext4 partition, and rsync or otherwise clone the content onto the new partition (using the same size SD card as the exfat one would do this). ext4 is natively supported by the mainline kernel and no exfat driver would be needed.
Sounds like a bit of complicate to change the configuration.Now I change my U disk into NTFS format and it can be recognized now.I will try to configure the file as what you said later.
Just keep in mind that if any content for the rootfs is ever stored on a non-Linux filesystem that the installation will seem to succeed, but the system will need to be reflashed using an ext4 partition on the host PC.