Linux에서 NTFS 성능을 최적화하는 방법은 무엇입니까?

Linux에서 NTFS 성능을 최적화하는 방법은 무엇입니까?

저는 다음 사양의 노트북에서 Ubuntu 22.04.2를 실행하고 있습니다.

SSD:HP S700 솔리드 스테이트 드라이브
CPU:인텔 코어 i7 7700HQ
메모리:16 기가 바이트
핵심:5.19.0-32-일반

2023년 2월 25일 현재 모든 시스템 패키지가 최신 버전으로 업데이트되었습니다. Ubuntu는 Ext4 파티션에 설치되어 있으며 내 데이터는 Windows 10을 사용하는 동안 생성된 NTFS 파티션에 저장됩니다. SSD는 다음과 같이 인식됩니다./dev/sdb

SSD 및 파티션 세부정보:
출력 hdparm -I /dev/sdb:

/dev/sdb:

ATA device, with non-removable media
    Model Number:       HP SSD S700 1TB                         
    Serial Number:      HASA42470101207     
    Firmware Revision:  V0823A0 
    Media Serial Num:   
    Media Manufacturer: 
    Transport:          Serial, ATA8-AST, SATA 1.0a, SATA II Extensions, SATA Rev 2.5, SATA Rev 2.6, SATA Rev 3.0
Standards:
    Used: unknown (minor revision code 0x011b) 
    Supported: 10 9 8 7 6 5 
    Likely used: 10
Configuration:
    Logical     max current
    cylinders   16383   16383
    heads       16  16
    sectors/track   63  63
    --
    CHS current addressable sectors:    16514064
    LBA    user addressable sectors:   268435455
    LBA48  user addressable sectors:  1953525168
    Logical  Sector size:                   512 bytes
    Physical Sector size:                   512 bytes
    Logical Sector-0 offset:                  0 bytes
    device size with M = 1024*1024:      953869 MBytes
    device size with M = 1000*1000:     1000204 MBytes (1000 GB)
    cache/buffer size  = unknown
    Form Factor: 2.5 inch
    Nominal Media Rotation Rate: Solid State Device
Capabilities:
    LBA, IORDY(can be disabled)
    Queue depth: 32
    Standby timer values: spec'd by Standard, no device specific minimum
    R/W multiple sector transfer: Max = 1   Current = 1
    Advanced power management level: 254
    DMA: mdma0 mdma1 mdma2 udma0 udma1 udma2 udma3 udma4 udma5 *udma6 
         Cycle time: min=120ns recommended=120ns
    PIO: pio0 pio1 pio2 pio3 pio4 
         Cycle time: no flow control=120ns  IORDY flow control=120ns
Commands/features:
    Enabled Supported:
       *    SMART feature set
            Security Mode feature set
       *    Power Management feature set
       *    Write cache
       *    Look-ahead
       *    Host Protected Area feature set
       *    WRITE_BUFFER command
       *    READ_BUFFER command
       *    NOP cmd
       *    DOWNLOAD_MICROCODE
       *    Advanced Power Management feature set
       *    48-bit Address feature set
       *    Mandatory FLUSH_CACHE
       *    FLUSH_CACHE_EXT
       *    General Purpose Logging feature set
       *    WRITE_{DMA|MULTIPLE}_FUA_EXT
       *    {READ,WRITE}_DMA_EXT_GPL commands
       *    Segmented DOWNLOAD_MICROCODE
       *    Gen1 signaling speed (1.5Gb/s)
       *    Gen2 signaling speed (3.0Gb/s)
       *    Gen3 signaling speed (6.0Gb/s)
       *    Native Command Queueing (NCQ)
       *    Phy event counters
       *    READ_LOG_DMA_EXT equivalent to READ_LOG_EXT
       *    DMA Setup Auto-Activate optimization
       *    Software settings preservation
       *    SMART Command Transport (SCT) feature set
       *    SANITIZE feature set
       *    BLOCK_ERASE_EXT command
       *    DOWNLOAD MICROCODE DMA command
       *    WRITE BUFFER DMA command
       *    READ BUFFER DMA command
       *    Data Set Management TRIM supported (limit 8 blocks)
Security: 
    Master password revision code = 65534
        supported
    not enabled
    not locked
        frozen
    not expired: security count
        supported: enhanced erase
    6min for SECURITY ERASE UNIT. 6min for ENHANCED SECURITY ERASE UNIT.
Checksum: correct

출력 df -aTh:

Filesystem     Type             Size  Used Avail Use% Mounted on
/dev/sdb2      ext4             162G   64G   90G  42% /
/dev/sdb1      fuseblk          760G  383G  378G  51% /mnt/DATA Laptop

출력 findmnt --fstab:

TARGET           SOURCE                                    FSTYPE OPTIONS
/                UUID=79debb50-d530-d801-70da-b150d530d801 ext4   errors=remount-ro
/mnt/DATA Laptop UUID=01D94304BCDF47E0                     ntfs   uid=1000,gid=1000,rw,user,exec,umask=000,x-gvfs-show

NTFS와 Ext4 파티션의 성능 차이:
다음을 사용하여 벤치마크를 실행할 때K 디스크 마크두 파티션 모두에서 NTFS와 Ext4 파티션의 성능, 특히 무작위 읽기 및 쓰기 성능에 상당한 차이가 있음을 발견했습니다.

출력 /dev/sdb2:

                        KDiskMark (3.1.2): https://github.com/JonMagon/KDiskMark
                    Flexible I/O Tester (fio-3.28): https://github.com/axboe/fio
--------------------------------------------------------------------------------
* MB/s = 1,000,000 bytes/s [SATA/600 = 600,000,000 bytes/s]
* KB = 1000 bytes, KiB = 1024 bytes

[Read]
Sequential   1 MiB (Q=  8, T= 1):   517.054 MB/s [    504.9 IOPS] < 15813.82 us>
Sequential   1 MiB (Q=  1, T= 1):   500.349 MB/s [    488.6 IOPS] <  2044.34 us>
    Random   4 KiB (Q= 32, T= 1):   168.011 MB/s [  42002.8 IOPS] <   760.80 us>
    Random   4 KiB (Q=  1, T= 1):    28.314 MB/s [   7078.7 IOPS] <   139.87 us>

[Write]
Sequential   1 MiB (Q=  8, T= 1):   356.269 MB/s [    347.9 IOPS] < 24887.09 us>
Sequential   1 MiB (Q=  1, T= 1):   334.044 MB/s [    326.2 IOPS] <  2978.64 us>
    Random   4 KiB (Q= 32, T= 1):   184.879 MB/s [  46219.8 IOPS] <   665.75 us>
    Random   4 KiB (Q=  1, T= 1):    84.579 MB/s [  21144.9 IOPS] <    46.37 us>

Profile: Default
   Test: 1 GiB (x5) [Measure: 5 sec / Interval: 5 sec]
   Date: 2023-02-25 14:18:20
     OS: ubuntu 22.04 [linux 5.19.0-32-generic]

출력 /dev/sdb1:

                        KDiskMark (3.1.2): https://github.com/JonMagon/KDiskMark
                    Flexible I/O Tester (fio-3.28): https://github.com/axboe/fio
--------------------------------------------------------------------------------
* MB/s = 1,000,000 bytes/s [SATA/600 = 600,000,000 bytes/s]
* KB = 1000 bytes, KiB = 1024 bytes

[Read]
Sequential   1 MiB (Q=  8, T= 1):   484.235 MB/s [    472.9 IOPS] < 16879.14 us>
Sequential   1 MiB (Q=  1, T= 1):   494.241 MB/s [    482.7 IOPS] <  2068.27 us>
    Random   4 KiB (Q= 32, T= 1):    24.336 MB/s [   6084.1 IOPS] <  5255.13 us>
    Random   4 KiB (Q=  1, T= 1):    24.453 MB/s [   6113.4 IOPS] <   162.18 us>

[Write]
Sequential   1 MiB (Q=  8, T= 1):   313.461 MB/s [    306.1 IOPS] <  8380.51 us>
Sequential   1 MiB (Q=  1, T= 1):   313.816 MB/s [    306.5 IOPS] <   879.35 us>
    Random   4 KiB (Q= 32, T= 1):    78.391 MB/s [  19597.8 IOPS] <  1237.62 us>
    Random   4 KiB (Q=  1, T= 1):    77.982 MB/s [  19495.5 IOPS] <    37.17 us>

Profile: Default
   Test: 1 GiB (x5) [Measure: 5 sec / Interval: 5 sec]
   Date: 2023-02-25 14:14:16
     OS: ubuntu 22.04 [linux 5.19.0-32-generic]

NTFS 파티션이 fuseblksystem 으로 인식되는 것을 보면 새 커널 드라이버인 mount 가 아닌 df파티션이 사용되고 있다고 가정합니다 . 설명된 대로 내 fstab FSTYPE을 ntfs3으로 변경합니다.ntfs-3gntfs3여기성능을 향상시키시겠습니까? Linux에서 NTFS 성능을 향상시키기 위해 할 수 있는 다른 방법이 있습니까? 그렇지 않은 경우 NTFS 파티션을 Ext4로 비파괴적으로 변환할 수 있는 방법이 있습니까?

귀하의 도움에 미리 감사드리며, 좋은 하루 보내세요.

고쳐 쓰다:
ntfs3FSTYPE을 in 으로 설정하면 /etc/fstab실제로 성능이 크게 향상됩니다.

KDiskMark출력 /dev/sdb1:

                        KDiskMark (3.1.2): https://github.com/JonMagon/KDiskMark
                    Flexible I/O Tester (fio-3.28): https://github.com/axboe/fio
--------------------------------------------------------------------------------
* MB/s = 1,000,000 bytes/s [SATA/600 = 600,000,000 bytes/s]
* KB = 1000 bytes, KiB = 1024 bytes

[Read]
Sequential   1 MiB (Q=  8, T= 1):   525.712 MB/s [    513.4 IOPS] < 15556.55 us>
Sequential   1 MiB (Q=  1, T= 1):   428.302 MB/s [    418.3 IOPS] <  2387.84 us>
    Random   4 KiB (Q= 32, T= 1):   237.324 MB/s [  59331.2 IOPS] <   538.66 us>
    Random   4 KiB (Q=  1, T= 1):    43.243 MB/s [  10810.8 IOPS] <    92.45 us>

[Write]
Sequential   1 MiB (Q=  8, T= 1):   495.466 MB/s [    483.9 IOPS] < 16344.70 us>
Sequential   1 MiB (Q=  1, T= 1):   372.929 MB/s [    364.2 IOPS] <  2591.59 us>
    Random   4 KiB (Q= 32, T= 1):   299.469 MB/s [  74867.4 IOPS] <   425.59 us>
    Random   4 KiB (Q=  1, T= 1):   135.961 MB/s [  33990.3 IOPS] <    27.96 us>

Profile: Default
   Test: 1 GiB (x5) [Measure: 5 sec / Interval: 5 sec]
   Date: 2023-02-25 15:45:46
     OS: ubuntu 22.04 [linux 5.19.0-32-generic]

하지만 마운트 옵션을 ntfs3으로 변경하면 Proton 종속 파티션에서 Steam 게임을 플레이할 수 없습니다. ntfs-3g의 ntfs 마운트 옵션을 사용할 때만 이 게임을 실행할 수 있습니다.

업데이트 2:
proton과 함께 ntfs3을 사용하여 해결 방법을 찾았으므로 해당 플래그를 에 남겨 두겠습니다 /etc/fstab. NTFS 성능 향상이나 Windows와 호환되지 않거나 Windows와 호환되지 않는 NTFS 파일 시스템의 변환에 대한 다른 제안은 환영합니다.

답변1

귀하의 게시물에서 볼 수 있듯이 오래된 SATA SSD가 사용됩니다. 제 경우에는 Ubuntu 23.04에서 M.2 슬롯이 있는 NVME SSD를 사용하는데 ntfs3성능 향상이 없습니다.

KDiskMark의 GUI 버전을 auto사용하여 파일 시스템 유형을 사용하여 2000MB/s 이상을 얻었습니다 .ntfs3

내 드라이브의 속도는 약 7000MB/s입니다 ext4. 두 SSD 드라이브 모두 마더보드에 직접 연결됩니다.

여기에 이미지 설명을 입력하세요.

여기에 이미지 설명을 입력하세요.

관련 정보