标签: fdisk

无需重启即可重新读取分区表?

有时,在调整磁盘分区大小或以其他方式处理磁盘分区时,cfdi​​sk 会说:

Wrote partition table, but re-read table failed. Reboot to update table.

(其他分区工具也会发生这种情况,所以我认为这是 Linux 问题而不是 cfdisk 问题。)为什么会这样,为什么它只偶尔发生,我该怎么做才能避免它?

注意:请假设我实际编辑的分区都没有打开、安装或以其他方式使用。


更新:

cfdisk 用于ioctl(fd, BLKRRPART, NULL)告诉 Linux 重新读取分区表。目前推荐的其他两个工具 ( hdparm -z DEVICE, sfdisk -R DEVICE) 的作用完全相同。partprobe DEVICE另一方面,该命令似乎使用了一个名为 BLKPG 的新 ioctl,这可能会更好;我不知道。(如果 BLKPG 失败,它也会回退到 BLKRRPART。)

BLKPG 似乎是一个“这个分区已经改变;这是新的大小”操作,它看起来像是partprobe在通过的设备上的所有分区上单独调用它,所以如果单个分区未使用,它应该可以工作。但是,我还没有机会尝试。

linux partition fdisk

78
推荐指数
8
解决办法
13万
查看次数

从命令行删除所有分区

如何从 Linux(特别是 Ubuntu)的命令行删除设备上的所有分区?我尝试查看 fdisk,但它显示了一个交互式提示。我正在寻找一个命令,我可以提供一个设备路径(例如 /dev/sda),它会删除 ext4、linux-swap 以及它找到的任何其他分区。本质上,这与我打开 GParted 并手动选择和删除所有分区是一样的。这看起来相当简单,但不幸的是,我无法通过谷歌找到任何东西。

linux ubuntu partition gparted fdisk

52
推荐指数
7
解决办法
19万
查看次数

如何使用脚本从命令行重置硬盘(删除 Mbr 和删除分区)而无需重新启动?

要从干净状态开始,我需要从命令行将硬盘重置为空状态。

这与运行擦除实用程序无关,不必覆盖数据。

这个问题与Deleting All Partitions From the Command Line非常相似

那里的解决方案效果很好,

dd if=/dev/zero of=/dev/sda bs=512 count=1 conv=notrunc
Run Code Online (Sandbox Code Playgroud)

但是如果我想使用这样一个被覆盖的磁盘,我会收到设备仍在使用中的错误。

root@grml ~ # blockdev --rereadpt /dev/sda
BLKRRPART: Device or resource busy
Run Code Online (Sandbox Code Playgroud)

或者

root@grml ~ # partprobe
Error: Partition(s) 2, 3 on /dev/sda have been written, but we have been unable to inform the kernel of the change, probably because it/they are in use.  As a result, the old partition(s) will remain in use.  You should reboot now before making further changes. …
Run Code Online (Sandbox Code Playgroud)

linux partition debian fdisk parted

12
推荐指数
2
解决办法
6万
查看次数

以非交互方式创建一个具有所有可用磁盘大小的分区

这对我来说很恶心,但它有效:

echo -e "n\np\n1\n\n\nt\nc\na\n1\nw" | fdisk /dev/sdb
Run Code Online (Sandbox Code Playgroud)

我想知道一种更谨慎或更优雅的方式来实现这一点。在执行此任务之前,整个引导记录和分区表都已清零,因此我们可以相信分区 1 可用。

linux partition fdisk

11
推荐指数
2
解决办法
9115
查看次数

Linux 和 Linux LVM 分区类型有什么区别?

Fdisk 显示多种分区类型。选择 83) Linux 和 8e) Linux LVM 有什么区别?

选择 83) Linux 也适用于使用 LVM,即使在 /dev/sdb 上创建物理卷而没有分区表也能正常工作。

在 fdisk 中选择分区类型真的很重要吗?选择 Linux 或 Linux LVM 作为分区类型有什么区别?

[root@tst-01 ~]# fdisk /dev/sdb

WARNING: DOS-compatible mode is deprecated. It's strongly recommended to
         switch off the mode (command 'c') and change display units to
         sectors (command 'u').

Command (m for help): l

 0  Empty           24  NEC DOS         81  Minix / old Lin bf  Solaris
 1  FAT12           39  Plan 9          82  Linux swap / So c1  DRDOS/sec …
Run Code Online (Sandbox Code Playgroud)

partition redhat lvm fdisk

11
推荐指数
1
解决办法
1万
查看次数

Resizing partition fdisk fails with invalid argument

I recently resized a VPS from a 50GB SSD to a 300GB SSD through my hoster's control panel. I now am trying to resize my main partition with fdisk to be able to use all the new space. However, fdisk gives me a warning upon starting:

GPT PMBR size mismatch (104857599 != 629145599) will be corrected by w(rite).
GPT PMBR size mismatch (104857599 != 629145599) will be corrected by w(rite).
Run Code Online (Sandbox Code Playgroud)

It seems obvious that it's a sixfold of the previous …

partition fdisk arch-linux gpt

10
推荐指数
1
解决办法
3万
查看次数

硬件 RAID 阵列扩展后 fdisk 不允许我使用额外的可用扇区

我们在 Dell R720xd 上有一个约 18TB 的大型硬件 raid 阵列。目前 RAID5 阵列由 6x4TB 组成,我需要扩展它。

步骤1 扩展硬件raid 阵列。

如果您安装了戴尔管理工具,那就足够简单了。

omconfig storage vdisk action=reconfigure controller=0 vdisk=1 raid=r5 pdisk=0:1:0,0:1:1,0:1:3,0:1:3,0:1:4,0:1:5,0:1:8,0:1:9
Run Code Online (Sandbox Code Playgroud)

(新磁盘是最后两个,可以使用omreport工具确认)一切都很好,虽然需要一段时间,我能够确认阵列已经扩展..

% omreport storage vdisk controller=0 vdisk=1

Virtual Disk 1 on Controller PERC H710P Mini (Embedded)

Controller PERC H710P Mini (Embedded)
ID                                : 1
Status                            : Ok
Name                              : bak
State                             : Ready
Hot Spare Policy violated         : Not Assigned
Encrypted                         : No
Layout                            : RAID-5
Size                              : 26,078.50 GB (28001576157184 bytes)
...
Device …
Run Code Online (Sandbox Code Playgroud)

linux raid debian dell fdisk

10
推荐指数
1
解决办法
1910
查看次数

fdisk - 单行分区

您可以在一行中使用 fdisk 命令在 USB 磁盘中创建一个分区吗?

fdisk 命令本质上是交互式的,但我想使用 fdisk 命令在一行中自动创建分区。

linux fdisk command

9
推荐指数
2
解决办法
3万
查看次数

e2label 超级块中的坏幻数?

这是 fdisk 的输出:

[root@ns1 ~]# fdisk -l

Disk /dev/sda: 21.4 GB, 21474836480 bytes
255 heads, 63 sectors/track, 2610 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *           1          13      104391   83  Linux
/dev/sda2              14         268     2048287+  82  Linux swap / Solaris
/dev/sda3             269        2611    18818810   83  Linux
Run Code Online (Sandbox Code Playgroud)

但是当我尝试使用 e2label 时,我收到以下结果:

[root@ns1 ~]# e2label /dev/sda
e2label: Bad magic number in super-block while trying to open /dev/sda
Couldn't find valid filesystem …
Run Code Online (Sandbox Code Playgroud)

partition fdisk

9
推荐指数
2
解决办法
3万
查看次数

使用 fdisk:以 MB 或 GB 等单位显示大小

做 afdisk -l 是一个很方便的命令,但是如何让 fidsk 以 MB 或 GB 等单位打印分区大小?

fdisk

9
推荐指数
1
解决办法
4万
查看次数

标签 统计

fdisk ×10

partition ×7

linux ×6

debian ×2

arch-linux ×1

command ×1

dell ×1

gparted ×1

gpt ×1

lvm ×1

parted ×1

raid ×1

redhat ×1

ubuntu ×1