Teknik Ntfs2btrfs untuk mengonversi sistem file NTFS ke Btrfs open source secara in-place
(github.com/maharmstone)Ntfs2btrfs
Ntfs2btrfs adalah alat untuk mengonversi sistem file NTFS milik Microsoft ke Btrfs, sistem file open source. Ini mirip dengan btrfs-convert yang mengonversi ext2. Setelah konversi, image asli disimpan sebagai image/ntfs.img, dan jika ingin mempertahankan hasil konversi, file ini dapat dihapus untuk mengosongkan ruang. Alat ini dianggap stabil, tetapi jika terjadi masalah, tidak ada tanggung jawab yang ditanggung. Driver sistem file Btrfs untuk Windows, yaitu WinBtrfs, juga layak untuk diperhatikan. Ucapan terima kasih disampaikan kepada Eric Biggers, yang berhasil melakukan reverse engineering atas "data kompresi WOF" di Windows 10, dan kodenya digunakan di sini.
Cara penggunaan
- Windows: jalankan
ntfs2btrfs.exe D:\dari Command Prompt administrator- Tidak berfungsi pada drive boot atau drive yang sedang digunakan oleh page file
- Jika menggunakan WinBtrfs, flag read-only pada subvolume
imageharus dilepas agar bisa dihapus
- Linux: jalankan
ntfs2btrfs /dev/sda1sebagai root
Instalasi
- Windows: unduh file Zip terbaru dari halaman Releases atau gunakan Scoop
- Linux:
- Arch
- Fedora (tersedia berkat Conan-Kudo)
- Gentoo - tersedia sebagai sys-fs/ntfs2btrfs di repositori guru
- Debian (tersedia berkat alexmyczko)
- Ubuntu (tersedia berkat alexmyczko)
- openSUSE (tersedia berkat David Sterba)
- Untuk distro atau sistem operasi lain, perlu dikompilasi sendiri
Changelog
- 20240115
- Memperbaiki masalah kompilasi di GCC 14 (
-Werror=incompatible-pointer-typesdiaktifkan secara default)
- Memperbaiki masalah kompilasi di GCC 14 (
- 20230501
- Memperbaiki masalah urutan yang tidak terdiagnosis oleh
btrfs check - Memperbaiki masalah item metadata yang ditulis dengan nilai level yang salah
- Melewati ADS dengan nama yang terlalu panjang
- Memperbaiki masalah urutan yang tidak terdiagnosis oleh
- 20220812
- Menambahkan opsi --no-datasum untuk melewati perhitungan checksum
- Mempertahankan metadata LXSS / WSL
- Memperbaiki masalah huruf drive kecil yang tidak dikenali
- Memperbaiki kerusakan saat ada file di megabyte terakhir disk
- 20210923
- Menambahkan dukungan kompresi (Btrfs) (zlib, lzo, zstd)
- Menambahkan dukungan untuk algoritma hash lain: xxhash, sha256, blake2
- Menambahkan dukungan rollback ke NTFS
- Meningkatkan kecepatan konversi untuk volume dengan banyak inode
- Memperbaiki bug saat ada file terfragmentasi di lokasi superblock
- Memperbaiki buffer overflow saat membaca security descriptor
- Memperbaiki kerusakan sistem file yang tidak terdeteksi oleh
btrfs check
- 20210523
- Meningkatkan penanganan file terkompresi besar
- 20210402 (rilis khusus source code)
- Memperbaiki masalah kompilasi pada arsitektur non-amd64
- 20210105
- Menambahkan dukungan kompresi NTFS
- Menambahkan dukungan untuk "data kompresi WOF"
- Memperbaiki masalah akibat sparse file
- Berbagai perbaikan bug lainnya
- 20201108
- Meningkatkan penanganan error
- Menambahkan pesan yang lebih baik saat NTFS rusak atau tidak dalam keadaan bersih
- Meningkatkan penanganan relokasi
- 20200330
- Rilis awal
Kompilasi
- Windows: buka direktori source dengan MSVC versi terbaru, lalu klik kanan CMakeLists.txt untuk kompilasi
- Linux:
mkdir buildcd buildcmake ..make- Perlu menginstal libfmt - seharusnya tersedia di package manager
- Dukungan kompresi memerlukan zlib, lzo, zstd - seharusnya tersedia di package manager. Untuk menonaktifkannya, lihat opsi cmake WITH_ZLIB, WITH_LZO, WITH_ZSTD
Yang berfungsi
- File
- Direktori
- Symbolic link
- Titik reparsing lainnya
- Security descriptor
- Alternate data stream
- Atribut DOS (hidden, system, dll.)
- Rollback ke image NTFS asli
- Mempertahankan metadata LXSS
Yang tidak berfungsi
- Extended attribute lama Windows (tidak digunakan)
- ADS besar (lebih dari 16KB) (tidak digunakan)
- Mempertahankan flag case-sensitive
- Ukuran cluster yang tidak normal (bukan 4KB)
- File terenkripsi
Apakah Windows bisa boot dari Btrfs?
- Bisa, tetapi hanya jika kondisi tertentu terpenuhi. Lihat Quibble.
1 komentar
Komentar Hacker News
Tingkat "hold-my-beer"-nya sangat tinggi
Saat pernah mencobanya sebelumnya, disknya menjadi hanya-baca
Ini sangat keren, tetapi orang-orang kemungkinan baru akan mendengar kabar ini setidaknya seminggu lagi
Sedang memikirkan cara menerapkannya ke ZFS
Akan sangat mengejutkan jika ini mendukung file yang menggunakan kompresi LZX
compact.exe /C /EXE:LZX (nama file)NTFS stabil, lebih cepat daripada btrfs, dan memiliki fitur yang sama