Digital Artcore

Отключаем automount для Linux партиций в Mac OS X (Mountain Lion)

В Mac OS X есть очень полезная функция — автомонтирование дисков в систему, об этом написано на куче сайтов. Однако бывают случаи, когда монтировать партиции не надо. Об этом написано тоже много, и я активно пользуюсь этим на хакинтоше с двойной загрузкой — Mac OS X и Windows. Настраивается все просто, проблем не возникало. По крайней мере до тех пор, пока у меня не возникла необходимость установить тестовый Linux на хакинтош с Mountain Lion 10.8.3.

Сама установка двойной системы проходит без сюрпризов, правда приходится слегка пошаманить, чтобы Linux появился в загрузочном меню Хамелеона. Вкратце — ставить надо либо на ext2, либо на ext3 (пишут что ext4 не поддерживается Хамелеоном), а потом насильно посадить GRUB на рутовую партицию Linux (сам он отачаянно сопротивляется и сообщает что это крайне нездоровая идея, так что используем grub-install c ключом —force).

После этого наш Хамелеон прекрасно грузит и Mac OS и Linux, но после загрузки в Mountain Lion выходит сообщение, что в системе обнаружен диск с неизвестной файловой системой и предлагает его инициализировать. И это раздражает, если честно:

2013-04-04 10.20.40 pm

Ну да ладно, можне отключить автомаунт, тем более диск с Linux видеть в Mac OS мне совсем не нужно.

Отключение происходит посредством изменений в файл /etc/fstab, пишем

UUID=<уникальный идентификатор диска>     none    <имя файловой системы>    ro,noauto

Только собрался это сделать, тут меня ждал первый облом — UUID у диска с Linux не отображался, ни в консольных программах, ни в Disk Utility:

Информация о Linux разделе Информация о Linux разделе

В то же время искомый UUID прекрасно отображался у разделов, которые Mac OS знакомы:

2013-04-03 08.37.07 pm

Ну ладно, нет UUID, буду использовать вместо него LABEL диска, система видела его как Untitled, а в утилитах диск отображался как disk2s1. Прописал в fstab сразу оба параметра, чтобы наверняка:

 

LABEL=Untitled    none    ext3    ro,noauto
LABEL=disk2s1    none    ext3    ro,noauto

Честно говоря, попробовал на авось, думал вдруг получится. Не получилось 🙂

Это все была предыстория, рабочего решения своей проблемы в сети не нашел, пришлось попозиться часик, и поэтому если кто столкнется с таким, вот вам порядок действий:

Для того, чтобы Mac OS не монтировала диски, нужно чтобы система знала файловую систему. Поэтому сначала учим нашего горного льва читать ext2/ext3. Для этого качаем бесплатный пакет Fuse for OS X (OSXFUSE) с их сайта: http://osxfuse.github.com/. При  установке обязательно отметить третий параметр MacFUSE Compatibility Layer:

Screen Shot 2013-04-03 at 8.43.29 PM

Второй компонент — Fuse-ext2, скачиваем отсюда: http://sourceforge.net/projects/fuse-ext2/

После этого Mac OS замечательно видит в режиме «только для чтения» фаловую систему ext2/ext3, и при загрузке уже не выходит предупреждение о незнакомом диске. Вроде бы то, что я хотел, да не совсем. Это была половина решения — система видела диск, ошибок не выводила, но при этом все программы знали об этом диске, он отображался в Finder, а я хотел сделать Linux невидимым для Mac OS.

А поэтому дальше мы перегружаемся в Linux и устанавливаем метку диска (volume label) нашей рутовой партиции:

sudo e2label /dev/<имя рутового диска linux> <метка тома>

Как оказалось, Linux вообще не присваивает никаких меток партициям, несмотря на то, что умеет это делать. После того, как я присвоил метку своему диску, вернулся в Mac OS, убрал свои предыдущие попытки и прописал такую строчку:

LABEL=ubuntu    none    fuse-ext2    ro,noauto

В данном случае ubuntu — это метка диска, которую я присвоил разделу с linux, none — точка монтирования, в нашем случае отказываемся от этого, fuse-ext2 — файловая система, поддержку которой мы с вами добавили, ro и noauto — режим Read Only и отказ от монтирования рездела.

После перезагрузки получил именно то, что хотел. Раздел ext3 присутствует в системе, Mac OS по поводу этого не ругается, диск не смонтирова, ну а если приспичит — всегда можно смонтировать через Disk utility.

Да, совсем забыл — редактировать fstab в Mac OS легче всего через Terminal коммандой:

sudo nano /etc/fstab
Top! © Digital Artcore. All rights reserved.
Social Links:
FACEBOOK
TWITTER
[extraWatchAgent]