맨위로가기

NTFS-3G

"오늘의AI위키"는 AI 기술로 일관성 있고 체계적인 최신 지식을 제공하는 혁신 플랫폼입니다.
"오늘의AI위키"의 AI를 통해 더욱 풍부하고 폭넓은 지식 경험을 누리세요.

1. 개요

NTFS-3G는 NTFS 파일 시스템을 읽고 쓸 수 있게 해주는 오픈 소스 드라이버이다. 파일 생성, 수정, 이름 변경, 이동, 삭제, 압축, 암호화, ACL 및 권한 수정 등 모든 쓰기 작업을 지원하며, FUSE 인터페이스를 통해 NTFS 파티션을 마운트한다. 부분적인 저널링을 지원하여 파일 시스템 복구를 돕고, 하드 링크, 심볼릭 링크, 정션, NTFS 재분석 지점 플러그인을 지원한다. 2006년 Linux NTFS 프로젝트에서 분리되어 개발되었으며, Tuxera에서 개발 및 상용 라이선스를 제공하고 있다.

더 읽어볼만한 페이지

  • 파일 시스템 - 부트 섹터
    부트 섹터는 시스템 부팅 코드를 담은 저장 매체의 특정 영역으로, 볼륨 부트 레코드(VBR)와 마스터 부트 레코드(MBR)로 나뉘며, BIOS는 이를 실행하고 UEFI는 부트로더를 직접 로드하지만 바이러스 공격에 취약하다.
  • 파일 시스템 - ZFS
    ZFS는 Jeff Bonwick 등이 설계하고 구현한 파일 시스템으로, 데이터 무결성, 스냅샷, RAID-Z 등의 기능을 제공하며, 썬 마이크로시스템즈에서 개발되어 OpenZFS 프로젝트를 통해 다양한 운영체제에서 사용된다.
NTFS-3G - [IT 관련 정보]에 관한 문서
일반 정보
NTFS-3G 로고
NTFS-3G 로고
개발자Tuxera Inc.
최초 출시일2007년 2월 21일
최신 버전2022.10.3
최신 릴리스 날짜2022년 10월 31일
프로그래밍 언어C
지원 운영체제유닉스 계열, Haiku
장르파일 시스템 드라이버
라이선스이중 라이선스 GNU GPL
웹사이트NTFS-3G GitHub
추가 정보
기타OpenBSD Journal은 사용자 공간에서 파일 시스템을 추가하기 위한 fuse(4) 지원을 추가했습니다.
ntfs_3g-2014.2.15 – 읽기/쓰기 지원이 있는 FUSE NTFS 드라이버
Linus Torvalds - ntfs3: 6.0에 대한 버그 수정
Linus Torvalds - ntfs3: 5.15용 새 NTFS 드라이버

2. 기능

NTFS-3G는 리눅스 및 기타 유닉스 계열 운영체제에서 마이크로소프트NTFS 파일 시스템에 대한 읽기 및 쓰기 접근을 가능하게 하는 오픈 소스 드라이버이다.[8] 이를 통해 사용자는 NTFS 파티션에서 파일을 생성, 수정, 이름 변경, 이동, 삭제하는 등 기본적인 파일 시스템 작업을 수행할 수 있다.[9][28] NTFS-3G는 FUSE를 기반으로 동작하며, 다양한 고급 기능들을 지원한다.

개발사인 ''Tuxera Ltd''는 2008년 Szabolcs Szakacsits에 의해 설립되었으며,[11] NTFS-3G의 상업적 지원 및 임베디드 시스템용 버전인 ''Tuxera NTFS for Embedded Systems''를 제공한다. 2009년에는 마이크로소프트와 지적 재산권 계약을 포함한 협력 관계를 맺기도 했다.[13]

2. 1. 기본 기능

NTFS-3G는 NTFS 파티션에서 파일 쓰기에 대한 모든 작업을 지원하여, 모든 크기의 파일을 생성, 수정, 이름 변경, 이동 또는 삭제할 수 있다. 투명 압축과 시스템 수준의 암호화는 지원하지만, 아직 불완전하여 읽기만 가능하다.[8][27] 접근 제어 목록 및 파일 시스템 권한 수정도 가능하다.[9][28] NTFS 파티션은 마운트 시 FUSE 인터페이스를 사용한다.

또한, 하드 링크, 심볼릭 링크 및 정션을 지원한다. NTFS 재분석 지점 플러그인의 도움을 받아 청크 중복 제거된 파일, 시스템 압축된 파일 및 원드라이브 파일을 읽을 수 있다.[10] NTFS-3G는 NTFS 접근 제어 목록(ACL)을 POSIX ACL 권한으로 변환하여 완벽하게 지원하며, 사용자 ID(UID)를 윈도우 NT 보안 식별자(SID)로 매핑하는 것을 기록하기 위한 "usermap" 유틸리티가 포함되어 있다.

NTFS-3G는 부분적인 NTFS 저널링을 지원하므로, 예기치 않은 컴퓨터 오류로 인해 파일 시스템이 일관되지 않은 상태가 되면 볼륨을 복구할 수 있다. 2009년 기준으로, 저널 파일이 정리되지 않은 볼륨은 기본적으로 복구되어 마운트되며, 'norecover' 마운트 옵션을 사용하여 이 동작을 비활성화할 수 있다.[12] 다만, 저널링 지원이 완전하지 않기 때문에 컴퓨터 충돌이나 전원 차단 등으로 파일 시스템이 비일관 상태가 되었을 때는 윈도우로 부팅하여 NTFS 파일 시스템 검사를 실행해야 한다.

2. 2. 고급 기능

NTFS-3G는 파일 쓰기에 대한 모든 작업을 지원하여, NTFS 파티션에서 모든 크기의 파일을 생성, 수정, 이름 변경, 이동 또는 삭제할 수 있다. 투명 압축과 시스템 수준의 암호화는 읽기만 가능하다.[8][27] 또한 접근 제어 목록 및 파일 시스템 권한 수정도 지원한다.[9]

NTFS 파티션은 마운트 시 FUSE 인터페이스를 사용한다. 하드 링크, 심볼릭 링크 및 정션(junction)을 지원하며, NTFS 재분석 지점 플러그인을 이용하면 청크 중복 제거된 파일, 시스템 압축 파일, 원드라이브 파일 등을 읽을 수 있다.[10]

NTFS-3G는 NTFS 접근 제어 목록(ACL)을 POSIX ACL 권한으로 변환하는 기능을 지원하며, 사용자 ID(UID)와 윈도우 NT 보안 식별자(SID) 간의 매핑을 기록하기 위한 "usermap" 유틸리티를 포함하고 있다.

NTFS 저널링 기능은 부분적으로 지원된다. 예기치 않은 시스템 오류 발생 시, 2009년 기준으로는 저널 파일 정리가 필요한 볼륨을 기본적으로 복구하여 마운트한다. 이 기능은 'norecover' 마운트 옵션으로 비활성화할 수 있다.[12] 그러나 저널링 지원이 완전하지 않으므로, 심각한 오류 발생 시 파일 시스템 일관성이 깨질 수 있으며, 이 경우 윈도우로 부팅하여 복구해야 할 수도 있다.

개발사인 ''Tuxera Ltd''는 Szabolcs Szakacsits에 의해 2008년 설립되었으며,[11] 임베디드 시스템용 상용 버전인 ''Tuxera NTFS for Embedded Systems''도 제공하고 있다.

2. 3. 저널링 지원

NTFS-3G는 NTFS저널링 기능을 부분적으로 지원한다. 이 때문에 예기치 않은 컴퓨터 오류나 전원 차단이 발생하면 파일 시스템이 일관되지 않은 상태가 될 수 있다.

2009년 기준으로, 저널 파일이 정리되지 않은 볼륨은 마운트 시 기본적으로 복구 절차를 거치도록 설정되어 있다. 이 기본 복구 동작은 'norecover' 마운트 옵션을 사용하여 비활성화할 수 있다.[12] 파일 시스템이 일관성을 잃은 경우에는 윈도우로 부팅하여 NTFS 저널을 다시 실행해야 할 수도 있다.

3. 성능

NTFS-3G 드라이버는 FUSE를 통해 작동하며, CPU 성능이 충분하다면 다른 파일 시스템의 커널 내 드라이버와 비슷한 성능을 낸다.[14] 다만 임베디드 시스템이나 구형 시스템에서는 높은 프로세서 사용률로 인해 성능이 제한될 수 있다. Tuxera는 이러한 환경 및 macOS를 위한 최적화된 상업용 고성능 버전을 제공한다.[15][29]

3. 1. 성능 최적화

벤치마크에 따르면 NTFS-3G 드라이버가 FUSE를 통해 보여주는 성능은, CPU 성능이 충분하다면 다른 파일 시스템의 커널 내 드라이버와 비교할 만한 수준이다.[14] 하지만 임베디드 시스템이나 구형 시스템에서는 높은 프로세서 사용률 때문에 성능이 심각하게 제한될 수 있다. Tuxera는 임베디드 시스템과 macOS 환경에서 CPU 사용률을 개선했다고 주장하는 최적화된 상업용 드라이버 버전을 판매하고 있다.[15]

임베디드 시스템에서 NTFS-3G(및 일반적으로 FUSE)의 속도가 느린 주된 이유는 FUSE 호출과 관련된 빈번한 컨텍스트 전환 때문이다. 이러한 오버헤드를 줄이기 위해 다음과 같은 오픈 소스 방법들이 제안되었다.[16]

  • 기본 FUSE 계층에는 쓰기 작업 시 더 큰 블록을 사용하게 하는 `'big_writes'` 옵션이 있다. 더 큰 블록을 사용하면 컨텍스트 전환 횟수를 줄일 수 있으며, 이는 실제로 Tuxera에서 권장하는 해결책이다.[17] 더 큰 블록 사용을 위한 패치도 제공된다.[18]
  • 파일 접근 시 쓰기 작업을 줄이기 위한 리눅스 커널 옵션으로 `'lazytime'`이 있다.
  • 시놀로지는 자사의 NAS 시스템에서 수정된 NTFS-3G를 사용한다. 이 버전은 ntfs-3g의 inode 캐싱(`'CACHE_NIDATA_SIZE'`)을 다른 메커니즘으로 대체했지만, 그 이점은 명확하지 않다. (또한 NAS 환경을 위한 대체 보안 식별자 변환 기능도 포함한다.)


벤치마크 결과에 따르면, NTFS-3G와 다른 파일 시스템 간의 성능 차이는 크지 않음을 알 수 있다.

  • [http://www.csamuel.org/2007/04/25/comparing-ntfs-3g-to-zfs-fuse-for-fuse-performance/ JFS, XFS, NTFS-3G, ZFS-FUSE 성능 비교]
  • [https://web.archive.org/web/20080216123527/http://www.ntfs-3g.org/performance.html 5개 파일 시스템 벤치마크 결과 (Internet Archive 저장 페이지)]


이러한 결과들을 고려할 때, NTFS-3G가 완전히 최적화되었다고 보기는 어렵다. 그러나 임베디드 플랫폼이나 전자기기 제조사를 위한 상업용 고성능 버전이 별도로 제공되고 있다.[29]

4. 역사

NTFS-3G는 리눅스유닉스 계열 운영체제에서 마이크로소프트 윈도우의 NTFS 파일 시스템에 대한 자유로운 읽기 및 쓰기 접근을 가능하게 하기 위해 개발된 오픈 소스 드라이버이다. 2006년 10월 31일 리눅스-NTFS 프로젝트에서 분기되어 개발이 시작되었으며, 2007년 2월 21일 개발자 사볼치 서커치치(Szabolcs Szakacsits)에 의해 안정적인 읽기/쓰기 기능을 갖춘 1.0 버전이 공식 발표되었다.[19] 이는 기존의 읽기 전용 또는 불안정한 쓰기 지원만 가능했던 한계를 극복한 중요한 발전으로 평가받는다.

개발을 주도한 사볼치 서커치치는 2008년 핀란드Tuxera Inc.를 설립하여 NTFS-3G의 지속적인 개발과 상용 지원을 담당하게 되었다.[20] 2011년에는 NTFS 파일 시스템 유틸리티 모음인 Ntfsprogs 프로젝트가 NTFS-3G에 통합되어 기능이 더욱 확장되었다.[21] 이후 NTFS-3G는 꾸준한 업데이트를 통해 성능 개선과 새로운 기능 추가, 보안 강화가 이루어지고 있다.

4. 1. 개발 연혁


  • 2006년 10월 31일, NTFS-3G는 리눅스-NTFS 프로젝트에서 분기되었다.
  • 2007년 2월 21일, 개발자 사볼치 서커치치(Szabolcs Szakacsits)는 "최초의 오픈 소스, 자유롭게 사용 가능한 안정적인 읽기/쓰기 NTFS 드라이버인 NTFS-3G 1.0의 출시"를 발표했다.[19]
  • 2008년, 개발자 사볼치 서커치치는 핀란드Tuxera Inc.를 설립했다.
  • 2009년 10월 5일, Mac용 NTFS-3G는 Tuxera Ltd.의 관리 하에 놓였으며, Tuxera NTFS for Mac이라는 독점 버전이 출시되었다.[20] 2010년 10월 기준으로 Tuxera Inc.는 NTFS-3G의 개발, 오픈 소스 버전의 유지 보수, 상용 라이선스 제공을 담당하고 있다.
  • 2011년 4월 12일, Ntfsprogs 프로젝트가 NTFS-3G에 병합되었다고 발표되었다.[21]
  • NTFS-3G는 버전 2015.3.14에서 TRIM 지원을 추가했다.
  • NTFS-3G는 버전 2016.2.22에서 CVE-2017-0358 보안 취약점을 수정했다.
  • NTFS-3G는 버전 2017.3.23AR.4에서 CVE-2019-9755 보안 취약점을 수정했다.
  • NTFS-3G는 버전 2021.8.22에서 여러 CVE 보안 문제를 수정했다.
  • NTFS-3G는 버전 2022.5.17에서 추가적인 CVE 보안 문제를 수정했다.

4. 2. Advanced 버전

소프트웨어의 주요 유지보수자인 장-피에르 앙드레는 SourceForge에서 버그 수정과 새로운 기능을 제공하며 개발을 활발하게 진행해 왔다. 그는 자신의 웹사이트에서 NTFS-3G Advanced Version (NTFS-3G AR)이라는 이름으로 병렬적인 릴리스 시스템을 운영했다. 각 버전은 테스트를 거쳤으며 안정적인 것으로 간주되었다.[22][23]

NTFS-3G AR로 전환한 리눅스 배포판에는 데비안 및 그 파생 배포판들(우분투, PureOS, 파르두스, 패럿 OS, 트리스켈), 젠투 리눅스, LiGurOS 등이 있다.[24]

2021년 8월 30일을 기준으로, 이전에 협력하던 두 프로젝트는 하나로 합쳐져 GitHub로 이전했다.[25]

날짜주요 내용
2006년 10월 31일NTFS-3G가 Linux NTFS 프로젝트에서 독립했다.
2007년 2월 21일개발자 Szabolcs Szakacsits가 "최초의 오픈 소스, 자유롭고 안정적인 읽기/쓰기 가능한 NTFS 드라이버인 NTFS-3G 1.0 릴리스"를 발표했다.
2008년개발자 Szabolcs Szakacsits가 핀란드에서 [https://www.tuxera.com/ Tuxera Inc.]를 설립했다. 2010년 10월 현재, Tuxera가 NTFS-3G의 개발, 오픈 소스 버전의 유지 보수, 상용 라이선스 제공을 담당하고 있다.
2011년 4월 12일Ntfsprogs 프로젝트가 NTFS-3G에 합류했다.
2015년 3월 14일 이후NTFS-3G는 버전 2015.3.14부터 TRIM 지원을 추가했다.


참조

[1] 웹사이트 STABLE Version 2022.10.3 (Oct 31, 2022) https://github.com/t[...] Tuxera 2022-10-31
[2] 웹사이트 Tuxera/NTFS-3g https://github.com/t[...] 2021-11-03
[3] 웹사이트 NTFS-3G for Mac OS X ("Catacombae") https://sourceforge.[...]
[4] 웹사이트 OpenBSD adds fuse(4) support for adding file systems in userland http://undeadly.org/[...] OpenBSD Journal 2013-11-08
[5] 웹사이트 ntfs_3g-2014.2.15 – FUSE NTFS driver with read/write support http://ports.su/sysu[...] 2014-01-05
[6] 웹사이트 'Re: [GIT PULL] ntfs3: bugfixes for 6.0 - Linus Torvalds' https://lore.kernel.[...] 2024-03-17
[7] 웹사이트 'Re: [GIT PULL] ntfs3: New NTFS driver for 5.15 - Linus Torvalds' https://lore.kernel.[...]
[8] 웹사이트 NTFS-3G FAQ https://www.tuxera.c[...]
[9] 웹사이트 NTFS-3G: NTFS Driver with Ownership and permissions http://perso.orange.[...]
[10] 웹사이트 NTFS-3G: Junction Points, Symbolic Links and Reparse Points https://jp-andre.pag[...] 2019-03-01
[11] 웹사이트 About us - Tuxera https://www.tuxera.c[...] 2023-01-26
[12] 웹사이트 NTFS-3G 2009.2.1 changelog http://article.gmane[...] 2012-09-10
[13] 웹사이트 NTFS-3G-Firma schließt IP-Abkommen mit Microsoft https://www.heise.de[...] 2023-01-26
[14] 웹사이트 Comparing NTFS-3G to ZFS-FUSE for FUSE Performance http://www.csamuel.o[...]
[15] 웹사이트 Performance at Tuxera https://www.tuxera.c[...] 2017-09-29
[16] 웹사이트 On Linux NTFS Performance https://www.lysator.[...] 2019-10-03
[17] 웹사이트 NTFS-3G Questions https://www.tuxera.c[...]
[18] 웹사이트 Disadvantages of ntfs-3g 'big_writes' mount option https://unix.stackex[...] 2019-10-03
[19] 웹사이트 NTFS-3G 1.0 Released https://www.phoronix[...] 2024-04-11
[20] 웹사이트 NTFS-3G for Mac OS X is now Tuxera NTFS for Mac http://macntfs-3g.bl[...]
[21] 웹사이트 'Release: NTFS-3G + NTFSPROGS 2011.4.12' http://www.tuxera.co[...] 2018-04-26
[22] 웹사이트 Advanced NTFS-3G Features https://jp-andre.pag[...]
[23] 웹사이트 NTFS-3G: Changelog for the Advanced Versions https://jp-andre.pag[...]
[24] 웹사이트 ntfs-3g package versions https://repology.org[...]
[25] 웹사이트 ntfs-3g versions merge https://sourceforge.[...]
[26] 웹사이트 Security release 2022.10.3 https://github.com/t[...] Tuxera 2022-10-03
[27] 웹사이트 NTFS-3G FAQ http://www.tuxera.co[...]
[28] 웹사이트 NTFS-3G: NTFS Driver with Ownership and permissions http://b.andre.pages[...]
[29] 웹사이트 NTFS products http://www.tuxera.co[...]
[30] 웹인용 NTFS-3G Community Edition http://www.tuxera.co[...] 2014-05-09
[31] 웹사이트 NTFS-3G for Mac OS X ("Catacombae") http://sourceforge.n[...]
[32] 웹인용 OpenBSD adds fuse(4) support for adding file systems in userland http://undeadly.org/[...] undeadly.org 2013-11-08
[33] 문서 http://www.openbsd.org/cgi-bin/cvsweb/ports/sysutils/ntfs-3g/



본 사이트는 AI가 위키백과와 뉴스 기사,정부 간행물,학술 논문등을 바탕으로 정보를 가공하여 제공하는 백과사전형 서비스입니다.
모든 문서는 AI에 의해 자동 생성되며, CC BY-SA 4.0 라이선스에 따라 이용할 수 있습니다.
하지만, 위키백과나 뉴스 기사 자체에 오류, 부정확한 정보, 또는 가짜 뉴스가 포함될 수 있으며, AI는 이러한 내용을 완벽하게 걸러내지 못할 수 있습니다.
따라서 제공되는 정보에 일부 오류나 편향이 있을 수 있으므로, 중요한 정보는 반드시 다른 출처를 통해 교차 검증하시기 바랍니다.

문의하기 : help@durumis.com