自从出现此问题以来,我已经进行了两次全新安装(不是为了修复此问题,因为一切似乎都正常)。Gparted 没有显示任何此类分区。我即将进行另一次全新安装,所以现在是时候纠正它了。关于从哪里开始,有什么建议吗?
marc@Thor:~$ blkid
/dev/sda1: UUID="1bd1fc27-31da-4515-b1b1-2d4acea80abe" TYPE="ext4"
/dev/sda5: UUID="e54014fa-3d67-42c0-9532-b5b5efc35e5b" TYPE="swap"
marc@Thor:~$
marc@Thor:~$ cat /proc/partitions
major minor #blocks name
8 0 312571224 sda
8 1 308659200 sda1
8 2 1 sda2
8 5 3909632 sda5
11 0 1048575 sr0
marc@Thor:~$
marc@Thor:~$ sudo blkid -p /dev/sda2
[sudo] password for marc:
/dev/sda2: PTTYPE="dos" PART_ENTRY_SCHEME="dos" PART_ENTRY_TYPE="0x5" PART_ENTRY_NUMBER="2" PART_ENTRY_OFFSET="617322494" PART_ENTRY_SIZE="7819266" PART_ENTRY_DISK="8:0"
marc@Thor:~$`
答案1
我猜想您的硬盘上有一个 Debian 映像(在文件中或以“原始”形式写入分区),并且它恰好存储在您/dev/sda2
现在的开始位置。由于/dev/sda2
基本上只是您的 (/dev/sda5
即交换空间)的占位符,因此可能是原始磁盘映像在磁盘上保留了足够多的内容,从而混淆了自动安装程序。
如果我是对的,解决方法是覆盖自动安装器看到的任何数据,这些数据让它认为 Debian 映像处于打开状态/dev/sda2
。此解决方案的问题在于,您可能执行的任何操作都存在潜在风险;您可能会意外地丢弃部分或全部数据。因此,如果您打算遵循我的建议,您必须这样做自担风险,和我强烈建议你请先备份您的重要用户数据!
除了这些注意事项之外,最简单、最容易做的事情就是确保 的/dev/sda2
第一个扇区中没有不必要的数据:
sudo dd if=/dev/zero of=/dev/sda2 bs=440 count=1
输入此命令确切地如下所示。任何选项的错误都可能导致严重的数据丢失。输入此命令后,重新启动并查看情况是否有所改善。如果没有,您可以尝试更长且更危险的程序:
- 在终端窗口中,键入
sudo swapoff
以禁用交换空间的使用。 - 使用 GParted、、
parted
或fdisk
、删除/dev/sda5
和/dev/sda2
。 - 创建新的
/dev/sda2
,但将其设为常规主分区,而不是扩展分区。如果使用fdisk
,则为其指定类型代码 0x82(Linux 交换)。如果使用parted
,则为其指定“文件系统类型”linux-swap
。 - 重新启动。这可确保您将使用新的分区表。
- 类型
sudo dd if=/dev/zero of=/dev/sda2
. Be额外额外超级小心使用此命令。特别注意of=
值——它应该是/dev/sda2
,不是/dev/sda
或任何其他值。此命令的目的是彻底清除 占用的磁盘空间/dev/sda2
。如果您不小心指定了错误的目标,您将清除它所包含的所有内容。 - 在 上创建新的交换空间
/dev/sda2
。- 如果您使用
fdisk
或parted
进行分区,请输入sudo mkswap /dev/sda2
。再次强调,请小心使用磁盘设备。 - 如果您使用 GParted 进行分区,最简单的方法是返回 GParted 来设置
/dev/sda2
交换空间。
- 如果您使用
- 输入
sudo blkid /dev/sda2
。这将显示与交换空间关联的 UUID 值。 - 编辑
/etc/fstab
并将与交换关联的 UUID 值从旧值更改为新值。 - 重启并测试。问题应该已经解决。
dd
从所有注意事项和警告中可以看出,此过程并非毫无风险。我建议您仅在熟悉和等低级工具的情况下才尝试此过程fdisk
。
可以想象,对分区进行一个小小的调整大小操作就可以解决问题;例如,您可以缩小/dev/sda1
1MiB,然后调整大小/dev/sda2
并/dev/sda5
填充该空间。但我不能保证这会起作用;可以想象,移动/调整大小会将错误的磁盘映像数据与其他所有内容一起移动。
答案2
我的解决方案最终是创建一个新的分区表作为重新安装的一部分。我从 orbit 中将其删除。