Приношу привет от StackOverflow! :D

https://stackoverflow.com/questions/43109790/bash-how-do-i-use-sfdisk

Это был болезненный процесс. Может быть, я упускаю что-то простое?

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

Я нашел команду sfdisk которая является (предположительно) дружественной к сценариям версией fdisk .

Лучшее, что у меня есть, это:

sfdisk --color=always --wipe always --no-reread --no-act --label gpt /dev/sdc

Тут дело в типе раздела, который должен быть файловой системой Linux Filesystem (это хороший выбор для диска с данными?). GUID для этого 0FC63DAF-8483-4772-8E79-3D69D8477DE4

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

Какой формат ввода / вывода описан на страницах руководства?

<name>: <value>, <name>: <value>, ...

Кажется, я предлагаю сделать что-то вроде:

echo 'label: gpt' | --color=always --wipe always --no-reread --no-act /dev/sdc

но, увы, это терпит неудачу сложнее, чем выше: :(

Partitioning /dev/sdc...

Disk /dev/sdc: 2.7 TiB, 3000592982016 bytes, 5860533168 sectors Units: sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 4096 bytes I/O size (minimum/optimal): 4096 bytes / 4096 bytes

>>> line 1: unsupported command

New situation: Leaving.

Тогда есть дамп-файл, который я нашел в глубине страниц руководства. Похоже, я могу создавать эти проклятые вещи, присматривать за ними и отправлять на sfdisk. (ООН?)к счастью, я не могу жестко закодировать большую часть этого, поэтому решение не будет работать для меня:

label: gpt
label-id: 236AEC41-D407-4FE5-94FA-8550C2CA10B5
device: /dev/sdc
unit: sectors
first-lba: 2048
last-lba: 5860533134

/dev/sdc1 : start=        2048, size=  5860531087, type=0FC63DAF-8483-4772-8E79-3D69D8477DE4,uuid=8D7D48B0-8BF5-4383-B0EC-615C0E8AF4B4

Что я делаю неправильно!? Спасибо :)

1 ответ1

0

Я нашел лучший способ: sgdisk

sgdisk --clear $blkdev
sgdisk --new=0:0:0 --typecode=0:0FC63DAF-8483-4772-8E79-3D69D8477DE4 $blkdev

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .