运维之记录一次磁盘修复

前言

从15年初把笔记本的操作系统从windows换成Ubuntu14.04,已经有3年了,虽然只有浏览器。但是学习效果非常好,年初自动升级到了Ubuntu16.04。上个月系统启动之后无法进入桌面,因为工作忙一直放放着。今天终于修复好了。

步骤

1. 通过sudo fdisk -l 查看所有磁盘,看磁盘是否在
Disk /dev/loop0:86.9 MiB,91099136 字节,177928 个扇区
单元:扇区 / 1 * 512 = 512 字节
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节


Disk /dev/loop1:140 MiB,146841600 字节,286800 个扇区
单元:扇区 / 1 * 512 = 512 字节
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节


Disk /dev/loop2:3.7 MiB,3887104 字节,7592 个扇区
单元:扇区 / 1 * 512 = 512 字节
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节


Disk /dev/loop3:21 MiB,22003712 字节,42976 个扇区
单元:扇区 / 1 * 512 = 512 字节
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节


Disk /dev/loop4:14.5 MiB,15196160 字节,29680 个扇区
单元:扇区 / 1 * 512 = 512 字节
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节


Disk /dev/loop5:12.2 MiB,12804096 字节,25008 个扇区
单元:扇区 / 1 * 512 = 512 字节
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节


Disk /dev/loop6:86.6 MiB,90759168 字节,177264 个扇区
单元:扇区 / 1 * 512 = 512 字节
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节


Disk /dev/loop7:140.9 MiB,147722240 字节,288520 个扇区
单元:扇区 / 1 * 512 = 512 字节
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节


Disk /dev/sda:59.6 GiB,64023257088 字节,125045424 个扇区
单元:扇区 / 1 * 512 = 512 字节
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:dos
磁盘标识符:0x000d8fa0

设备       启动      起点      末尾      扇区  大小 Id 类型
/dev/sda1  *         2048 108382207 108380160 51.7G 83 Linux
/dev/sda2       108384254 125044735  16660482    8G  5 扩展
/dev/sda5       108384256 125044735  16660480    8G 82 Linux swap / Solaris


Disk /dev/sdb:698.7 GiB,750156374016 字节,1465149168 个扇区
单元:扇区 / 1 * 512 = 512 字节
扇区大小(逻辑/物理):512 字节 / 4096 字节
I/O 大小(最小/最佳):4096 字节 / 4096 字节
磁盘标签类型:dos
磁盘标识符:0x740aaf9a

设备       启动      起点      末尾      扇区  大小 Id 类型
/dev/sdb1            2048 209717247 209715200  100G 83 Linux
/dev/sdb2       209717248 629147647 419430400  200G 83 Linux

#####. 查看分区的文件系统 sudo parted -l。不同文件系统需要不同的修复方式

Model: ATA TOSHIBA THNSNF06 (scsi)
磁盘 /dev/sda: 64.0GB
Sector size (logical/physical): 512B/512B
分区表:msdos
Disk Flags: 

数字  开始:  End     大小    类型      文件系统        标志
 1    1049kB  55.5GB  55.5GB  primary   ext4            启动
 2    55.5GB  64.0GB  8530MB  extended
 5    55.5GB  64.0GB  8530MB  logical   linux-swap(v1)


Model: ATA WDC WD7500BPVT-2 (scsi)
磁盘 /dev/sdb: 750GB
Sector size (logical/physical): 512B/4096B
分区表:msdos
Disk Flags: 

数字  开始:  End    大小   类型     文件系统  标志
 1    1049kB  107GB  107GB  primary  ext4
 2    107GB   322GB  215GB  primary  ext4

4. 执行 sudo fsck.ext4 -c /dev/sdb1 进行修复。主要看是fsck支持那些文件系统
执行失败
xxxx@zzz-zzzzzz:/$ sudo fsck.ext4 -c /dev/sdb1
e2fsck 1.44.1 (24-Mar-2018)
fsck.ext4: 尝试读取文件系统块的操作过早结束 尝试打开 /dev/sdb1 时
分区长度为零吗?

4. 使用 sudo e2fsck /dev/sdb 进行修复,会提供一定的提示。
5. 执行sudo e2fsck -b 8193 /dev/sdb1 或 sudo e2fsck -b 32768 /dev/sdb1。 但是这个明明的交互操作,我不是太理解。所以造成了我一些文件的无法修复。丢失了。

总结

  1. 把重要的数据,通过git同步,远程服务上去。可以写一个自动化脚本。
  2. 文件丢失,修复很麻烦。如果不懂修复建议使用云服务器
  3. 把文件,资源做好备份。

猜你喜欢

转载自my.oschina.net/u/1261452/blog/1914431
今日推荐