Управление дисками из командной строки, часть 1

Управление дисками из командной строки, часть 1

Дисковая утилита в Mac OS X предоставляет ряд инструментов управления дисками, от стирания и переразметки жестких дисков до восстановления образов и восстановления томов. Это простой способ взаимодействия с подключенным хранилищем на вашем Mac.

Помимо этого графического интерфейса есть несколько мощных инструментов командной строки, которые мы можем использовать напрямую. В этой серии мы рассмотрим, как воспроизвести функциональность Дисковой утилиты в командной строке.

Следующее руководство потребует использования внешнего жесткого диска, который будет стерт и разбит на разделы..

Терминология

Раздел – это логическая единица хранения, расположенная на жестком диске. Жесткий диск может содержать один раздел, использующий все пространство, которое он содержит, или он может быть разделен на несколько разделов.

Чтобы хранить данные в разделе, ему нужна файловая система. После форматирования раздела эта комбинация раздела и файловой системы называется томом.

Вот жесткий диск USB, который был разделен на 16 разделов, каждый из которых будет отображаться отдельно на Mac как отдельные тома, поскольку они были отформатированы, хотя все они находятся на одном диске.

Представьте, что у вас есть мансардная квартира, состоящая всего из четырех внешних стен. Думайте о перегородках как о возведении разделительных стен для создания дополнительных комнат. Чем больше стен вы построите, тем больше у вас будет комнат, но все они ограничены общим объемом пространства, которое у вас было изначально.

Но эти комнаты пока нельзя использовать, пока вы не решите, какой будет каждая комната. Форматирование раздела диска ничем не отличается от решения, какая комната будет спальней или кухней. В этот момент он становится томом.

С появлением OS X Lion жесткий диск вашего Mac разделен на два раздела с двумя соответствующими томами. Первый скрыт и называется Recovery HD или OS X Recovery, что позволяет вам переустанавливать OS X без физического носителя. Второй — более знакомый Macintosh HD.

Преимущества командной строки Дисковой утилиты более чем достаточно для выполнения любой формы управления дисками для большинства пользователей. Это также безопаснее, чем командная строка, отображая диалоговые окна с предупреждениями, прежде чем приступить к любым потенциально разрушительным функциям.

Знаомство с командной строкой

Дисковой утилиты более чем достаточно для выполнения любой формы управления дисками для большинства пользователей. Это также безопаснее, чем командная строка, отображая диалоговые окна с предупреждениями, прежде чем приступить к любым потенциально разрушительным функциям.

diskutilwarning

Для более опытных пользователей командная строка предлагает более высокий уровень гибкости и контроля, так что то, что обычно требует нескольких различных взаимодействий и щелчков мышью, можно выполнить с помощью всего одной команды.

Информация о дисках с diskutil

Команда diskutil предоставляет многие функции Дисковой утилиты, от проверки и восстановления томов до изменения информации о разделе.
Чтобы просмотреть полный список доступных параметров команды, введите команду diskutil.

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

При использовании параметра списка будет отображаться основная информация обо всех доступных томах и подключенных дисках. В Терминале введите diskutil list

На следующем снимке экрана вы можете увидеть как Recovery HD, так и Macintosh HD, оба раздела находятся на внутреннем жестком диске Mac. Внешний жесткий диск также подключен к тому с пометкой Untitled.

diskutillist

Есть несколько скрытых разделов (например, EFI), которые используются для предоставления драйверов и настроек во время загрузки. Это не тома, поскольку они не могут быть смонтированы.

В зависимости от того, есть ли у вас такие функции, как FileVault 2 или Fusion Drive, макет вашего раздела может немного отличаться от того, что изображено выше.
Для многих параметров в diskutil необходимо использовать идентификатор диска или раздела. Эта информация будет предоставлена с помощью списка.

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

diskutil list disk2

diskutillistdisk2

Первое число представляет собой идентификатор физического диска. Число, следующее за буквой «s», представляет собой номер раздела. Если на диске три раздела, он будет следовать этому соглашению:

  • disk2s1

  • disk2s2

  • disk2s3

В дополнение к списку вы также можете использовать информацию с соответствующим идентификатором для отображения дополнительной информации, например:

diskutil info disk2s1

diskutilinfo

Проверка и восстановление томов

Как и в Дисковой утилите, команду diskutil можно использовать для проверки или исправления томов с любыми ошибками, и это очень просто сделать с помощью VerifyVolume или RepairVolume. Этим параметрам не нужен идентификатор диска, только имя тома:

diskutil verifyVolume /Volumes/{volume name} diskutil repairVolume /Volumes/{volume name}

Если обратная связь в Терминале выглядит знакомо, это потому, что это та же информация, которую предоставляет Дисковая утилита.

diskutilrepair

Права доступа к диску также можно проверить и восстановить с помощью двух похожих команд:

diskutil verifyPermissions /Volumes/{volume name} diskutil repair Permissions /Volumes/{volume name}

Стирание дисков

Стирание дисков из командной строки может быть опасным процессом, поскольку нет никаких предупреждений или подтверждений. Одна опечатка может привести к необратимой потере данных, если нет резервной копии для восстановления. Если вы не знакомы с командной строкой, Дисковая утилита так же способна.

Вы можете либо стереть весь диск, что удалит все хранящиеся на нем разделы, либо отдельные тома, не затрагивая другие.

Чтобы стереть весь диск, вам понадобится идентификатор диска, введите следующее, настроив идентификатор диска в соответствии с вашими потребностями:

diskutil eraseDisk JHFS+ Test /dev/{disk identifier}

Вы заметите, что в этой команде происходит немного больше, чем в предыдущих. Структура команды такова:

diskutil eraseDisk {filesystem} {Name to use} /dev/{disk identifier}

Стирание всего диска очистит все разделы и создаст новый отдельный раздел, прежде чем форматировать его как том.diskutilerase

Файловая система

Вы можете указать файловую систему для форматирования раздела, используя любую из поддерживаемых. Наиболее распространенным является JHFS+, более известный как Mac OS Extended (в журнале).

Чтобы узнать, какие файловые системы вы можете использовать, введите:

diskutil listFilesystems

Имя

Это просто относится к имени тома, который будет создан. В данном случае я просто обозначил том как «Тест».

Идентификатор диска

Необходима только основная часть идентификатора (т. е. disk1, disk2, disk3...). Дополнительный сегмент, указывающий номер раздела, опущен.

Удаление томов

Удаление томов не стирает и не влияет на весь диск, а только на указанный вами том.

Вот внешний диск, разделенный на два тома: FirstVolume и SecondVolume. Чтобы стереть SecondVolume, выполните следующую команду:

diskutil eraseVolume JHFS+ New /Volumes/SecondVolume

Структура команды почти идентична команде EraseDisk, за исключением того, что вы указываете том, а не диск. Если диск содержит несколько томов, изменяется только тот, который вы укажете.

Переформатирование томов

Вы заметите, что для удаления тома требуется указать файловую систему и имя. Это может быть немного утомительно, если вы на самом деле не хотите менять ни один из них, а просто хотите стереть содержимое.

Вместо этого параметр переформатирования удалит содержимое тома без указания файловой системы или имени, при условии, что они останутся неизменными.

diskutil reformat /Volumes/SecondVolume

Теперь том будет стерт, но сохранит существующую файловую систему и имя.

Переименование томов

В Finder вы можете довольно легко переименовать том, выбрав его на рабочем столе и нажав клавишу «Return», как и любой файл или папку.

Для переименования томов в Терминале используется метод, отличный от переименования файлов и папок, что достигается с помощью команды:

diskutil rename "{current name of volume}" "{new name}"

Подведение итогов

Мы только коснулись diskutil, но рассмотрели довольно много. Хотя с графическим интерфейсом Дисковой утилиты проще взаимодействовать, задача, состоящая из нескольких шагов, может быть выполнена с помощью всего одной команды.
В следующей части этой серии мы расскажем, как управлять разбиением на разделы и изменять тома.

Обо мне

bottom-logo

Я дизайнер. Здесь вы можете увидеть мои работы. Хорошо я делаю свою работу или не очень — судить вам.

Главное правило — вы никогда не увидите незаконченной работы. Только досконально отточенный проект можно выпускать в жизнь.

Калькулятор упаковки