I have a few systems which have been running over a decade in a cluster on SLES 10 (now long past EOL). We're migrating to CentOS 6 64-bit. I got everything done but the final data syncs, and lo and behold, surprise, I ran out of disk space...except it's in the inode table, not the raw capacity. ReiserFS (in use on the SLES boxes) did not enforce a limit - indeed, I don't even know how many inodes there are in use because it not only doesn't enforce, it doesn't even track/report them. I can get that number with a one-liner, no problem.
My issue largely revolves around LVM, probably. That's my weak spot. I'm just really -fairly- new to using it, having mostly used raw devices since 1993.
What I have is a new machine with a logical volume group, containing a swap partition and the root filesystem as two volumes. It's a whopping 100GB, but it needs to have well over 6.5mil inodes...I ran out around 6.4mil.
I understand fully that I need to get a totally new ext4 filesystem made, as you can't increase the inode count at all.
I'm working under VMWare, which helps. I can simply add/remove virtual drives as necessary.
I want to basically replace the root filesystem with one which has a better inode ratio for our uses. What I am unsure of is how to handle the LVM parts of this, as well as the actual "restore the data without restoring the filesystem [i.e., the part which holds the inode table, etc.] itself. I basically need to get the data to a spare virtual drive, re-format the root partition as necessary, then restore the drive. LVM is getting in my way, knowledge-wise. I've familiarised myself with lvcreate, lvchange, etc., to some degree, but I could use a blow-by-blow description of which tools to properly use to handle the entire filesystem (it's one filesystem, which all resides on /, so it includes /dev, etc.) as far as backup and restore, and especially the LVM swap-out.
If it helps in writing the commands and such, assume vg_webserver4c6 as the logical volume group, and lv_root and lv_swap as the logical volume names. lv_root is the problem child.
Any help is greatly appreciated - the more detailed, the better!
Thanks!
Answer
Use to tar or rsync to backup the whole filesystem. No need to include /dev/, /proc or /sys: these are created at boot time.
no need to use any lv commands because you don't need to resize lv_root, you just need to recreate the filesystem with 10 million inodes:
mkfs.ext4 -N 10000000 /
use tar or rsync to restore the files
fix your boot loader (rerun grub-install)
That's it.
Comments
Post a Comment