在分区调整大小期间调用oom-killer后如何恢复?

Cha*_*ats 3 partitioning boot gparted data-recovery

当发生某些事情时,我正在我的“主”(root?但不是引导)分区上运行一个长时间运行的分区调整大小,gparted。系统日志报告“gpartedbin 调用了 oom-killer”(这很奇怪,因为除了gparted,但无论如何......)。如何让我的系统进入稳定状态?

一些细节:

  • 我曾经(现在仍然)在 USB 驱动器上运行 Ubuntu 14.04,以便至少在某种程度上安全地运行 gparted。
  • 但是,我通常从“主”SSD 硬盘的“引导”分区引导 Ubuntu 14.04。
  • 被中断的操作(运行几个小时后)是从 “主”分区(与正常引导分区和交换分区在同一个 SSD 驱动器上)的前面
  • 我的首要任务是确保系统处于稳定和一致的状态,即使我在没有外部 USB 的情况下重新启动。第二个优先事项是恢复已安装驱动程序的状态(特别是 NVidia 驱动程序,它不是开源版本)。
  • 我没有创建备份,因为我不关心我在这台计算机上的任何数据。但是重新安装pip, numpy,tensorflow等将是一个小麻烦。
  • 当我运行时gparted,它看起来(据我所知)与我开始调整大小/移动操作之前完全一样。下面是输出printparted提示:

    (parted) print                                                            
    Model: ATA PNY CS1311 240GB (scsi)
    Disk /dev/sda: 240GB
    Sector size (logical/physical): 512B/512B
    Partition Table: gpt
    
    Number  Start   End     Size    File system     Name  Flags
     1      1049kB  3146kB  2097kB                        bios_grub
     2      3146kB  203MB   200MB   ext4
     3      203MB   10.2GB  10.0GB  linux-swap(v1)
     4      10.2GB  239GB   229GB   ext4
     5      239GB   240GB   1074MB  ext4
    
    Run Code Online (Sandbox Code Playgroud)

我尝试调整大小的分区是/dev/sda4. * 我试过运行sudo fdisk -l,主要是抱怨fdisk不支持 GPT。

我可以根据要求提供其他信息。

我该如何进行?

Rod*_*ith 5

您的最佳选择依次是:

  1. 从备份中恢复数据。
  2. fsck在分区上使用。这不太可能奏效,但它比下一个选项容易得多。但是请注意,很可能fsck会使情况变得更糟,因此如果分区保存重要数据,我建议进行低级别备份(使用dd在继续执行第 3 步之前进行到另一个物理设备)。
  3. 使用PhotoRec尝试恢复单个文件。这很可能是一个漫长而乏味的过程,不会将系统恢复到可引导状态;你只会用它来恢复你的个人数据。
  4. 重新安装。

调整分区大小会带来灾难性后果的小风险。正如您所发现的,当这些操作出错时,它们通常会变得非常糟糕。建议在调整分区大小之前进行备份。

  • 你怎么知道`fsck`是否有效?你运行它,然后你尝试启动。(当然,它可能会修复文件系统,但会使系统无法启动,在这种情况下,[Boot Repair](https://help.ubuntu.com/community/Boot-Repair) 可能会完成工作。) (2认同)