본문 바로가기

추천팁

OS X 요세미티 10.10.4 정식 버전부터 패치 없이 서드파티 SSD TRIM 활성화 가능

먼저 이번 글은 OS X 요세미티 10.10.4 정식 버전이 나오는 순간 쓸모 없어진다는 것을 미리 말씀드려야 할 것 같습니다.

앞서 OS X 10.11 엘 카피탠에 서드파티 SSD를 위한 TRIM 활성화 도구가 발견되었다는 소식을 전해드린 적이 있습니다. 새 OS X에 내장된 'trimforce'라는 명령어를 통해 애플제 SSD뿐 아니라 서드파티 SSD를 탑재한 맥도 TRIM을 자유롭게 끄고 켤 수 있게 됐다는 내용이었죠. 서드파티 SSD 사용자의 오랜 숙원이 드디어 눈앞에서 해결되기 직전인 것입니다.

그런데 이 'trimforce' 명령어는 OS X 10.11 엘 카피탄 뿐만 아니라 OS X 요세미티 10.10.4 정식 버전에도 포함될 예정입니다. (아직 최근에 나온 베타 버전에는 포함되어 있지 않습니다.)

이게 어떤 의미를 가지는지 아주 간단히 설명하면, 위 사진 속의 디스크 접근금지 경고를 볼 필요가 없게 됐다는 얘기입니다. 그동안 OS X 요세미티에서 TRIM을 활성화 하기 전에는 반드시 운영체제를 '개발자 모드'로 구동해 타사 커널 확장자를 허용해야 했습니다. TRIM을 적용하기 전에 입력하는 'sudo nvram boot-args=kext-dev-mode=1' 명령어가 운영체제를 개발자 모드로 구동시키는 명령어였죠. 이 명령어를 입력해야만 '개조된 하드 디스크 커널 확장자'에 대한 접근이 허용되면서 TRIM이 활성화되었습니다.

그런데 OS X을 업데이트 하거나 NVRAM을 재설정 하다가 부트 커널이 초기화 되면서 개발자 모드가 풀리는 경우가 매우 빈번했는데요. 개발자 모드가 풀리면 위 사진과 같이 디스크 접금금지 경고가 나타나면서 맥이 제대로 부팅되지 않는 문제가 발생합니다. 이걸 해결하려면 복구 모드에서 운영체제를 덮어씌우거나 일련의 터미널 명령어를 입력해 시스템을 원상복구 시켜야 했죠. 서드파티 SSD를 쓰고 계신 분들은 한번쯤 경험해 보셨을 듯합니다.

그런데 OS X에 새로 도입된 'trimforce' 명령어는 운영체제를 개발자 모드로 구동하지 않아도 TRIM을 활성화 시킬 수 있습니다. 터미널에 해당 명령어를 입력하면 /System/Library/Extensions 폴더에 애플로부터 서명을 받은 SSD 관련 커널 확장자(Kext)가 설치되며 TRIM이 활성화됩니다. 즉, trimforce 명령어 자체가 서드파티 SSD에 대한 TRIM을 활성화 시키는 것은 아니고, trimforce 명령어로 인해 생성된 Kext 파일*이 TRIM을 활성화 시키는 것입니다.
*AppleDataSetManagement.kext

이와 관련하여 해외에서 매우 흥미로운 실험이 진행됐는데요. OS X 10.11 엘 카피텐에서 만든 'AppleDataSetManagement.kext' 파일을 OS X 요세미티 10.10.3 버전에 이식하면, TRIM이 그냥 활성화 된다고 합니다. 저도 호기심이 생겨 한번 따라해 봤습니다.

패치 없이 TRIM 활성화 하기

1. 일단 서드파티 SSD 제품이 달린 맥이 필요하겠죠? 시스템 리포트를 열어보면 TRIM 지원이 '아니오'로 표시되는 것을 볼 수 있습니다. ▼

2. 두 번째 준비물은 OS X 10.11 엘 카피텐에서 추출한 AppleDataSetManagement.kext 파일입니다. 링크에서 이 파일이 담긴 압축 파일을 받을 수 있는데, 압축을 해제하지 않고 다운로드 폴더에 그대로 놔둡니다. ▼

3. 응용 프로그램 ▶︎ 유틸리티 폴더에 있는 터미널을 실행하고 아래와 같이 명령어를 입력하고 엔터 키를 누릅니다. 암호를 요청하면 OS X 사용자 암호를 넣어주면 됩니다. ▼

sudo unzip ~/Downloads/AppleDataSetManagement.zip -d /System/Library/Extensions

4. 압축이 풀리면서 /System/Library/Extensions 위치에 설치가 진행됩니다. ▼

5. 폴더 권한을 업데이트 하기 위해 다음과 같이 touch 명령어를 넣어줍니다. ▼

sudo touch /System/Library/Extensions

6. 맥을 다시 시작하고 시스템 리포트를 열면 TRIM 지원이 "예"로 표시되는 것을 볼 수 있습니다. 

이 상태에서는 운영체제를 덮어씌우거나 NVRAM을 초기화 하더라도 TRIM이 해제되지 않습니다. 또 애초 부팅 문제를 일으키는 개발자 모드를 활성화하지 않아 부팅이 안 되는 문제에서도 자유로워졌습니다.

재차 강조하건대 OS X 10.10.4 정식 버전이 나오면 파일을 복사하거나 할 필요 없이 trimforce 명령어만으로 AppleDataSetManagement.kext 파일을 생성할 수 있습니다. TRIMEnabler나 Chamelon 같은 서드파티 프로그램도 더는 필요가 없어지는 셈이죠. OS X 10.11 엘 카피탠은 '루트리스(Rootless)' 보안체계 때문에 위 방법보다 절차가 좀 더 복잡한데요. trimforce를 입력할 때만 루트리스를 잠시 끄면 되는데다, 루트리스를 다시 켜도 변경사항이 유지되기 때문에 역시 크게 어려워 보이지는 않습니다.

오늘은 이 정도로 간단히 정리하고 OS X 10.10.4 정식 버전과 엘 카피텐 퍼블릭 베타 버전이 나오면 다시 한번 관련 소식 정리해 전해드리겠습니다. 좀 더 상세한 원리에 대해 궁금한 분은 깃허브를 통해 공개된 'Yosemite Patchless TRIM Support' 문서를 읽어보시기 바랍니다.



참조
GitHub - Yosemite Patchless TRIM Support

관련 글
• OS X 10.11 엘 카피탠에 서드파티 SSD를 위한 TRIM 활성화 도구 발견 'trimforce'
• OS X 10.11 앨 카피탠에 도입된 새로운 보안체계 'Rootless'에 관하여
• OS X 업데이트 설치하기 전 '서드파티 TRIM 활성화 툴 반드시 끄고 진행하세요'
• OS X 요세미티에서 서드파티 TRIM 활성화 툴의 안정성은 '아직 썩'