You are not logged in.
Pages: 1
hi,
i've been a bit to fast in attempt to shrink my home and enlarge my root partition.
lvreduce -L -10G /mapper/home
so my problem now is that the file system thinks it is 10G bigger than the volume.
i tried to restore my /mapper/home on a dd disk clone:
resize2fs
didn't let me without running e2fsck before
e2fsck -b <backupsuperblocks1..n>
didn't like the superblocks promted by: mke2fs -n
vgcfgrestore
the /etc/lvm/archive on the /root partition
mke2fs -S
nothing worked..
now i thought i might just format the /home and copy the files back from my backup.
so i did:
mkfs.ext4 /dev/mapper/home
/root and /home seem to be clear.
if i try to boot from the harddisk (with the modified dd copy) the bootsplash tells me
/dev/mapper/root clean, 423512/983040 files, 3575153/3932150 blocks
[FAILED] Failed to start File System Check on /dev/disk/by-uuid/<uuid>.
[DEPEND] dependency failed for /home
[DEPEND] dependency failed for Local File Systems.
...
You are in emergency mode ...
and i can't do anything except for hitting control-d.
this is by the way the same error that i have when trying to boot with my lvreduce stupidity.
here are some facts:
root@archiso # lsblk
sdb 8:16 0 931.5G 0 disk
├─sdb1 8:17 0 550M 0 part
└─sdb2 8:18 0 476.4G 0 part
└─cryptdisk 254:0 0 476.4G 0 crypt
├─mapper-swap 254:1 0 8G 0 lvm
├─mapper-root 254:2 0 25G 0 lvm
└─mapper-home 254:3 0 443.4G 0 lvm
root@archiso # pvscan
[J --- Physical volume ---
PV Name /dev/mapper/cryptdisk
VG Name mapper
PV Size <476.40 GiB / not usable <1.32 MiB
Allocatable yes (but full)
PE Size 4.00 MiB
Total PE 121958
Free PE 0
Allocated PE 121958
PV UUID C9T02C-IeKC-7pFs-FRLv-A7vM-Jpw3-gab8P3
root@archiso # lvscan
--- Logical volume ---
LV Path /dev/mapper/swap
LV Name swap
VG Name mapper
LV UUID 0e5hZ6-tGOP-umil-6FYS-LdLR-TlSf-1NUZWJ
LV Write Access read/write
LV Creation host, time archiso, 2018-02-05 20:50:52 +0000
LV Status available
# open 0
LV Size 8.00 GiB
Current LE 2048
Segments 1
Allocation inherit
Read ahead sectors auto
- currently set to 256
Block device 254:1
--- Logical volume ---
LV Path /dev/mapper/root
LV Name root
VG Name mapper
LV UUID cxK2f9-5ifF-kfVr-p3Ck-Ty9d-T5NC-rOJ5X7
LV Write Access read/write
LV Creation host, time archiso, 2018-02-05 20:51:19 +0000
LV Status available
# open 0
LV Size 25.00 GiB
Current LE 6400
Segments 2
Allocation inherit
Read ahead sectors auto
- currently set to 256
Block device 254:2
--- Logical volume ---
LV Path /dev/mapper/home
LV Name home
VG Name mapper
LV UUID VX9zOn-efob-2TE9-owlA-chy6-t1pE-F2vuRq
LV Write Access read/write
LV Creation host, time archiso, 2018-02-05 20:52:03 +0000
LV Status available
# open 0
LV Size <443.40 GiB
Current LE 113510
Segments 1
Allocation inherit
Read ahead sectors auto
- currently set to 256
Block device 254:3
any suggestions how i could get my /home back?
thanks!
Last edited by whomen (2019-11-08 21:31:38)
Offline
it's good if you have a backup
if this LVM is on SSD, and cryptdisk has allowdiscards, and you have issue_discards=1 in your lvm.conf then lvreduce would have deleted (discard/TRIM) those 10G right away, that damage is permanent and cannot be recovered
otherwise lvextend (if LV was unfragmented and no other LV created since reduce) or restoring from LVM config backup should have helped
mkfs.ext4 also discards the entire partition so all data is gone after mkfs (if this is on SSD etc. as above)
mkfs gives a new random UUID which you have to update in your /etc/fstab. otherwise tune2fs -U $olduuid to set it to the old UUID.
for login as $user to work you have to re-create the homedir too, possibly from /etc/skel with proper owner and permissions
Last edited by frostschutz (2019-11-07 20:31:17)
Offline
thanks for the quick reply!
i gathered the /home uuid
blkid -o list
and changed it in the fstab but still the same error when booting..
or did i look for the wrong uuid?
this is the backup vg:
mapper {
id = "iGHLq3-EVLU-bcYm-tVfp-sSBv-pyUM-CfnwAz"
seqno = 4
format = "lvm2" # informational
status = ["RESIZEABLE", "READ", "WRITE"]
flags = []
extent_size = 8192 # 4 Megabytes
max_lv = 0
max_pv = 0
metadata_copies = 0
physical_volumes {
pv0 {
id = "C9T02C-IeKC-7pFs-FRLv-A7vM-Jpw3-gab8P3"
device = "/dev/mapper/mapper" # Hint only
status = ["ALLOCATABLE"]
flags = []
dev_size = 999082639 # 476.4 Gigabytes
pe_start = 2048
pe_count = 121958 # 476.398 Gigabytes
}
}
logical_volumes {
swap {
id = "0e5hZ6-tGOP-umil-6FYS-LdLR-TlSf-1NUZWJ"
status = ["READ", "WRITE", "VISIBLE"]
flags = []
creation_time = 1517863852 # 2018-02-05 21:50:52 +0100
creation_host = "archiso"
segment_count = 1
segment1 {
start_extent = 0
extent_count = 2048 # 8 Gigabytes
type = "striped"
stripe_count = 1 # linear
stripes = [
"pv0", 0
]
}
}
root {
id = "cxK2f9-5ifF-kfVr-p3Ck-Ty9d-T5NC-rOJ5X7"
status = ["READ", "WRITE", "VISIBLE"]
flags = []
creation_time = 1517863879 # 2018-02-05 21:51:19 +0100
creation_host = "archiso"
segment_count = 1
segment1 {
start_extent = 0
extent_count = 3840 # 15 Gigabytes
type = "striped"
stripe_count = 1 # linear
stripes = [
"pv0", 2048
]
}
}
home {
id = "VX9zOn-efob-2TE9-owlA-chy6-t1pE-F2vuRq"
status = ["READ", "WRITE", "VISIBLE"]
flags = []
creation_time = 1517863923 # 2018-02-05 21:52:03 +0100
creation_host = "archiso"
segment_count = 1
segment1 {
start_extent = 0
extent_count = 116070 # 453.398 Gigabytes
type = "striped"
stripe_count = 1 # linear
stripes = [
"pv0", 5888
]
}
}
}
}
this is the lvscan output now
--- Logical volume ---
LV Path /dev/mapper/swap
LV Name swap
VG Name mapper
LV UUID 0e5hZ6-tGOP-umil-6FYS-LdLR-TlSf-1NUZWJ
LV Write Access read/write
LV Creation host, time archiso, 2018-02-05 20:50:52 +0000
LV Status available
# open 0
LV Size 8.00 GiB
Current LE 2048
Segments 1
Allocation inherit
Read ahead sectors auto
- currently set to 256
Block device 254:1
--- Logical volume ---
LV Path /dev/mapper/root
LV Name root
VG Name mapper
LV UUID cxK2f9-5ifF-kfVr-p3Ck-Ty9d-T5NC-rOJ5X7
LV Write Access read/write
LV Creation host, time archiso, 2018-02-05 20:51:19 +0000
LV Status available
# open 1
LV Size 25.00 GiB
Current LE 6400
Segments 2
Allocation inherit
Read ahead sectors auto
- currently set to 256
Block device 254:2
--- Logical volume ---
LV Path /dev/mapper/home
LV Name home
VG Name mapper
LV UUID VX9zOn-efob-2TE9-owlA-chy6-t1pE-F2vuRq
LV Write Access read/write
LV Creation host, time archiso, 2018-02-05 20:52:03 +0000
LV Status available
# open 0
LV Size <443.40 GiB
Current LE 113510
Segments 1
Allocation inherit
Read ahead sectors auto
- currently set to 256
Block device 254:3
the error after the [failed]
see 'systemctl status "systemd-fsck@dev-disk-by\\x2duuid-90cd1836... blabla
probably i have to tell systemd the new uuid as well?
---
EDIT:
now i tried to tune2fs /home with the old uuid. still the same error..
Last edited by whomen (2019-11-07 21:28:03)
Offline
manual fsck works:
fsck from util-linux 2.31
e2fsck 1.43.7 (16-Oct-2017)
Pass 1: Checking inodes, blocks, and sizes
Pass 2: Checking directory structure
Pass 3: Checking directory connectivity
Pass 4: Checking reference counts
Pass 5: Checking group summary information
/dev/mapper/mapper-home: 11/29065216 files (0.0% non-contiguous), 2105281/116234240 blocks
fdisk -l shows the internal ssd
[1mDisk /dev/nvme0n1: 477 GiB, 512110190592 bytes, 1000215216 sectors
[0mUnits: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: gpt
Disk identifier: E0C3ADC8-67C7-4CB7-ABBF-F47392A64797
[1mDevice[0m [1m Start[0m [1m End[0m [1m Sectors[0m [1m Size[0m [1mType[0m
/dev/nvme0n1p1 2048 1128447 1126400 550M EFI System
/dev/nvme0n1p2 1128448 1000215182 999086735 476.4G Linux LVM
and the external disk with the modified backup:
GPT PMBR size mismatch (1000215215 != 1953458175) will be corrected by w(rite). // could this be the issue?
Disk /dev/sdb: 931.5 GiB, 1000170586112 bytes, 1953458176 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
Disklabel type: gpt
Disk identifier: E0C3ADC8-67C7-4CB7-ABBF-F47392A64797
Device Start End Sectors Size Type
/dev/sdb1 2048 1128447 1126400 550M EFI System
/dev/sdb2 1128448 1000215182 999086735 476.4G Linux LVM
Disk /dev/loop0: 408.5 MiB, 428281856 bytes, 836488 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
Disk /dev/mapper/cryptdisk: 476.4 GiB, 511530311168 bytes, 999082639 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
Disk /dev/mapper/mapper-swap: 8 GiB, 8589934592 bytes, 16777216 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
Disk /dev/mapper/mapper-root: 25 GiB, 26843545600 bytes, 52428800 sectors
[0mUnits: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk /dev/mapper/mapper-home: 443.4 GiB, 476095447040 bytes, 929873920 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
Offline
it's good if you have a backup
if this LVM is on SSD, and cryptdisk has allowdiscards, and you have issue_discards=1 in your lvm.conf then lvreduce would have deleted (discard/TRIM) those 10G right away, that damage is permanent and cannot be recovered
otherwise lvextend (if LV was unfragmented and no other LV created since reduce) or restoring from LVM config backup should have helped
it's a ssd but i didn't actively activate 'allowdiscards'
the /home still had 70G free space. [btw: with 'testdisk' i was able to backup all content of /home]
since i still have a backup maybe i'll give that a try.
i would then need to reduce the /root again (-10G)
lvreduce --resizefs -L -10G /dev/mapper/root
and then
lvresize -L +10G /dev/mapper/home
right?
Last edited by whomen (2019-11-07 22:46:28)
Offline
YYAAAH!
systemd-boot.. and boot loader entries..
the problem was that the corrupted disk is always connected.
even when i tried to boot from the repaired usb-backupdisk systemd tried to mount the bad internal ssd.
but still it's not completely solved.. i created the user folder on /home and copied the /skel things but still i'm not able to log in.
maybe because neither x nor i3 or anything can find any configfiles..
but before i'll maybe give the lvresize a shot. then i could forget about all the backup digging..
Offline
fuck..
i can't belief this. 2 nights no sleep and sweating like shit..
in the end i was brave and tried to just revert what i did:
# resize2fs -p /dev/mapper/root 15G
# e2fsck -f /dev/mapper/root
# lvreduce -L -10G /dev/mapper/root
# lvresize -L +119G /dev/mapper/home
and it just innocently booted if as nothing ever happend!!
at least i've learned something about lvm and systemd.
thanks for your help!
Offline
Pages: 1