부팅 2 비상 모드: /Var를 탑재할 수 없습니다.

부팅 2 비상 모드: /Var를 탑재할 수 없습니다.

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 크기와 일치하는 값으로 설정합니다.

관련 정보