Можете ли вы создать раздел на USB-диске с помощью команды fdisk в одной строке.
Команда fdisk носит интерактивный характер, но я хочу автоматизировать создание раздела в одной строке с помощью команды fdisk.
Пытаюсь автоматизировать fdisk
возможно, но его нелегко поддерживать. Как отмечают другие ответы, либо расстались или sfdisk предназначены для того, чтобы делать то, что вы хотите, и их легче автоматизировать.
Чтобы создать раздел в одну строку с parted
:
parted -a optimal /dev/usb mkpart primary 0% 4096MB
как видно на это сообщение UNIX SE. Каждая из частей говорит сама за себя, но на всякий случай вот как mkpart
определено:
mkpart
[частичный тип fs-type название] Начало конец
где элементы в квадратных скобках необязательны, но вы, вероятно, захотите primary
для тебя частичный тип, Начало в 0%
и закончить в 4096MB
или каким бы большим ни был ваш USB-накопитель.
Сотрите все и создайте единый раздел:
dev='/dev/sdb'
sudo umount "$dev"
printf "o\nn\np\n1\n\n\nw\n" | sudo fdisk "$dev"
sudo mkfs.ext4 "${dev}1"
Смотрите также: https://superuser.com/questions/332252/creating-and-formating-a-partition-using-a-bash-script
Вероятно, вам нужно использовать расстались команда вместо fdisk.
sfdisk
также имеет неинтерактивный режим, в котором информация о разделах считывается из стандартного ввода. parted
тем не менее, более гибкий.
Использовать sfdisk вместо.
Страница руководства sfdisk немного сбивает с толку, вот некоторые конкретные примеры о том, как автоматизировать настройку разделов с помощью sfdisk. Один из примеров: вы можете сохранить информацию о разделе с одного диска через sfdisk -l
а затем скопируйте его прямо на новый диск.
Для таблиц GPT вы можете использовать sgdisk:
sgdisk -n 0:0:0 /dev/sde
-n, --new = partnum: start: end Создать новый раздел. Вы вводите номер раздела, начальный сектор и конечный сектор. И начальный, и конечный секторы могут быть указаны в абсолютном выражении как номера секторов или как позиции, измеренные в кибибайтах (K), мебибайтах (M), гибибайтах (G), тебибайтах (T) или пебибайтах (P); например, 40M определяет позицию 40MiB от начала диска. Вы можете указать местоположения относительно начала или конца указанного диапазона по умолчанию, поставив перед числом символ '+' или '-', как в + 2G, чтобы указать точку 2GiB после начального сектора по умолчанию, или -200M, чтобы указать точка на 200 МБ перед последним доступным сектором. Начальное или конечное значение 0 указывает значение по умолчанию, которое является началом самого большого доступного блока для начального сектора и концом того же блока для конечного сектора. Значение partnum, равное 0, заставляет программу использовать первый доступный номер раздела.