[英]Bash - Why doesn't sfdisk work in this script?
更新 :根据建议,我问了超级用户社区这个问题。 我告诉他们你打招呼;)
https://superuser.com/questions/1193808/why-doesnt-this-sfdisk-script-work
这是一个痛苦的过程。 也许有些简单的东西我不见了..?
我正在尝试创建一个脚本,以使用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
我究竟做错了什么!? 谢谢 :)
我找到了一个更好的方法: sgdisk
sgdisk --clear $blkdev
sgdisk --new=0:0:0 --typecode=0:0FC63DAF-8483-4772-8E79-3D69D8477DE4 $blkdev
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.