Автоматический говорят да для создания ext3 файловой системы на диске с mkfs.ext3

Я работаю над сценарием, где я делаю ext3 файловую систему на диске, проблема состоит в том, что сценарий просит, чтобы пользователь любому сказал да или нет:

 root@ubuntu:/home/school#  mkfs.ext3 /dev/sdc
 mke2fs 1.42 (29-Nov-2011)
 /dev/sdc is entire device, not just one partition!
 Proceed anyway? (y,n)

Я попытался поместить-y прежде mkfs и после sdc, но это не работало. У кого-либо есть какие-либо решения сделать это без взаимодействия с пользователем?

7
задан 15 October 2018 в 23:55

2 ответа

Вы не должны, вероятно, делать файловую систему на всем диске. Вместо этого необходимо сделать его на разделе на диске (который был бы чем-то как /dev/sdc1 вместо /dev/sdc). Если у Вас уже нет раздела, можно сделать это сначала. Раздел может (по существу) быть размером целого диска, если Вам нравится. Даже когда Вы только хотите один раздел на диске, все еще необходимо на самом деле сделать раздел. Много утилит и приложений (и люди!) не будет работать или будет вести себя странно, если Ваши файловые системы не будут на разделах.

Если Вы действительно знаете то, что Вы делаете, и Вы уверены, что хотите сделать файловую систему, которая не является частью никакого раздела, можно сделать, делают mkfs.ext3 сделайте это, не предлагая пользователю, при помощи -F флаг. Это почти всегда предпочтительно для моделирования интерактивного входа с каналом (это более просто, больше самодокументирования, и что, если что-то неожиданное происходит и вопрос - что-то еще, как устройство, уже смонтированное?). С другой стороны, в некоторых ситуациях (с некоторыми утилитами) можно найти, что необходимо передать по каналу y или yes к утилите, таким образом, это - хорошая техника для знания.

Из описания -F флаг в man mkfs.ext3:

Вынудите mke2fs создать файловую систему, даже если указанное устройство не является разделом на специальном устройстве блока, или если другие параметры не имеют смысла. Чтобы вынудить mke2fs создать файловую систему, даже если файловая система, кажется, используется или смонтирована (действительно опасная вещь сделать), эта опция должна быть указана дважды.

Так, можно использовать mkfs.ext3 -F /dev/sdc.

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

15
ответ дан 23 November 2019 в 06:12

Нет никакого -y опция для mkfs.ext3, можно проверить чтение ее страницы руководства (man mkfs.ext3). Однако существует программа, названная yes, который специально предназначен, чтобы сделать то, что Вы хотите:

NAME
   yes - output a string repeatedly until killed

Так, Вы могли работать:

 yes | mkfs.ext3  /dev/sdc

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

4
ответ дан 23 November 2019 в 06:12

Другие вопросы по тегам:

Похожие вопросы: