sudo fdisk /dev/sdX # X为磁盘标识符
# 使用fdisk重新创建分区表,保持与原分区相同参数
sudo gdisk /dev/sdX
# 输入'r'进入恢复菜单
# 选择'recovery & transformation options'
sudo apt install testdisk # Debian/Ubuntu
sudo yum install testdisk # RHEL/CentOS
sudo testdisk
# 按向导操作,可搜索丢失分区并恢复
sudo fsck -y /dev/sdXN # XN为具体分区,如sda1
sudo dumpe2fs /dev/sdXN | grep superblock # 查找备用超级块
sudo fsck -b 32768 /dev/sdXN # 使用备用超级块
sudo xfs_repair /dev/sdXN
sudo parted /dev/sdX
(parted) resizepart 分区号 新结束位置
sudo apt install cloud-utils # 安装growpart
sudo growpart /dev/sdX N # N为分区号
# 对于ext文件系统
sudo resize2fs /dev/sdXN
# 对于XFS文件系统
sudo xfs_growfs /挂载点
photorec - 文件内容恢复工具
sudo photorec /dev/sdXN
extundelete - ext文件系统删除恢复
sudo extundelete /dev/sdXN --restore-all
ddrescue - 磁盘克隆与数据抢救
sudo ddrescue /dev/sdX /path/to/image.img /path/to/logfile.log
定期备份分区表:
sudo sfdisk -d /dev/sdX > partition_table_backup.txt
使用LVM:逻辑卷管理可提供更灵活的分区管理
避免强制关机:特别是正在进行磁盘操作时
监控磁盘健康:
sudo smartctl -a /dev/sdX
使用UPS:防止突然断电导致磁盘损坏
希望这些解决方案能帮助您解决Linux磁盘分区问题。根据具体情况选择合适的方法,并在操作前确保已备份重要数据。