CentOS7은 비상 모드로 부팅됩니다. 발견된 오류는 다음과 같습니다journalctl -xb
sd 0:0:0:0: [sda] Asking for cache data failed
sd 0:0:0:0: [sda] Assuming drive cache: write through
gspca_vc032x: reg_r err -32
bcma: bus0: No SPROM available
EXT4-fs (sdb1): VFS: Can't find ext4 filesystem
Failed to mount /borg
Failed to mount /var
fstab에 /var가 있으므로 /var에 마운트 지점이 있습니다.
/dev/nvmeVg/var /var ext4 defaults 0 0
직전에는 크기를 줄여서 할 nvmeVg-var
수 있는 크기를 늘릴 수 있었습니다. nvmeVg-home
그런 다음 파일 시스템의 크기를 조정하고 정상적인 재부팅을 예상했지만 패닉 모드에 들어갔습니다. 명령은
lvreduce -L44G /dev/mapper/nvmeVq-var
lvextend -L181G /dev/mapper/nvmeVg-home
resize2fs /dev/mapper/nvmeVg-home
│ ├─nvmeVg-var 254:0 0 44G 0 lvm
│ └─nvmeVg-home 254:1 0 181G 0 lvm
달려가서 sudo e2fsck -C0 /dev/mapper/nvmeVg-var
얻었어/dev/mapper/nvmeVg-var is in use
나도 시도했다
[root@localhost-live DataCabinet]# e2fsck -C0 -f /dev/mapper/nvmeVg-var
e2fsck 1.45.6 (20-Mar-2020)
The filesystem size (according to the superblock) is 32768000 blocks
The physical size of the device is 11534336 blocks
Either the superblock or the partition table is likely to be corrupt!
Abort<y>? no
Pass 1: Checking inodes, blocks, and sizes
Error reading block 11534368 (Invalid argument) while getting next inode from scan. Ignore error<y>? yes
Force rewrite<y>? yes
Error reading block 11534369 (Invalid argument) while getting next inode from scan. Ignore error<y>? yes
Force rewrite<y>? yes
Error reading block 11534370 (Invalid argument) while getting next inode from scan. Ignore error<y>? no
Error while scanning inodes (2759055): Can't read next inode
Error writing block 11534368 (Invalid argument). Ignore error<y>? yes
Error writing block 11534369 (Invalid argument). Ignore error<y>? yes
e2fsck: aborted
백업을 찾았습니다 /var/www
이제 다음 단계는 복구 전에 파일 시스템 크기를 조정하거나 파일 시스템을 복구해 보는 것입니다. 후자는 나에게 의미가 있습니다.
[root@localhost-live snapshots]# fdisk -l /dev/mapper/nvmeVg-var
Disk /dev/mapper/nvmeVg-var: 44 GiB, 47244640256 bytes, 92274688 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
[root@localhost-live snapshots]# fdisk /dev/mapper/nvmeVg-var
Welcome to fdisk (util-linux 2.36.2).
Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.
The device contains 'ext4' signature and it will be removed by a write command. See fdisk(8) man page and --wipe option for more details.
Device does not contain a recognized partition table.
Created a new DOS disklabel with disk identifier 0x26e63ccd.
답변1
실행하기 전에 a resize2fs /dev/mapper/nvmeVg-var 44G
또는 이에 상응하는 작업을 수행하지 않았다면 lvreduce -L44G /dev/mapper/nvmeVg-var
파일 시스템의 꼬리 부분을 잘라서 파일 시스템을 확실히 손상시킨 것입니다.
lvmcfgrestore
그리고 다른 파일 시스템을 확장했으므로 표준 백업을 사용하여 이전 구성으로 롤백하는 것도 /etc/lvm/backup
좋은 옵션이 아닐 수 있습니다. /home
동일한 방식으로 시스템이 손상될 가능성이 높기 때문입니다.
/var
최근 백업에서 복원하는 것이 좋은 해결책이 될 것입니다. 그런데 당신에겐 그런 게 없을 것 같은데요, 그렇죠?
e2fsck -C0 -f /dev/mapper/nvmeVg-var
파일 시스템이 기본 장치보다 크다는 끔찍한 오류 메시지를 실행하고 수락해야 할 수도 있습니다 . 그런 다음 실수로 수행한 꼬리 절단 프로세스를 완료하고 파일 시스템 크기를 현재 LV 크기와 일치하는 값으로 설정합니다.