I have 2 TB of data on an NTFS drive which I would like to convert to EXT4 filesystem. My OS runs on a (comparatively) small 60GB SSD. Is there any way to convert the filesystem, apart from backing up and reformatting?
6 Answers
Just for the record, there is a software (actually, a mini-distro) that does exactly the procedure arrange said in enzotib's answer:
It looks like a direct conversion from NTFS to ext4, but internally the procedures are:
- Shrink the NTFS partition
- Create an ext4 partition in the empty space
- Move data from NTFS to ext4 until ext4 is full
- If NTFS is empty (all data was moved), go to step 8
- Shrink NTFS
- Enlarge ext4
- Repeat steps 3 to 6 until done
- Delete NTFS partition
- Move ext4 partition to NTFS' orignal place
- Trim ext4 partition to NTFS' original size
So the more occupied your NTFS partition is, the longer it will take. If it is less than 50%, it will convert in one pass, in a single shrink-copy-enlarge iteration.
Although Parted Magic conveniently automates all of this, it is still essentially the same procedures described by arrange, so it is very risky and very time consuming. Backup-format-restore is much safer and much faster.
-
-
4FYI, PartedMagic does NOT have a tool to automate the conversion from NTFS to EXT4. This is comfirmed by a PartedMagic admin themselves on their forum. The only way to do this is manually as mentioned. > From PartedMagic forums: > > Patrick Verner: I think this is the post: > askubuntu.com/questions/63022/convert-filesystem-ntfs-ext4 > > It's impossible to convert NTFS to EXT4. You have to do it like the > link above. As far as the "automate" comment, I have no idea what is > meant by that. Maybe he was taking about using GParted.– DulanicAug 1, 2015 at 15:12
No, there is no way that I am aware of.
The only way, as you said, is to backup->format->restore.
-
7Or defragment->shrink->make a new ext4 partition->copy data ntfs→ext4->delete the ntfs partition->enlarge ntfs. Risky and not nice.– arrangeSep 26, 2011 at 9:14
-
3@arrange, you mean "enlarge ext4", right? and not "enlarge ntfs" in the last step of your instructions...– rigvedSep 26, 2011 at 9:59
-
2@rigved: yes, enlarge ext4, thanks, can't edit the original comment anymore...– arrangeSep 26, 2011 at 10:05
Actually there IS a way to do this almost directly.
You could easily convert NTFS to ext2 / ext3 with anyconvertfs from anyfs-tools
Then you could convert it to ext4 using tune2fs.
-
2I have been misled by this answer. The man page doesn't state it can convert to ntfs, and the tool is not maintained since 2010. I could not compile the 6 latters versions of anyfs-tools for ubuntu 12.04 environement. May 9, 2013 at 20:44
-
1Actually question was about converting FROM ntfs, not to ntfs. And man page states that it could: anyconvertfs. Besides, I successfully converted partition with it on Gentoo.– PASAfAug 24, 2013 at 9:27
Another alternative is https://github.com/cosmos72/fstransform
Which is also available in the repos, so installable with:
sudo apt-get install fstransform
Please read through the documentation as it is a risky procedure.
-
1"In particular, they do NOT (yet) support ntfs, msdos, vfat and exfat file systems."– RedEyedMar 18, 2018 at 11:15
Old post so I hope someone finds this useful. This might take a long time.
Open gparted and right click the partition in question, click resize and shrink it to just a few GB above what's in there. Create an ext4 partition.
Mount both partitions and copy/move as many files as you can from the ntfs to the ext4.
If you move the files, you free up space on the ntfs partition.
Unmount both (I don't think this works if mounted) and go back to gparted. Repeat step one to shrink the ntfs as far as you can, again leave a couple of GB wiggle room. Enlarge the ext4 partition.
Mount the partitions again and go back to moving files.
Rinse and repeat until all files have been successfully moved.
If need be, you could use a couple of GB of your SSD to free up enough space on the ntfs partition... But remember that the more free space available, the faster this will go.
Once you have repeated this enough times, delete the ntfs partition and enlarge the ext4 to fill the entire drive.
This SHOULD work with any filesystem supported by Linux, but I have only tested it with ext4/ntfs.
Open the required partition. right click in the partition and select properties. "Select Open in disk" Select the partition and you will see a settings button. go to additional settings select repair file system. and its done. now you can make new folder and whatever you want. I did this on Ubunto 20. LTS Thank me later.