The following procedure will reduce both the ext4 file system and logical volume sizes by 10 GB. Initially the file system uses the entire size of the logical volume. Obviously, there needs to be at least 10 GB of disk space currently available. This procedure needs to be done with the file system unmounted. This should also work fine on ext2 and ext3.
root@ubuntu:/tmp# df -h /dev/mapper/mysql_s1_prod1_raid10-data
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/mysql_s1_prod1_raid10-data
241G 647M 228G 1% /local/mysql-s1-prod1_data
root@ubuntu:/tmp# umount /local/mysql-s1-prod1_data
root@ubuntu:/tmp# pvscan
PV /dev/mapper/mysql-s1-prod0-t1-v1_fujitsu2-27 VG mysql_s1_prod0_raid1 lvm2 [78.12 GiB / 0 free]
PV /dev/mapper/mysql-s1-prod1-t1-v1_fujitsu2-32 VG mysql_s1_prod1_raid1 lvm2 [78.12 GiB / 0 free]
PV /dev/mapper/mysql-s1-prod0-t1-v2_fujitsu2-28 VG mysql_s1_prod0_raid10 lvm2 [244.14 GiB / 10.00 GiB free]
PV /dev/mapper/mysql-s1-prod1-t1-v2_fujitsu2-35 VG mysql_s1_prod1_raid10 lvm2 [244.14 GiB / 0 free]
PV /dev/sda2 VG system lvm2 [135.84 GiB / 102.32 GiB free]
Total: 5 [780.36 GiB] / in use: 5 [780.36 GiB] / in no VG: 0 [0 ]
root@ubuntu:/tmp# lvscan
ACTIVE '/dev/mysql_s1_prod0_raid1/data' [78.12 GiB] inherit
ACTIVE '/dev/mysql_s1_prod1_raid1/data' [78.12 GiB] inherit
ACTIVE '/dev/mysql_s1_prod0_raid10/data' [234.14 GiB] inherit
ACTIVE '/dev/mysql_s1_prod1_raid10/data' [244.14 GiB] inherit
ACTIVE '/dev/system/root' [9.31 GiB] inherit
ACTIVE '/dev/system/var' [4.66 GiB] inherit
ACTIVE '/dev/system/tmp' [2.79 GiB] inherit
ACTIVE '/dev/system/swap' [2.79 GiB] inherit
ACTIVE '/dev/system/home' [4.66 GiB] inherit
ACTIVE '/dev/system/opt' [9.31 GiB] inherit
root@ubuntu:/tmp# e2fsck -fy /dev/mysql_s1_prod1_raid10/data
e2fsck 1.41.11 (14-Mar-2010)
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/mysql_s1_prod1_raid10/data: 127/16007168 files (2.4% non-contiguous), 1170118/63998976 blocks
root@ubuntu:/tmp# resize2fs -Mp /dev/mapper/mysql_s1_prod1_raid10-data
resize2fs 1.41.11 (14-Mar-2010)
Resizing the filesystem on /dev/mapper/mysql_s1_prod1_raid10-data to 291412 (4k) blocks.
Begin pass 2 (max = 88941)
Relocating blocks XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
Begin pass 3 (max = 1954)
Scanning inode table XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
Begin pass 4 (max = 11)
Updating inode references XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
The filesystem on /dev/mapper/mysql_s1_prod1_raid10-data is now 291412 blocks long.
root@ubuntu:/tmp# e2fsck -fy /dev/mysql_s1_prod1_raid10/data
e2fsck 1.41.11 (14-Mar-2010)
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/mysql_s1_prod1_raid10/data: 127/73728 files (2.4% non-contiguous), 160138/291412 blocks
root@ubuntu:/tmp# lvreduce -L -10G /dev/mapper/mysql_s1_prod1_raid10-data
WARNING: Reducing active logical volume to 234.14 GiB
THIS MAY DESTROY YOUR DATA (filesystem etc.)
Do you really want to reduce data? [y/n]: y
Reducing logical volume data to 234.14 GiB
Logical volume data successfully resized
root@ubuntu:/tmp# resize2fs /dev/mapper/mysql_s1_prod1_raid10-data
resize2fs 1.41.11 (14-Mar-2010)
Please run 'e2fsck -f /dev/mapper/mysql_s1_prod1_raid10-data' first.
root@ubuntu:/tmp# resize2fs /dev/mapper/mysql_s1_prod1_raid10-data
resize2fs 1.41.11 (14-Mar-2010)
Resizing the filesystem on /dev/mapper/mysql_s1_prod1_raid10-data to 61377536 (4k) blocks.
The filesystem on /dev/mapper/mysql_s1_prod1_raid10-data is now 61377536 blocks long.
root@ubuntu:/tmp# e2fsck -fy /dev/mysql_s1_prod1_raid10/data
e2fsck 1.41.11 (14-Mar-2010)
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/mysql_s1_prod1_raid10/data: 127/15351808 files (2.4% non-contiguous), 1128998/61377536 blocks
root@ubuntu:/tmp# df -h /dev/mapper/mysql_s1_prod1_raid10-data
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/mysql_s1_prod1_raid10-data
231G 647M 219G 1% /local/mysql-s1-prod1_data
root@ubuntu:/tmp# pvscan
PV /dev/mapper/mysql-s1-prod0-t1-v1_fujitsu2-27 VG mysql_s1_prod0_raid1 lvm2 [78.12 GiB / 0 free]
PV /dev/mapper/mysql-s1-prod1-t1-v1_fujitsu2-32 VG mysql_s1_prod1_raid1 lvm2 [78.12 GiB / 0 free]
PV /dev/mapper/mysql-s1-prod0-t1-v2_fujitsu2-28 VG mysql_s1_prod0_raid10 lvm2 [244.14 GiB / 10.00 GiB free]
PV /dev/mapper/mysql-s1-prod1-t1-v2_fujitsu2-35 VG mysql_s1_prod1_raid10 lvm2 [244.14 GiB / 10.00 GiB free]
PV /dev/sda2 VG system lvm2 [135.84 GiB / 102.32 GiB free]
Total: 5 [780.36 GiB] / in use: 5 [780.36 GiB] / in no VG: 0 [0 ]
root@ubuntu:/tmp# lvscan
ACTIVE '/dev/mysql_s1_prod0_raid1/data' [78.12 GiB] inherit
ACTIVE '/dev/mysql_s1_prod1_raid1/data' [78.12 GiB] inherit
ACTIVE '/dev/mysql_s1_prod0_raid10/data' [234.14 GiB] inherit
ACTIVE '/dev/mysql_s1_prod1_raid10/data' [234.14 GiB] inherit
ACTIVE '/dev/system/root' [9.31 GiB] inherit
ACTIVE '/dev/system/var' [4.66 GiB] inherit
ACTIVE '/dev/system/tmp' [2.79 GiB] inherit
ACTIVE '/dev/system/swap' [2.79 GiB] inherit
ACTIVE '/dev/system/home' [4.66 GiB] inherit
ACTIVE '/dev/system/opt' [9.31 GiB] inherit