Здравейте,
Тази сутрин трябваше да направя live migration от ext3 към ext4 на един proxmox сървър, и в този пост искам да споделя преживяното:
Започнах процедурата като спазвах стъпките от https://debian-administration.org/article/643/Migrating_a_live_system_from_ext3_to_ext4_filesystem , но излезе следният проблем:
Първо при umount /dev/pve/data
излезе :
umount: /var/lib/vz: target is busy
(In some cases useful info about processes that
use the device is found by lsof(8) or fuser(1).)
Използвах флаг-а -l
при umount
и продължих по стъпките.
При fsck.ext4 -yfD /dev/pve/data
обаче възникна същия проблем :
moon:~# fsck.ext4 -yfD /dev/pve/data
e2fsck 1.42.12 (29-Aug-2014)
/dev/pve/data is in use.
e2fsck: Cannot continue, aborting.
За да разбера какво караше /dev/pve/data да е все още монтиран, трябваше да използвам командата fuser -m /dev/pve/data
И така разбрах следното :
moon:/var/lib# fuser -m /dev/pve/data
/dev/dm-2: 11657 11685 17558 22012 24655 26116 29357 34728 35034 35694 42784 46330 47645
Това бяха pid-овете на процесите задържащи /dev/pve/data .. спрях ги един по един и успях да продължа миграцията както следва :
moon:~# tune2fs -O extents,uninit_bg,dir_index /dev/pve/data
tune2fs 1.42.12 (29-Aug-2014)
moon:~# fsck.ext4 -yfD /dev/pve/data
e2fsck 1.42.12 (29-Aug-2014)
Pass 1: Checking inodes, blocks, and sizes
Pass 2: Checking directory structure
Pass 3: Checking directory connectivity
Pass 3A: Optimizing directories
Pass 4: Checking reference counts
Pass 5: Checking group summary information
/dev/pve/data: ***** FILE SYSTEM WAS MODIFIED *****
/dev/pve/data: 770019/482590720 files (0.3% non-contiguous), 1543788056/3860725760 blocks
Накрая монтирах на ново /dev/pve/data към /var/lib/vz и вече имах успешно мигрирана ext4 файлова система! Нито един файл не се затри през цялата операция! 🙂
Това е!