Ubuntu NTFS hibernate partition mount

반응형

Ubuntu와 Windows를 멀티부팅하게 될 경우 Ubuntu에서 Windows 파티션에 접근할시에는 NTFS 내지 NTFS-3g 옵션을 줘서 마운트를 해야합니다. 


그런데 Windows의 Hibernation 으로 인한 NTFS 마운트에서 여러가지 에러가 발생합니다. 흔히 Hibernation은 최대 절전 모드를 구동할 경우 생기는 파티션 파일의 일종으로 2001년 출시된 Windows XP에 처음으로 등장했습니다.


더 문제가 되는 것은 이 Hibernate는 Windows 8에서 Fast Startup (빠른 부팅) 옵션에 기본적으로 내장되어 있다는 것 입니다.



위 사진은 기존 Windows 7 까지의 부팅(Cold Boot)방식과 이번에 새로이 등장한 Windows 8 Fast startup 부팅 방식의 구조입니다. 보다시피 기존 부팅에는 BIOS의 내용을 읽은 다음, 시스템 드라이버 정보, 서비스 등 세션을 읽어와 유저 인터페이스로 넘어가는 부팅 방식이나 Windows 8에서는 서비스나 시스템 하위 프로그램을 Hibernate file로 임시 저장해 거기서 빠르게 불러와 다음 과정을 넘기는 방식입니다.


이렇게 사용하게 되면 부팅 속도는 HDD도 SSD 못지 않게 부팅 속도가 빨라지기는 하나 여러 면으로 보자면 굉장한 단점들이 있습니다. Linux 계열에서 NTFS를 마운트하는 데 제한이 있을 뿐만 아니라 HDD에 전반적으로 무리가 갑니다. 이 말은 최대 절전 모드를 하게 될 때 급 전압이 바뀌게 되는데, 이 때 가장 무리가 가는 곳은 HDD 쪽입니다.



Ubuntu에서 이 파티션을 마운트 하기 위해서는 다음과 같은 방법을 사용합니다


$ sudo mount -t ntfs-3g -o remove_hiberfile /dev/sd* /media/***


$ sudo mount -t ntfs-3g -o ro /dev/sd* /media/***


첫 번째 방법은 Ubuntu 12.10에서 사용하던 방법으로 강제로 hibernate 파일을 제거해서 마운트 하는 방법으로 현재 ubuntu 13.04에서 허용하지 않는 방법 중에 하나 입니다. 



안전하지 않은 상태의 파티션이라며 정확한 시스템 종료(최대 절전 모드 혹은 Windows 8의 fast-startup 옵션을 사용하지 않은 상태)에서 마운트하거나 읽기 전용 옵션의 마운트만 사용 가능하다고 경고합니다.


NTFS 하드디스크 속성에는 hibernation 파일은 쓰기 금지가 설정되어 있습니다. 이는 우분투 혹은 다른 OS에서 마운트 했을 때 암호화된 hibernation 파일의 속성을 강제로 쓰기 옵션을 줄 수 없는 상태이기 때문에 hibernation 파일을 강제로 삭제해 파일 속성의 방해물을 없애는 작업 내지 그냥 전부를 read-only 옵션으로 놔두고 마운트 시키는 두 가지 방법을 사용하게 됩니다.


그러나 이번 13.04에서 강제 삭제가 막힌 이유는 Windows에서 또 다른 조치를 취한 것으로 예상이 됩니다. hibernate 파일을 강제로 삭제하게 될 경우 다시 부팅했을 때, 읽어오는 세션을 제대로 인식하지 못해 차후 윈도우 부팅에 문제가 될 것으로 보입니다. (원래 hibernate 자체가 안정성 떨어지는 그런 옵션입니다만..) 





Windows 8 에서 Fast-startup을 해제하시면 다음에 종료했을 때, Hibernate 파일을 생성하지 않아 이 옵션을 풀어도 Ubuntu에서 마운트 제한이 해제가 됩니다.


단, 이 옵션을 해제하면 원래 Windows 7 에서의 부팅 방식으로 돌아오기 때문에 부팅 속도가 느려집니다. 

반응형