我们正在使用am335x基于定制板,我们有多媒体卡作为辅助存储设备。现在要列出分区,我们使用parted
实用程序,但在而不是parted
打印分区大小。MB
MiB
有没有办法要求以单位而不是单位parted
打印分区大小?MiB
MB
您可以参考下面的输出,其中显示分开的打印尺寸在 或 中,KB
但MB
不在KiB
或中MiB
。
# parted --list
Model: MMC MMC04G (sd/mmc)
Disk /dev/mmcblk0: 3842MB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Disk Flags:
Number Start End Size File system Name Flags
1 131kB 262kB 131kB
2 262kB 393kB 131kB
3 393kB 524kB 131kB
4 524kB 1573kB 1049kB
5 1573kB 2621kB 1049kB
6 2621kB 3146kB 524kB
7 3146kB 3277kB 131kB
8 3277kB 8520kB 5243kB
9 8520kB 13.8MB 5243kB
10 13.8MB 19.0MB 5243kB
11 19.0MB 19.3MB 262kB
12 19.3MB 19.5MB 262kB
13 19.5MB 19.8MB 262kB
14 21.0MB 32.5MB 11.5MB
15 33.6MB 243MB 210MB ext4
16 243MB 453MB 210MB ext4
17 453MB 558MB 105MB ext4
18 558MB 621MB 62.9MB ext4
19 621MB 830MB 210MB ext4
20 830MB 867MB 36.7MB ext4
21 867MB 3827MB 2960MB ext4
答案1
有没有办法要求以单位而不是单位
parted
打印分区大小?MiB
MB
是的:
parted <<<'unit MiB print all'
或者
printf %s\\n 'unit MiB print list' | parted
或者
parted <<\IN
unit MiB print list
IN
交互模式相同:启动parted
然后输入unit MiB print list
答案2
你可能会认为这很简单,比如
parted unit MiB --list
但这行不通。我能得出的最接近的等价物是这样的,尽管find...
如果您碰巧手头有设备,则将其替换为明确的设备列表并没有什么问题
for dev in $(find /dev/??? /dev/mmcblk* -maxdepth 0 -type b 2>/dev/null); do parted "$dev" unit MiB print; done
答案3
文档parted
有点混乱,但是,正如最后的注释指出的那样,下面的方法应该可以很好地工作。sudo
在适当的地方使用。
查找所有磁盘:fdisk -l
或parted -l
。
打印MiB中的所有分区,/dev/mmcblk0
您感兴趣的磁盘在哪里:
parted /dev/mmcblk0 unit MiB print
如上所述,还打印未分区的空间:
parted /dev/mmcblk0 unit MiB print free
列出的概要man parted
是这样的:
parted [options] [device [command [options...]...]]
device
在对其发出命令时, 是不可选的。