LinuxForum.Fans
Тема

Неинтерактивное использование [s;c]fdisk

Автор: Iced 3 сообщений 2484 просмотров
#38361

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

Пока что я знаю, что fdisk умеет работать интерактивно (как и cfdisk/sfdisk), то есть запускаем fdisk /dev/sda, вводим команды, и радуемся.
Если я, к примеру, знаю последовательность этих команд, как мне написать скриптик? :)

#38509
Iced написал:
Есть флешка (или жёсткий диск). Необходимо что сделать? Написать скриптик, которые делает какие-то действия.
Например, винчестеров много, и я хочу на всех создать одинаковую таблицу разделов. или удалить какой-то один раздел, создать какой-то один раздел, и т.п... пометить как активный, в общем, как-то так.

Пока что я знаю, что fdisk умеет работать интерактивно (как и cfdisk/sfdisk), то есть запускаем fdisk /dev/sda, вводим команды, и радуемся.
Если я, к примеру, знаю последовательность этих команд, как мне написать скриптик? :)

expect.
Можно обойтись и без fdisk. Например при помощи dd.

#39072

Для скриптинга наверное кошернее использовать sfdisk. Например:

The command
sfdisk /dev/hdb << EOF
,3,L
,60,L
,19,S
,,E
,130,L
,130,L
,130,L
,,L
EOF
will partition /dev/hdb into two Linux partitions of 3 and 60 cylinders, a swap space of 19 cylinders, and an extended partition covering the rest. Inside the extended partition there are four Linux logical partitions, three of 130 cylinders and one covering the rest.
...
-Anumber
Make the indicated partition(s) active, and all others inactive.
...
Итд.

Взято из man sfdisk. Там все прекрасно описано.

Конкретный пример скрипта

Войдите или зарегистрируйтесь, чтобы ответить.