Just because you can do it doesn't mean you should: Install Linux on NTFS – on the same partition as Windows
Never mind the practicality, feel the grief
This has had a consequence they probably didn't consider, though: you can now boot Linux from an NTFS partition.
But wait, there's more. Since a Linux installation doesn't use any of the same file or folder names in the root directory, you can even install them into the same partition as Windows.
So far, the primary application of this horrifying hack is probably the entertainment to be obtained from reading the stricken comments on Github. However, the
fœtid fertile imaginations of some of the commenters raised some valid reasons why. For example, if you have a company policy that forbids you from repartitioning your machine, you could obey the letter if not the spirit of the law and dual-boot this way.
Others commented that there is prior art for this, including UMSDOS, which was used in the early days of Linux to install it directly onto a FAT partition. There was also Wubi, which was just about recent enough to be mentioned in The Reg: it let you install Ubuntu into a single file located in a Windows partition, again to avoid the scary, and possibly risky, process of repartitioning your disk.
Seriously, though, the tech raises some useful applications. For example, it might become possible to boot a WSL2 distro on bare metal – or run a real, standalone distro inside WSL2 without repartitioning. It might be prudent to hide the Windows folders from it using gobohide or something, however.
The new tech also improves something that's already possible. In olden times, it was standard practice to keep your
/home directory tree in a separate, dedicated partition. Now you can format that partition with NTFS and it will be readable and writable from Windows too, without any extra software.
If you multiboot multiple Linux distros, you could already share a single
/home partition between different distros. This saves disk space and simplifies your partition scheme. So long as you use different account names in each distro, they just ignore each other.
The snag is if you use the same login name: files end up getting shared between distros. This can be bad if, for instance, you dual-boot two different versions of the same distro – perfectly reasonable if you want to test-run a new version, or keep your old version around as a fallback measure.
If a newer version of some program updates its file formats, suddenly the old version won't be able to read its config or maybe open its data files at all.
- How Windows NTFS finally made it into Linux
- Linux kernel 5.15 released with new NTFS driver plus an LTS sticker slapped on it
- Ubuntu does bird beta
So what some of us do is keep the main data folders somewhere else, and symlink them into our home directory. Have a shared data partition with folders called
Pictures and so on, then delete the empty originals in your home directory and replace them with symbolic links to "real" data folders elsewhere. Then all your config files stay in
/home/$USERNAME where they belong, and your working files are elsewhere.
The galaxy-brain wrinkle is this: if you have to regularly switch between Windows and Linux, you can do this using your Windows data folders. Mount your NTFS data partition somewhere handy (such as
/etc/fstab, symlink Windows'
/Users/$USERNAME/Documents to Linux'
/home/$USERNAME/Documents etc, and the job's a good 'un.
All your files are available in both OSes, without syncing or transferring or anything. Conveniently (for English speakers, anyway), Windows and Linux use the same folder names, so the symlinks inherit the fancy icons and remain your default file locations.
Until now, with NTFS3G via FUSE, disk performance wasn't great and recycle-bin functionality didn't work, but these aren't issues any more and everything will Just Work™, perfectly and seamlessly, forever. In theory. Some exclusions may apply. E&OE. ®