Создание программного RAID (softraid) в OS X El Captain 10.11

В новой версии OS X El Captain 10.11 Apple сильно упростила (designed for morons) дисковую утилиту (Disk Utility) убив возможность создавать софтверные RAID массивы.
Некоторые рекомендуют использовать стороннее решение SoftRAID.
Но это не наш метод, потому как в командной строке все прекрасно можно создать.
Например. У нас есть в системе 3 HDD/SSD. На одном установлена система, из 2х других мы хотим сделать RAID массив.
Смотрим диски (используем тот же вариант с Thunderbolt стаканом и 2мя обычными HDD):

# diskutil list

/dev/disk0 (external, physical):
#: TYPE NAME SIZE IDENTIFIER
0: GUID_partition_scheme *3.0 TB disk0
1: EFI EFI 209.7 MB disk0s1
2: Apple_RAID 3.0 TB disk0s2
3: Apple_Boot Boot OS X 134.2 MB disk0s3
/dev/disk2 (internal, physical):
#: TYPE NAME SIZE IDENTIFIER
0: GUID_partition_scheme *251.0 GB disk2
1: EFI EFI 209.7 MB disk2s1
2: Apple_HFS Macintosh HD 190.0 GB disk2s2
3: Apple_Boot Recovery HD 650.0 MB disk2s3
4: Microsoft Basic Data BOOTCAMP 60.1 GB disk2s4
/dev/disk3 (external, physical):
#: TYPE NAME SIZE IDENTIFIER
0: GUID_partition_scheme *3.0 TB disk3
1: EFI EFI 209.7 MB disk3s1
2: Apple_RAID 3.0 TB disk3s2
3: Apple_Boot Boot OS X 134.2 MB disk3s3

В системе disk1 – это системный диск, 2×3 TB, в нашем случае disk0 и disk3.

Чтобы создать RAID1 (зеркало, mirror):
diskutil createRAID mirror MyNewMirrorDrive JHFS+ disk0 disk3

Чтобы создать RAID0 (stripe):
diskutil createRAID stripe MyNewStripeDrive JHFS+ disk0 disk3

Вот так выглядит в нашем случае созданный raid0:

# diskutil createRAID stripe Raid6TB JHFS+ disk0 disk3

# diskutil list

/dev/disk0 (external, physical):
#: TYPE NAME SIZE IDENTIFIER
0: GUID_partition_scheme *3.0 TB disk0
1: EFI EFI 209.7 MB disk0s1
2: Apple_RAID 3.0 TB disk0s2
3: Apple_Boot Boot OS X 134.2 MB disk0s3
/dev/disk1 (external, virtual):
#: TYPE NAME SIZE IDENTIFIER
0: Apple_HFS Raid6TB +6.0 TB disk1
/dev/disk2 (internal, physical):
#: TYPE NAME SIZE IDENTIFIER
0: GUID_partition_scheme *251.0 GB disk2
1: EFI EFI 209.7 MB disk2s1
2: Apple_HFS Macintosh HD 190.0 GB disk2s2
3: Apple_Boot Recovery HD 650.0 MB disk2s3
4: Microsoft Basic Data BOOTCAMP 60.1 GB disk2s4
/dev/disk3 (external, physical):
#: TYPE NAME SIZE IDENTIFIER
0: GUID_partition_scheme *3.0 TB disk3
1: EFI EFI 209.7 MB disk3s1
2: Apple_RAID 3.0 TB disk3s2
3: Apple_Boot Boot OS X 134.2 MB disk3s3

Спасибо-пожалуйста.

PS: скорости на чтение/запись 2х Seagate Constellation ES.3

SoftRAID0 via Thunderbolt

Switch use of F-keys from command line in OS X

#OSX #commandline #macosx
Кто часто работает в командной строке и кому нужны клавиши F1-F12, но при этом периодически пользовать OSX в «домашних» целях – небольшой скриптик, который позволяет переключать поведение клавиатуры. Открываем AppleScript Editor, создаем новый скрипт, копируем туда код. Экспортируем как Application (run-only).

--Enable/Disable "Use all F1, F2, etc. keys as standard function keys" option in Keyboard & Mouse Preference pane and close System Preferences
tell application "System Events"
tell application "System Preferences"
reveal anchor "keyboardTab" of pane "com.apple.preference.keyboard"
end tell
click checkbox 1 of tab group 1 of window 1 of application process "System Preferences"
end tell
if application "System Preferences" is running then
tell application "System Preferences" to quit
end if

Hint: если у вас OS X 10.9 Mavericks, надо открыть настройки безопасности и разрешить доступ к Accessibility фичам:
Accessibility settings

OS X 10.9 Mavericks на хакинтоше

Новая версия OS X Mavericks 10.9 отлично ставится на хакинтоши:

Установка OS X 10.9 Mavericks Установленный OS X 10.9 Mavericks

В данный момент в качестве «MacPro» у меня работает:

ASUS Maximus V Gene Z77 ALC898 Intel E1000
Intel Core-i7 3770 Sandy Bridge + Scythe Shuriken
Corsair Vengeance LP DDR-III DIMM 16GB kit 4×4 PC3-12800
Gigabyte NVIDIA GeForce  580 GTX 1536 MB
БП Corsair CX600

Все это размещено в прекрасном корпусе из под старого PowerMac G3:

Hackintosh G3 opened
Hackintosh G3 opened
Hackintosh G3 closed
Hackintosh G3 closed

Метод установки:

10.9 + UniBeast 3.0.1 + GraphicsEnabler=Yes
После установки грузимся с флэшки, после загрузки загрузчика выбираем наш установленный диск. Накатываем MultiBeast 6.0 со следующими параметрами: EasyBeast, FakeSMC + hwmonitor, IntelE1000, ALC898, USB3.

Как создать свой Mac Pro ?

hackintosh-2

Несколько туториалов от разных изданий по сборке своего мощного «Mac Pro»:

Lifehacker: Build the Mac Pro that you wish Apple released

Очень подробный гайд от NoFilmSchool: How to build a Hackintosh
Содержит как подробное описание, так и готовые списки компонент (hackintosh / hac pro) и видео-туториалы по сборке (устанавливаем CPU и кулер) и установке системы.

Как отключить рекламу Youtube в Safari

Как отключить рекламу на Youtube для Chrome или Opera, а так же Firefox и Internet Explorer.

Чтобы это проделать для Safari сделаем следующее:

Safari -> Настройки -> Дополнения -> Показывать меню «Разработка» в строке меню.

Далее: Разработка -> Показать веб-инспектор. Откроется «Консоль». В строку ввода внизу вставляем:

document.cookie="VISITOR_INFO1_LIVE=oKckVSqvaGw; path=/; domain=.youtube.com";window.location.reload();

Радуемся отсутствию рекламы 🙂

Конвертируем ссылки на windows-шары в правоверные OS X ссылки

Ссылки на windows шары (share, ресурсы): \\192.168.1.1\share

В OS X/Unix ссылки выглядят немного по другому: smb://192.168.1.1/share

Запускаем Automator, создаем новый сервис:

Create automator windows share link converter

sed -e 's/\\/\//g' | sed -e 's/^/smb:/'

Сохраняем сервис под подходящим названием (например «convert windows share link») и пробуем: выделяем windows-ссылку  -> правой кнопкой мыши -> в списке сервисов выбираем наш сервис (convert windows share link). После этих действий в буфере обмена будет ссылка на windows-ресурс правоверный для мака: smb://192.168.1.1/share.

Как поменять hostname, computername и bonjour name в OS X

ComputerName is the so-called “user-friendly” name for the Mac, it’s what will show up on the Mac itself and what will be visible to others when connecting to it over a local network. This is also what’s visible under the Sharing preference panel.

scutil --set ComputerName "MacBook Willy"

HostName is the name assigned to the computer as visible from the command line, and it’s also used
by local and remote networks when connecting through SSH and Remote Login.

scutil --set HostName "centauri"

LocalHostName is the name identifier used by Bonjour and visible through file sharing services likeAirDrop

scutil --set LocalHostName "MacBookPro"

Проверяем:

scutil --get HostName

Для бедных: XSAN over iSCSI

Apple XSAN поверх iSCSI и линуксовый сервер хранения пока на гигабитной сети, в планах переход на 10GB Ethernet.

Серверная часть

Hardware:

Сервер хранения:

Подключение к Cisco Catalyst 3750 4x1GB etherchannel.

Mac mini – метадата-контроллер для нашей SAN и другие плюшки, достаточно самой дешевой версии.

Software:

CentOS 6.4 на сервере хранения, OS X Mountain Lion 10.8.4 Server на Mac mini.

Схема разделов:

  1. vg_milkyway: RAID 1 из 2х 600 GB SAS дисков.
  2. vg_perseus: RAID 6 из 11 4TB SATA.
  3. vg_sagittarius: RAID 5 из 6 3TB SATA.
[root@milkyway]~# lvscan
 ACTIVE '/dev/vg_perseus/lv_perseus' [32,74 TiB] inherit
 ACTIVE '/dev/vg_sagittarius/lv_sagittarius_mac' [7,00 TiB] inherit
 ACTIVE '/dev/vg_sagittarius/lv_sagittarius_xsan' [4,54 TiB] inherit
 ACTIVE '/dev/vg_sagittarius/lv_sagittarius_xsan_metadata' [100,00 GiB] inherit
 ACTIVE '/dev/vg_sagittarius/lv_sagittarius_xsan_audio' [1,00 TiB] inherit
 ACTIVE '/dev/vg_sagittarius/lv_sagittarius_xsan_other' [1,00 TiB] inherit
 ACTIVE '/dev/vg_milkyway/lv_home' [443,99 GiB] inherit
 ACTIVE '/dev/vg_milkyway/lv_root' [97,66 GiB] inherit
 ACTIVE '/dev/vg_milkyway/lv_swap' [15,73 GiB] inherit

Для чего именно так: понятно, системные разделы на «быстрых» SAS 15K в зеркале. RAID6 для большого и надежного хранения, нам скорость записи не сильно важна, важна сохранность данных. RAID5 – для видео монтажа с использованием нескольких одновременных монтажных станций с Final Cut Pro X , тут нам нужна и надежность и хорошая скорость записи.

Сетевое  хранилище экспортируем с помощью AFP/Samba, тут ничего военного. Сам сервер подключен к AD и авторизует пользователей из AD.

Теперь самое интересное. vg_sagittarius нарезан на 2 LV-тома, которые экспортируются по iSCSI (почему – объясню позже).

Примечание: реализация ext4 в текущей версии RHEL/CentOS не поддерживает размер тома больше 16 ТБ, поэтому  lv_perseus содержит XFS раздел, где данным хорошо и комфортно.

Клиентская часть

Клиентами выступают 3 Mac Pro с OS X Mountain Lion 10.8.4 в качестве станционарных монтажных станций, несколько MacBook Pro для монтажа «на ходу», то бишь дома.

Почему именно iSCSI ? Final Cut Pro X не умеет работать с сетевыми дисками, ни с smb, ни с afp, ни с nfs. Умеет только через SAN. Поэтому будем городить огород и поступать как взрослые: создадим SAN, только вместо fiber channel будем использовать iSCSI ввиду дешевизны. Понятно что скорость меньше, но когда будет 10GB Ethernet, тогда посмотрим – кто кого :).

OS X умеет подключаться по iSCSI с помощью globalSAN iSCSI Initiator. Стоит недорого – 89$ за лицензию. Есть триальная версия на 15 дней.

Если подключать одну рабочую станцию к iSCSI диску, то тут никаких проблем. Просто прописываем экспортированный диск и получаем у себя локальный большой сторадж. А если надо осуществить одновременный доступ к хранилищу с нескольких рабочих станций, да еще и с возможностью записи (как вы понимаете, когда 2 компьютера начнуть одновременно писать на блочное устройство, будет очень весело файловой системе 😉 ), то тут надо строить SAN.

Есть 2 способа: простой и средне дешевый и посложнее, но более дешевый.

1й способ

Чтобы не использовать выделенный метадата контроллер, можно воспользоваться софтиной SANmp от все тех же studionetworksolutions. Смысл тут простой: само ПО следит за тем, чтобы никто не поломал нам файловую систему, занимается разграничением доступа и тд.
Принцип работы можно посмотреть здесь: cost-efficient volume sharing with SANmp. SANmp client demo, SANmp admin demo.

Минусы этого способа:

  1. смонтировать на запись одновременно с двух рабочих станций нет никакой возможности.
  2. стоимость лицензии 499$ за рабочее место (итого 5×499$ = 2495$), плюс требуется USB HASP key, что в условиях России и ее почты совсем не вариант. Тут следует отметить, что iSANmp (работа только по iSCSI) дешевле, но я не нашел цифр.

Плюсы:

  1. не надо использовать дополнительное железо;
  2. простота в использовании и администрировании: домохозяйка сможет настроить посмотрев 2 ролика на youtube.

2й способ

Вспоминаем про существование продукта Apple Xsan.
Наверное есть какие-то другие решения, но я про них ничего не знаю и в жизни не встречал, плюс нам нужно создать сеть из монтажных постов именно на маках.

Раньше XSAN сервер стоил 999$ для сервера плюс надо было покупать лицензию на каждое клиентское место.
Сейчас, что самое важное, OS X начиная с версии 10.7 содержит XSAN внутри себя совершенно бесплатно. XSAN Admin появляется при покупке за дополнительные 19,99$ пакета OS X Server из Mac App Store.

Минусы:

  1. выделенный OS X Server в качестве метадата-контроллера
  2. более сложная настройка всех компонент, простым роликом тут уже не обойтись, надо прочитать Xsan administration guide.

Плюсы:

  1. общая стоимость решения – стоимость самой дешевой версии Mac mini и 19,99$ на OS X Server.

После прочтения мануала на Xsan собственно строим наш сторадж:

  1. Как показано на примере выше (lv_sagittarius_xsan[XXX]), нарезаем на RAID5 несколько томов, они у нас станут различными LUN. В моей конфигурации сразу понятно, какой LUN на какой affinity будет использоваться при создании Xsan Volume.
  2. Экспортируем один iSCSI target с 4-мя LUNами.
  3. Настраиваем globalSAN iSCSI Initiator на экспортированный target.
    globalSAN iSCSI target
    globalSAN iSCSI target

    Если открыть дисковую утилиту, у нас появятся несколько жетских дисков:

    Disk Utility with Xsan disks
    Disk Utility with Xsan disks
  4. В Системных Настройках появится новый пункт Xsan
    Xsan System Preference
    Xsan System Preference

    Включаем поддержку Xsan.

  5. Добавляем нового клиента в Xsan Admin Tool и вуа-ля:
    Mounted Xsan Volume
    Mounted Xsan Volume

    Особо внимательне могли заметить уже смонтированный Xsan том в Дисковой Утилите 🙂

В качестве примечания. В чем прелесть использования LVM ? А в том что можно расширять физическими дисками по мере заполнения и расширять том без каких-либо сложностей.

Скорость записи на гигабитной сети – 100-105 мегабайт в секунду, что нам и требовалось:

Activity monitor: network utilization
Activity monitor: network utilization

(скорость мерялась на MacBook Pro Retina с Apple Thunderbolt Display и подключенной к монитору гигабитной сети)

Для бедных: ATI pc video card и Mac Pro

Успешно заработала PC-видео карта XFX ATI Radeon 6870 на Mac Pro. Работает boot menu, и прочие шняжки. Ранее карта запускалась только после загрузки драйверов, т.е. никакого boot screen, menu и т.д.

Используем этот гайд и перепрошиваем BIOS для своей ATI карты.

 

Создание загрузочной флэшки для установки OS X 10.8 Mountain Lion

Создадим загрузочную флэшку для установки Mac OS X 10.8 Mountain Lion. Потребуется USB-флэшка размер не менее 8 ГБайт, купленная версия Mac OS X 10.8, компьютер mac.

  1. В Дисковой Утилите переразбиваем разделы на флэшке, тип раздела «Основная загрузочная запись (Master Boot Record)», форматируем в файловую систему HFS+, называем “Install HD“.
  2. Покупаем в App Store Mac OS X 10.8 Mountain Lion, скачиваем. (Этот пункт обязателен, я не думаю, что у вас не найдется 600 рублей).
  3. Открываем правой кнопкой мыши (Ctrl-click) установочный пакет, он находится в /Applications (Программы/Установка Установка OS X Mountain Lion.app) -> Показать содержимое пакета -> Contents -> Shared Support.
    Открываем пакет  InstallESD.dmg, примонтируется установочный раздел Mac OS X Install ESD.
    Возвращаемся к Дисковой Утилите, в левой колонке нажимаем на раздел Mac OS X Install ESD под диском InstallESD.dmg.
    Переходим в закладку Восстановить. В поле Источник должен находиться выбранный установочный раздел.  В поле Назначение перетягиваем созданный ранее на флэшке раздел Install HD. И нажимаем кнопку Восстановить.
  4. Скачиваем с сайта tonymacx86.com пакет UniBeast Mountain Lion (текущая версия 1.5.3).
  5. Запускаем установочный пакет UniBeast – Mountain Lion.pkg.
    Если вы создаете загрузочную флэшку на маке под управленим OS X 10.8, прийдется в начале изменить параметры безопасности для возможности запуска неподписанных приложений. Для этого, открываем:
    Системные настройки -> Защита и безопасность. Нажимаем на «замочек» внизу, вводим пароль администратора, выбираем пункт Разрешать загрузку программ из: любого источника, подтверждаем «Разрешать отовсюду».
  6. Внимание! У вас обязательно должна быть купленная версия OS X 10.8, скачанный установочный файл должен размещаться в /Applications (Программы), иначе UniBeast не запустится и не сможет подготовить загрузочный диск.
  7. После запуска UniBeast выбираем нашу установочную флэшку и нажимаем Продолжить. Установка может занять продолжительное время (до 20-30 минут), это нормально.
  8. В случае успешного завершения установки UniBeast вы получите готовую флэшку, которая подойдет для установки хакинтоша.

В следующих постах будет описание установки OS X 10.8 Mountain Lion на ноутбук ASUS U41S и на компьютер с новым чипсетом Ivy Bridge с материнской платой ASUS Maximus V GENE на чипсете Z77 + Intel Core i7 3770K + NVIDIA 580 GTX.