[英]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.