![如何在脚本中使用未分配的空间并相应地创建分区?](https://linux22.com/image/161748/%E5%A6%82%E4%BD%95%E5%9C%A8%E8%84%9A%E6%9C%AC%E4%B8%AD%E4%BD%BF%E7%94%A8%E6%9C%AA%E5%88%86%E9%85%8D%E7%9A%84%E7%A9%BA%E9%97%B4%E5%B9%B6%E7%9B%B8%E5%BA%94%E5%9C%B0%E5%88%9B%E5%BB%BA%E5%88%86%E5%8C%BA%EF%BC%9F.png)
我目前正在编写一个脚本,预计会对 /dev/sda 进行重新分区。它将从 USB 记忆棒运行一个操作系统,在我们的例子中是 /dev/sdb,所以我不会遇到“当前正在使用”的系统问题。
Number Start End Size File system Name Flags
17.4kB 1049kB 1031kB Free Space
1 1049kB 538MB 537MB fat32 boot, esp
2 538MB 1343MB 805MB linux-swap(v1)
3 1343MB 3221MB 1878MB ext4
3221MB 248GB 245GB Free Space
首先,我需要使用可用空间,然后将 sda3 的大小调整为更大的大小。然后我想创建一个大小相等的 sda4 和 sda5。
我当前的问题是,没有工具让我可以选择通过脚本自动分配可用空间,然后我可以在其中创建分区。
答案1
该问题的解决方法是使用以下命令:
parted /dev/sda print free Fix
显然,parted 的脚本模式不允许您“修复”到正确的大小。大多数其他工具也不允许您通过脚本自动化该操作,事实上,这是我找到的唯一解决方案。值得注意的是,这不是一个合适的解决方案,但它看起来是实现这一目标的唯一方法。