因此,当我运行一些测试时,我一直在格式化和重新格式化几张 SD 卡,并且我需要经常重新格式化,但是每次我在 fdisk 中插入不同的卡时都会报告旧卡的容量。
例如,假设我有一张 128GB、64GB 和 32GB 的卡。如果我使用fdisk格式化64GB卡,然后尝试格式化128GB,fdisk将显示该卡有64GB,直到我创建分区表为止,在写入之前将其打印出来,然后发现一半的容量消失了。通过退出并再次运行 fdisk 可以缓解这种情况,此时它将报告正确的大小。但现在,如果我只是格式化 64GB 卡并插入 32GB,然后 fdisk 返回,fdisk: cannot open /dev/sdb: Input/output error
我必须退出 fdisk 并再次运行 fdisk,此时它将报告正确的容量。
现在通常这并不是一个真正的问题,但因为我要重新格式化这些卡相当多,所以我想通过创建一个为我做所有事情的脚本来自动执行此操作,但错误大小的报告阻止了我自动执行此任务。正在重新格式化的卡也没有以一致的顺序/顺序插入,因此我无法考虑并解释这一点。有没有办法清除 fdisk 的缓存或类似的东西,以便每次插入卡时它都会读取卡的大小,而不是读取之前插入的 SD 卡的大小?