||[[파일:external/upload.wikimedia.org/Rootless-test.png|width=100%]]|| ||삭제하려고 하는 것은 macOS의 인텔 그래픽 드라이버이다.|| [목차] == 개요 == [[https://support.apple.com/ko-kr/HT204899|Apple 고객지원 홈페이지의 'Mac의 시스템 무결성 보호'에 대한 설명 페이지]] 루트리스(rootless) 혹은 SIP(System integrity protection, 시스템 무결성 보호)라고 하며, OS X El Capitan과 [[iOS]] 9에 적용된 기술이다. == 상세 == 일반적인 Unix 운영체제의 경우 [[rm -rf /]]를 하면 시스템 전체가 날아간다.[* 물론 sudo는 필수다] 유닉스 기반인 macOS도 이를 피해갈 수 없어서 rm -rf / 명령어로 모든 걸 날릴 수 있었다. 그러나, 10.11 들어서 [[root]]를 엿먹이는 루트리스(rootless) 혹은 시스템 무결성 보호라는 시스템이 도입되었다. 간단하게, 무결성 보호는 다음과 같은 시스템 파일들을 '''루트'''계정을 써도 못 건든다. Apple에서 커널에다가 아예 박아놔서 Root가 와도 못 건드는 것. 거기다가 이 파일들은 무결성 보호가 켜져 있을 경우 Apple 소프트웨어 업데이트와 연계되어 새로이 업데이트 된다. 루트가 와도 못 건드는 게 아니라, 루트리스는 SELinux 처럼 구동한다. 즉, 접근 권한이 없는 놈들은 무조건 차단. 여기엔 당연히 루트 계정도 포함된다. 그러니까 일반 사용자 입장에선 그냥 놔둬도 상관 없고, 아예 잘못된 실수를 할 수도 없는 상황이 도래했다. 거기다가 이런 보호를 받는 프로그램의 경우 코드 인젝션도 불가능하다. 그래서 이런 프로그램에 관련하던 몇몇 개발자들은 손 털고 나가기도 하였다. == 적용 대상 == 다음은 시스템 무결성 보호가 적용되는 디렉터리 목록이다. * /System * /usr * /sbin * /bin * OS X에 사전 설치된 앱 [* /Application에 설치된 기본 앱들(터미널, [[QuickTime Player]] 같은 앱)[[https://krypted.com/mac-os-x/sip-protected-apps-macos/|#]]] 아래는 시스템 무결성 보호가 적용되지 않는 디렉터리 목록이다. * /Application * /Library * /usr/local [* homebrew 등으로 사용자가 설치한 유틸리티 등이 저장되는 디렉토리] == 해제 방법 == 해제 방법이 있긴 한데 웬만해서 건드리지 않는 것이 좋다. 굳이 끄고 싶다면 복구 파티션[* 부팅 시 Apple 로고가 보이기 전에 커맨드 키와 R 키를 동시에 누르고 있으면 진입할 수 있다.]에서 다음과 같은 명령으로 끌수 있다. 만약 다시 켜고 싶으면 뒤에 disable 대신 enable을 적으면 된다. 켤 때는 복구 파티션 상태가 아니여도 일반적인 터미널에서도 켤 수 있다. >csrutil disable == 여담 == iOS9 출시 전 루트리스가 도입되면 탈옥이 불가능해질것이라는 예상이 들끓었으나, 이미 Pangu 팀의 iOS 9.0 ~ 9.0.2 탈옥툴이 나온 상태로 iOS9 도 탈옥이 가능하다는 것이 증명되었다. macOS 10.13 하이 시에라에 와서는 이 기능이 더욱더 확장되었다곤 하나, 실제 머신에서 [[rm -rf /]]를 구동해본 결과 남는거 하나 없이 전부 날아갔다고 한다. 'rootless'라는 단어는 [[안드로이드(운영체제)|안드로이드]]에서 글자 그대로 [[루팅#s-2]] 없이 사용 가능한 유틸리티를 말할 때도 쓰인다. 이 문서에서 다루는 대상과는 관계가 없으니 헷갈리지 말자. [[분류:macOS]] [[분류:iOS]]