codecamp

7.2.3 缩小逻辑卷

相较于扩容逻辑卷,在对逻辑卷进行缩容操作时,其丢失数据的风险更大。所以在生产环境中执行相应操作时,一定要提前备份好数据。另外Linux系统规定,在对LVM逻辑卷进行缩容操作之前,要先检查文件系统的完整性(当然这也是为了保证我们的数据安全)。在执行缩容操作前记得先把文件系统卸载掉。

    [root@linuxprobe ~]# umount /linuxprobe

第1步:检查文件系统的完整性。

    [root@linuxprobe ~]# e2fsck -f /dev/storage/vo
    e2fsck 1.42.9 (28-Dec-2013)
    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/storage/vo: 11/74000 files (0.0% non-contiguous), 15507/299008 blocks

第2步:把逻辑卷vo的容量减小到120MB。

    [root@linuxprobe ~]# resize2fs /dev/storage/vo 120M
    resize2fs 1.42.9 (28-Dec-2013)
    Resizing the filesystem on /dev/storage/vo to 122880 (1k) blocks.
    The filesystem on /dev/storage/vo is now 122880 blocks long.
    [root@linuxprobe ~]# lvreduce -L 120M /dev/storage/vo
     WARNING: Reducing active logical volume to 120.00 MiB
     THIS MAY DESTROY YOUR DATA (filesystem etc.)
    Do you really want to reduce vo? [y/n]: y
     Reducing logical volume vo to 120.00 MiB
     Logical volume vo successfully resized

第3步:重新挂载文件系统并查看系统状态。

    [root@linuxprobe ~]# mount -a
    [root@linuxprobe ~]# df -h
    Filesystem Size Used Avail Use% Mounted on
    /dev/mapper/rhel-root 18G 3.0G 15G 17% /
    devtmpfs 985M 0 985M 0% /dev
    tmpfs 994M 80K 994M 1% /dev/shm
    tmpfs 994M 8.8M 986M 1% /run
    tmpfs 994M 0 994M 0% /sys/fs/cgroup
    /dev/sr0 3.5G 3.5G 0 100% /media/cdrom
    /dev/sda1 497M 119M 379M 24% /boot
    /dev/mapper/storage-vo 113M 1.6M 103M 2% /linuxprobe
7.2.2 扩容逻辑卷
7.2.4 逻辑卷快照
温馨提示
下载编程狮App,免费阅读超1000+编程语言教程
取消
确定
目录

关闭

MIP.setData({ 'pageTheme' : getCookie('pageTheme') || {'day':true, 'night':false}, 'pageFontSize' : getCookie('pageFontSize') || 20 }); MIP.watch('pageTheme', function(newValue){ setCookie('pageTheme', JSON.stringify(newValue)) }); MIP.watch('pageFontSize', function(newValue){ setCookie('pageFontSize', newValue) }); function setCookie(name, value){ var days = 1; var exp = new Date(); exp.setTime(exp.getTime() + days*24*60*60*1000); document.cookie = name + '=' + value + ';expires=' + exp.toUTCString(); } function getCookie(name){ var reg = new RegExp('(^| )' + name + '=([^;]*)(;|$)'); return document.cookie.match(reg) ? JSON.parse(document.cookie.match(reg)[2]) : null; }