it-swarm-ko.tech

Ubuntu는 SSD와 함께 사용할 TRIM 명령을 지원합니까?

성능을 유지하기 위해 드라이브가 가득 차면 SSD 드라이브를 "삭제/재설정"해야합니다. 이는 새 SSD 드라이브에 대한 TRIM 명령을 통해 수행됩니다. Ubuntu는 이러한 드라이브를 지우거나 재설정하기 위해 (hdparm 등을 통한) TRIM 명령을 지원합니까?

34
ssanj

10.10 및 최신 릴리스에서 TRIM 기능이 지원되는 것 같습니다.

또한 TRIM 작업은 자동으로 수행됩니다. 디스크에서 TRIM을 지원한다고보고하면 빈 블록은 더 이상 필요하지 않은 경우 (예 : 파일 삭제) 자동으로 해제됩니다. 이 작업을 위해 hdparm 명령을 수동으로 실행할 필요는 없습니다.

24
Jeremy Kerr

Jeremy의 대답은 완전히 정확한 AFAIK는 아닙니다. 나는 Lucid에서 최신 안정된 커널을 얼마 동안 운영해 왔으며 OCZ Agility를 메인 디스크로 사용하면서 TRIM의 상태를 매우 예리하게 따르고 있습니다.

내가 아는 바는 다음과 같습니다.

  • 커널은 2.6.33부터 TRIM을 지원합니다 (매버릭은 2.6.35입니다).

  • EXT4는 TRIM을 지원하지만 journaling 이 꺼져있을 때만 가능합니다.

  • 커널에서 TRIM이 작동하는 방식은 매우 기본적이고 느립니다. 사양을 따르는 디스크는 여러 범위를 허용 할 수 있지만 커널은 현재 한 번에 하나의 범위 만 수행 할 수 있습니다. 한 달 전에 읽은 내용에서 비롯된 것입니다. 이것이 사실이 아니거나 더 이상 적용되지 않을 수 있기 때문에 출처를 원합니다.

저널링은 나를 위해 그것을 죽이는 것입니다. 데이터 손상은 PITA입니다.

그러나 최신 버전의 hdparm (v9.25-Maverick은 v9.27에 있음)에는 wiper.sh라는 스크립트가 제공되어 드라이브를 빠르게 분석 한 다음 빈 공간을 모두 잘라냅니다. 기능을 잃지 않고 wiper.sh을 (를) 일주일에 한 번 (또는 하루/월/일/일) 실행하는 것이 훨씬 쉽습니다. 지속적으로 문제를 일으키지 않는 한 OS 드라이브의 SSD 성능 저하는 그렇게 빠르지 않습니다. 실시간 트리밍을 필요 하지 않아도됩니다.

DiskTRIM 이라는 GUI 프론트 엔드도 있으며 repos에없는 것처럼 보입니다. 경험이 적은 사용자는 cron 작업을 설정하는 것보다 사용이 더 쉽다는 것을 알 수 있습니다.

Hdparm 및 disktrim에 대한 PPA가 있으며 2.6.33+ 커널 없이도 Lucid (및 그 이상)에서 모두 실행할 수 있습니다.

20
Oli

Linux는 커널 2.6.33 이후 ETX4 파일 시스템에서 자동 TRIM을 지원합니다.

자동 TRIM을 지원하는 첫 번째 Ubuntu 릴리스는 10.10 (Maveric)이지만 fstab에서 활성화해야합니다 ( here 에 설명 된대로).

8
Uli

일반적으로 그렇습니다. 새로운 커널을 얻는 방법에는 한계가 있기 때문입니다. "10.04 LTS가 명령을 즉시 지원합니까?" 대답은 '아니요'입니다. 그러나 Maverick과 Natty의 커널 (-generic, -generic-pae, -server 및 -virtual flavor)은 10.04 LTS로 백 포트되었으며 Ubuntu 리포지토리의 $ release-updates에서 사용할 수 있습니다 (예 : linux-image-generic-lts-backport-maverick매버릭의 루시드 백 포트 입니다.

4
Daniel T Chen

11.04를 실행 중이며 TRIM이 기본적으로 작동하는 것처럼 보이지 않습니다.

나는 파일을 생성하고 삭제하고 섹터가 제로 아웃/삭제되었는지 확인하기 위해 여기의 지침을 사용 를 테스트했습니다.

TRIM을 활성화하려고했습니다 여기에서 지침을 사용하여

와이퍼를 실행합니다.

/sbin/wiper.sh --verbose --commit /dev/sda1
wiper.sh : Mark Lord의 Linux SATA SSD TRIM 유틸리티 버전 3.3. 
 rootdev = /dev/sda1
fsmode2 : fsmode = read-write 
/: fstype = ext4 
 freesize = 13785252 KB, 예약 = 137852 KB 
 온라인 TRIM 준비/dev/sda1의 여유 공간 (ext4 마운트 된 읽기/쓰기)/
 
이 작업으로 인해 데이터가 자동으로 손상 될 수 있습니다. 확실합니까 (y/N)? y 
 임시 파일 생성 (13647400 KB) .. 
 디스크 동기화 .. 
 TRIM 작업 시작 .. 
 get_trimlist =/sbin/hdparm --fibmap WIPER_TMPFILE. 9689 
 
/dev/sda : 
 462 개의 범위에서 27294800 섹터 트리밍 
 성공 
 임시 파일 제거 .... 
 디스크 동기화 ..
끝난.

그러나 다시 실행하면 동일한 수의 섹터/범위를 다듬어야하고 성공을 다시보고합니다. 매번 똑같은 것을 얻습니다. 섹터가 삭제/해제 된 것처럼 보이지 않습니다. 그것들을 읽으면 여전히 같은 데이터를 보여줍니다.

다른 사람이 작동하는지 궁금합니다.

2
user10292