[blivet:master 1/6] Make NTFS._formattable True.

mulhern amulhern at redhat.com
Fri Dec 5 16:08:31 UTC 2014

The most relevant commit message to the signficance of NTFS being
unformattable is anaconda commit ff55e0a446986db8f86b98abf6e9e1e91d33290b
which dates from 2010.

This indicates that at that time NTFS was not officially supported in RHEL
and so ntfsprogs was not available. However, we have mechanisms in formats
for checking whether a particular filesystem is supported. These should
do the work correctly. They are supposed to work for all other filesystems.

Setting NTFS._formattable to True allows the now
separate blivet library to have NTFS works like other filesystems.

This makes a significant change. Previously, anaconda never considered NTFS
a supported filesystem, regardless of whether the tools were available.
Now, if the tools are available, it will consider NTFS supported.

In blivet, the change is also significant. Previously, it was possible
to resize an NTFS filesystem, but it was never possible to create one, even
though the coding infrastructure to create an NTFS filesystem was available
and working. Now, if the tools are available, it is possible to create an
NTFS filesystem.

Signed-off-by: mulhern <amulhern at redhat.com>
 blivet/formats/fs.py          | 1 +
 tests/formats_test/fs_test.py | 1 -
 2 files changed, 1 insertion(+), 1 deletion(-)

diff --git a/blivet/formats/fs.py b/blivet/formats/fs.py
index 07a383a..25ec2db 100644
--- a/blivet/formats/fs.py
+++ b/blivet/formats/fs.py
@@ -1390,6 +1390,7 @@ class NTFS(FS):
     _defaultInfoOptions = ["-m"]
     _existingSizeFields = ["Cluster Size:", "Volume Size in Clusters:"]
     _resizefsUnit = "B"
+    _formattable = True
     partedSystem = fileSystemType["ntfs"]
     def _fsckFailed(self, rc):
diff --git a/tests/formats_test/fs_test.py b/tests/formats_test/fs_test.py
index d5ea802..6623464 100755
--- a/tests/formats_test/fs_test.py
+++ b/tests/formats_test/fs_test.py
@@ -57,7 +57,6 @@ class HFSPlusTestCase(fstesting.FSAsRoot):
 class MacEFIFSTestCase(HFSPlusTestCase):
     _fs_class = fs.MacEFIFS
- at unittest.skip("Unable to create because NTFS._formattable is False.")
 class NTFSTestCase(fstesting.FSAsRoot):
     _fs_class = fs.NTFS
     _resizable = True

More information about the anaconda-patches mailing list