Basically, when trying to boot from a bootable USB stick containing a linux ISO, it is possible that you get the error message stating “failed to load ldlinux.c32”. This is mostly a problem caused by the Syslinux bootloader for Linux. Distros line SUSE and Ubuntu use it to boot to the system, along with a patch called gfxboot, which essentially gives a nicer looking UI to the bootloader. However, users have reported issues about the error when trying to boot after using programs like Rufus (only available in Windows) to create a bootable USB Stick for the ISO. In older versions of Rufus, and for older versions of Linux ISOs, the “Failed to load ldlinux.c32” had been a headache. But a lot of time has passed since then, and more recent versions of them won’t probably be bothering you with this error.
Nevertheless, if you still are facing the issue for whatever reason, this article will guide you through the process to properly create the USB Stick, and boot into the system Without errors.
Get the latest versions
The most important aspect of the fix is to first install the latest version of everything that is involved. If you are using Windows, install the latest Version of Rufus from their website. As of now, the current version of Rufus is v3.20. If you are using Linux, it is best to install The Balena Etcher Software, which is an easy-going software that does most of the job for you behind the hoods.
Once you’re done installing the latest versions for the bootable media creation tools, you should now be off to download the latest version of the ISO of whatever Linux distro you might be using. I’ll be targeting Ubuntu for this article as that is where most people face the issue with loading ldlinux.c32. Many users may wish to use older versions of Ubuntu, such as 18.04 or maybe even 16.04. But it’s best if you use at least Ubuntu 20.4 as it is quite stable and has a lot of issues fixed like the one here. If you still prefer the older versions, you’d want to make sure that the other parts mentioned in this article are carefully set. You may also need to make your bootable USB several times with different settings based on what works for you, and what doesn’t. If you’re done fetching the ISO of choice, or if you already have it downloaded in your system, head to the next section for properly setting up your USB Stick to boot from the ISO.
How to create the USB Stick properly
Try to follow the steps as closely as possible, because this will mark whether or not you get the error message.
Insert the USB Stick that you want to burn the ISO. Make sure that it is empty and backup any files you may have inside it before starting out on Rufus.
Enter Rufus, and allow it to be run as administrator. You will now be presented with the interface that has all the different options necessary.
Notice that my USB Stick is automatically recognised here. As I don’t have any other USB or hard disks connected to my system, the only disk other than the one inside the system is recognised. If you have multiple usb sticks together inserted, or if your stick is not recognised automatically, select it from the menu.
Click on the Select button and then navigate to the directory containing the ISO you have in your system. Select it and then press Open.
After selecting your ISO, you’ll now be presented with a few more options. The first one in notice is the Persistent Partition Size option. Now here are two things to keep in mind. if you want to install Ubuntu as a whole in your machine, skip this option and head to the next ones. But if you want to create a Live USB Stick that will run a portable Ubuntu ISO inside your USB Stick, that’ll also save the data when you exit, then select a suitable amount of size for the partition which will define the amount of storage you;ll be allocated to save your data in. I’ll skip this as I don’t want that.
The next option is the Partition Scheme. Based on what your target disk’s partition type is, you’ll need to select between the two options, MBR and GPT. Study a bit about them if you don’t know what they are. If you do already, then select the one that matches your host machine’s partition. I’ll be selecting GPT.
The target system won’t matter either way so omit that one for now.
Change the Volume label if you want to, or leave it as is. The next part is the most important one. Under the File system option, make sure to select FAT32, instead of NTFS. Linux systems don’t recognise NTFS and only supports FAT. There is no option here to select only FAT instead of FAT32, but hopefully it won’t be an issue.
Once you’re all done with the above, finally press the START button to begin burning the ISO in your USB Stick. But before the burning starts, you’ll be prompted with the choice of either using writing it in ISO image mode, or in DD image mode. Select the ISO mode for best results. If this causes problems for some reason. You may want to start over and select DD the next time around.
Press OK. You’ll then be prompted with a warning that all the data in your USB Stick will be deleted. After that, wait for a while for the process to finish. You should now be successfully able to boot into Ubuntu without seeing any errors.
In Linux, it’s best to use the program called Balena Etcher to install the ISO. It’s quite simple and straightforward, so it should not be too much of a problem as long as you have a newer version of the ISO of your Linux distro. This could raise a few concerns. But let me clear things out. Older Linux ISO’s contained a version of syslinux that had problems linking to the location of the ldlinux.c32 module present in the ISO. However, newer versions have fixed that issue.
To burn the ISO using Balena Etcher, first click on Select image and navigate to the directory where the ISO is stored. Following up, select the drive of the USB stick by clicking Select drive, and lastly, press Flash!. It’s as easy as that. It won’t ask you for anything like choosing between FAT32 or NTFS, neither will it ask for the partition Scheme between GPT or MBR. It’ll do it all by itself based on the best settings for the given ISO.
Boot into the System
If you have successfully been able to burn the ISO in your USB Stick, it is now time for you to boot into the system. Firstly, unplug your USB stick and then turn off your computer. Now plug in your USB stick, and Enter the BIOS in your system to set up booting from the USB. It’ll differ based on the vendor of the device you’re using. Afterwards, you should be prompted with the Syslinux Menu. If you’ve done everything right, you should see the menu, but if you haven’t , you’ll be getting the error message instead. If following all the steps didn’t work for you, you may want to refer to the next section where we’ll be discussing the alternatives for Rufus that’ll allow you to use FAT instead of FAT32, as many people have reported that selecting FAT fixes the issue for them.
Alternatives to Rufus for Windows
There are many other softwares that does the same job as Rufus, which you can use if Rufus does not work for you for some reason. One of which is the Universal USB Installer as well as PowerISO. These programs won’t allow you to specify the filesystem. So what you need to do instead, is use a Partition manager tool like Minitool partition Wizard and format the USB Stick with the filesystem of your choice. Afterwards, you may use the tool to burn the ISO. This time around, the ISO will be burned into the filesystem that you had formatted using the Partition Manager program.
FAT vs FAT32
There have been several reports by many users that formatting their USB Sticks into FAT instead of FAT32, had fixed the issue for them. But there are huge problems that you bring along for the sake of fixing the error. Firstly, FAT is way too old which was used back in the days for floppy disks. It is nowhere near FAT32 systems in terms of speed and storage allocation, keep aside the fact that FAT32 itself is very limited compared to filesystems like EXT4 and NTFS. Therefore, you may wish to think twice before trying to format your USB Stick using FAT. If you wish to use an older version of the Linux ISO that has the problem still persisted, it’s best you switch to newer versions to fix the issue, rather than using FAT.
So there you have you! If you have followed closely, I’m pretty sure you’re not going to get the error message again! As a side note, for users who are trying to Install Arch Linux, I would suggest then to use the GRUB bootloader instead of using Syslinux, as it is possible that the problem still persists. But problems arise when distros like Ubuntu and Linux Mint are directly burned, as they ship with a default bootloader provided by the vendor, and many of them actually still use the old Syslinux bootloader. While I’m not saying it is bad, but if it causes you problems, and you have a choice to use grub, just-do-it.