Ubuntu에서 NTFS 쓰기 속도가 실제로 느립니다 (<15MB / s)


18

대용량 파일을 복사하거나로 쓰기 속도를 테스트 할 때 ddNTFS 파일 시스템을 사용하는 드라이브에서 최대 쓰기 속도는 약 12-15MB / s입니다. Windows에서 또는 ext4로 포맷 할 때 쓰기 속도가 100MB / s + 인 여러 드라이브 (모두 SATA를 사용하여 연결됨)를 테스트 했으므로 정렬 또는 드라이브 문제가 아닙니다.

topmount.ntfs프로세스의 높은 CPU 사용량을 보여줍니다 .

AMD 듀얼 코어 프로세서 (2.2GHz)
커널 버전 : 3.5.0-23-generic
Ubuntu 12.04
ntfs-3g버전 : 2012.1.15AR.1(Ubuntu 기본 버전) 및2013.1.13AR.2

쓰기 속도는 어떻게 수정합니까?


원시 드라이브 액세스 (드라이브 또는 파티션에서 중요하지 않음)로 dd 테스트를 시도 했습니까? 이 방법으로 테스트하면 파일 시스템이 손상되고 데이터가 손실됩니다. NTFS 드라이버를 완전히 무시합니다.

그렇습니다 149MB/s. 결과는 입니다.
Zulakis 2016 년

호기심 때문에이 드라이브가 그 4k 드라이브 중 하나인지 여부와 파일 시스템이 어쨌든 정렬되지 않았는지 물어봐야합니다!
Waxhead 2016 년

4
NTFS-3G의 무료 버전이 손상되어 캐싱없이 4 KiB 쓰기를 사용하므로 SSD 및 USB 드라이브의 쓰기 성능이 매우 느려집니다. 드라이버 뒤에있는 회사는 더 나은 성능을 위해 상용 버전을 구매할 것을 제안합니다. NTFS-3G가 처음 출시 된 이래로 거의 10 년 동안이 문제가 발생했기 때문에 오픈 소스 버전을 실제로 수정 (필요한 경우 포크) 할 사람은 아무도 없습니다.
Tronic

1
동일한 Ubuntu 2015.04 랩톱을 사용하여 320GB 외장 하드 디스크와 32GB USB 스틱을 NTFS로 포맷했습니다. 첫 번째 사진에 2GB의 사진을 복사하는 데는 시간이 오래 걸리지 만 (30 분 후 6 시간 남음) USB로 두 번째 사진에는 1-2 분 밖에 걸리지 않았습니다. 둘 사이의 설정을 변경하지 않았습니다.
Nicolas Raoul

답변:


18

이전 게시물은 참조가 제공된 올바른 트랙에있었습니다.

원인이 무엇인지에 대한 아이디어는 여기를 참조하십시오. http://www.tuxera.com/community/ntfs-3g-faq/#slow

원래의 질문은 파일 전송이 큰 문제에 주목하는 것입니다. 미디어 파일을 복사하거나 백업을 수행 한 경험에서 위 FAQ의 주요 옵션은 다음과 같습니다.

해결 방법 : 쓰기 옵션 "big_writes"를 사용하면 쓰기를 요청하는 소프트웨어가 큰 블록을 지원하는 경우 일반적으로 CPU 사용량이 줄어 듭니다.

예를 들어 big_writes 옵션을 추가하십시오.

sudo mount -o big_writes /media/<mount_dir> /dev/<device>

사양이 낮은 CPU를 사용하는 Linux NAS는 NTFS 대용량 파일 쓰기를 약 3 배 빠르게 관리합니다. ~ 17MB / s에서 50MB / s +로 향상되었습니다. 심지어 외부 드라이브 기능 (2.5 "USB3 HDD)에 가까운 아이오 토프에서 약 90MB / s의 속도를 보았습니다.

NTFS-3G 매뉴얼 페이지에서 :

 big_writes
              This option prevents fuse from splitting write buffers  into  4K
              chunks,  enabling  big  write buffers to be transferred from the
              application in a single step (up to some system limit, generally
              128K bytes).

결산 메모 :

  • big_writes 옵션은 4K 랜덤 쓰기 벤치 마크에 도움이되지 않을 것입니다. ;-)
  • Tuxera는 ​​임베디드 시스템 파트너를위한 전문 NTFS 드라이버를 보유하고있는 것으로 보이지만 Paragon은 Linux 9.0 Express 용 NTFS & HFS 라고하는 개인용 NTFS 드라이버 와 전문가 버전을 무료로 제공합니다. 그러나이 제품을 보증하지 않으며 이전 버전 (v8.5)을 시도했을 때 당시 Linux Kernel 버전에서 작동하지 못했습니다.

big_writes 옵션으로 디스크가 300kb / s에서 35mb / s로 이동했습니다! 감사!
JosFabre

10 명의 캐릭터가 세상을 변화 시켰습니다. 대단히 감사합니다!
João Miguel Brandão

big_writes그러나 2016 년 에 더 이상 사용되지 않지만 3 년이 지난 후에도 일부 배포판에서는 여전히 더 오래된 버전의 libfuse를 사용하고 있습니다.
Dmitry Grigoryev

2

원인이 무엇인지에 대한 아이디어는 여기를 참조하십시오. http://www.tuxera.com/community/ntfs-3g-faq/#slow

파일 io가 기본적으로 DMA를 사용하지 않았을 때 '이전 시절'과 비슷합니다. 요즘은 아니지만 BIOS가 SATA 드라이브에 IDE 에뮬레이션을 사용하고 있습니까? IDE를 에뮬레이트하는 경우 비 DMA 모드도 에뮬레이트 할 수 있기 때문입니다.

또 다른 잠재적 인 속도 저하는 ntfs 파일 압축의 경우입니다. 쓰려는 폴더에서 압축이 활성화되어 있습니까? 그렇다면 해당 폴더의 새 파일도 압축됩니다.


DMA를 사용하고 있는지 어떻게 테스트 할 수 있습니까? 이 외에도 이미 페이지의 모든 제안을 시도했습니다.
Zulakis

음, 내가 읽은 것에서 DMA는 IDE 드라이브에만 관련이 있습니까? SATA 드라이브 만 사용하고 있습니다.
Zulakis

en.wikipedia.org/wiki/Serial_ATA#Transport_layer 에 따르면 DMA가 SATA의 유일한 옵션 인 것 같습니다. 그의 바이오스가
이데

0

이것은 오래된 스레드이지만 같은 문제에 대한 해결책을 찾는 사람들을 위해 : cpuspeed가 활성화되어 있습니까? ntfs-3g는 CPU가 부족하여 필자의 경우 cpuspeed가 많은 IO 대기 시간이있는 프로세스의 저 부하를 실수로 감지하여 결국 코어를 낮추고 드라이버를 굶주립니다.

cpuspeed를 비활성화 (예 : 서비스로 실행중인 경우)하고 다시 테스트하십시오.


cpuspeed가 활성화되어 있는지 어떻게 확인합니까? 데몬입니까 아니면 설정입니까?
Daniel

0

big_writes2016 년 에 더 이상 사용되지 않으므로libfuse 버전 3.0.0 이상을 사용할 때 해당 동작이 항상 활성화됩니다 . 최신 Linux 시스템에서 NTFS 성능이 저하되면 일반적으로 다음을 의미합니다.

  • 디스크가 조각났다
  • NTFS 디스크 압축이 활성화되었습니다
  • sync사용 된 것과 같은 부적절한 마운트 옵션

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.