我不断收到此错误:
警告!!检测到不支持的GPT(GUID分区表)。使用GNU Parted
我想回到正常的MBR。我在这里找到了一些建议并做到了:
parted /dev/sda
mklabel msdos
quit
但是当我mklabel
选择该选项时,它会发出警告,提示我将丢失所有数据/dev/sda
。有没有办法在不格式化磁盘的情况下恢复正常的MBR?
我不断收到此错误:
警告!!检测到不支持的GPT(GUID分区表)。使用GNU Parted
我想回到正常的MBR。我在这里找到了一些建议并做到了:
parted /dev/sda
mklabel msdos
quit
但是当我mklabel
选择该选项时,它会发出警告,提示我将丢失所有数据/dev/sda
。有没有办法在不格式化磁盘的情况下恢复正常的MBR?
Answers:
您发布的链接看起来像一个非常难看的hack类型的解决方案。
但是,根据手册页,gdisk
用于转换MBR-> GPT,在“恢复和转换”菜单中也有一个选项(按r
获取),以转换GPT-> MBR。在g
关键的意愿:
将GPT转换为MBR并退出。此选项将尽可能多的分区转换为MBR形式,破坏GPT数据结构,保存新的MBR,然后退出。如果您尝试过GPT并发现MBR更适合您,请使用此选项。请注意,此函数最多可以生成四个主MBR分区或三个主分区以及尽可能多的逻辑分区。每个逻辑分区在紧接其第一个块之前至少需要一个未分配的块。
我会先尝试。
r
-> g
选项的gdisk手册页根本没有任何警告...
gdisk
手册页中的内容。
以往大部分的受访者是正确的,当他们说,你通常可以做你需要用GPT分区表的布局是什么,但因为是为希望使用MBR正当的理由,我想我会只回答你的问题,而不是假设你的问错了。
要摆脱GPT,您需要记住,使用这种格式时,有一个分区表写入驱动器的末尾,如果您只是尝试使用fdisk或不支持GPT的文件系统将其删除,分区表将保留在该表中。工具。您对parted所做的操作未解决此分区表。
要擦除GPT,您需要使用gdisk之类的东西。gdisk
在提示符下以root身份输入,然后告诉gdisk您要查看的设备(即/ dev / sd ??)。使用gdisk将保护性MBR写入磁盘只是为了确保您可以访问某些MBR数据结构。然后,您可以导航到“专家选项”部分(?
在不同的程序提示符处按,以查看在不同时间可用的选项),然后找到显示“关闭(销毁)GPT数据结构并退出”的选项。该程序将提示您进行确认,然后询问您是否要保留MBR结构。保留这个。
之后,它就像重启计算机一样简单(因为内核仍将使用旧的分区表,并且需要重新启动才能更新),然后启动fdisk并删除GPT分区的剩余部分。您仍然会看到与以前看到的有关使用GNU Parted的警告,但是这次可以忽略它,因为删除分区时它会消失。
这将在空白驱动器上为您提供MBR分区表系统,您可以在其上重新安装OS。如果您尝试使用现有分区来执行此操作,则它会变得相当复杂,在某些情况下甚至是不可能的,因此,我建议您仅备份数据并以这种方式进行操作。
使用 gdisk /dev/sda
注意: /dev/sda
对于询问此问题但将其更改为您的驱动器名称的人而言。
一旦进入gdisk,请使用:
x extra functionality (experts only)
然后,当您键入p
以查看所有选项时,您将看到以下内容:
Expert command (? for help): ?
a set attributes
c change partition GUID
d display the sector alignment value
e relocate backup data structures to the end of the disk
g change disk GUID
h recompute CHS values in protective/hybrid MBR
i show detailed information on a partition
l set the sector alignment value
m return to main menu
n create a new protective MBR
o print protective MBR data
p print the partition table
q quit without saving changes
r recovery and transformation options (experts only)
s resize partition table
t transpose two partition table entries
u Replicate partition table on new device
v verify disk
w write table to disk and exit
z zap (destroy) GPT data structures and exit
? print this menu
使用 z
Expert command (? for help): z
About to wipe out GPT on /dev/xvdf. Proceed? (Y/N): Y
GPT data structures destroyed! You may now partition the disk using fdisk or
other utilities.
Blank out MBR? (Y/N): Y
这在大多数情况下应该有效。您知道当分区大于2TB或分区超过15个时,不能使用MBR。
parted /dev/sdX p
parted /dev/sdX u B p
(以字节为单位显示大小),因此您知道如何最终重新创建分区布局。使用手机从两个parted
输出端拍摄照片。gdisk
更改GPT。为此,您应该使用活动磁盘grml
。如果您做错了什么,请重新启动并重试。
只要您不将任何数据写入磁盘,就不会丢失任何数据。请记住,您的手机上仍保留所有分区布局,因此,如果确实需要,您可以重新创建原始GPT。
万一您真的testdisk
搞砸了并且不拍照,请尝试辨别分区边界。但是,一旦您的布局异常出色,就不要再花任何钱了。
关于缩小分区大小的调整工作,鸟瞰图:
resize2fs -M dev/sdX
)来说很容易,但是对于XFS来说是不可能的,因为它不能缩小。尝试此类特技之前,请先了解您正在使用的Google。lvreduce -L 20G /dev/mapper/<VG>-<LV>
)pvresize --setphysicalvolumesize 25G /dev/sdX
是要走的路。这里提到的所有提到的元素的大小如下:文件系统<LV <PV <分区,如果在下次重新启动后情况并非如此,您将看到必须进行FS检查。不要这样做,只需再次重新启动到活动磁盘,然后进行调整即可。我保证,如果您在那里修复问题,系统将再次启动。
为了能够完成所有这些操作,如果您具有PARTITION + LUKS + LVM + FILESYSTEM,则以下是一些有关如何从外壳执行此操作的提示:
df -h
是您的朋友,用于在挂载分区时显示文件系统大小lsblk
并且lsblk -f
是您显示分区的朋友cryptsetup open /dev/sdX asdf
,输入密码,密码将在之后可用/dev/mapper/asdf
。加密容器不需要调整大小。(当然,如果您没有加密的分区,请跳过此步骤。)vgchange -aay
激活所有逻辑卷,以便您可以使用它们。mkdir asdf; mount /dev/mapper<VG>-<LV> asdf
然后df -h
在调整大小之前检查文件系统的大小。umount asdf
因此将其再次卸载。resize2fs -M /dev/mapper/<VG>-<LV>
。mount /dev/mapper/<VG>-<LV> asdf; df -h
检查您的文件系统还有多大。使事情变得比实际需要更大,因此您不必经常重启。
要轻松辨别什么是什么使用LVM,总是用你的主机名作为名称为VG和挂载点(root
,swap
,var
创建你的LVM设置时,...)的LV,如果你没有已经这样做了。这是一般性提示,不需要执行上述任何步骤。
GParted只是通过以下方式为我完成了工作(在Kali Linux USB Live v2.1 上进行了测试):
Device --> Create Partition Tablet --> Type MSDOS
首先删除所有分区。