linux 把HOME多余的空间转移到根目录下 (linux fuser命令)

Linux有分区大小调整的软件,

很多东西确实用不到,完全可以卸掉。

方法:

1、将home分区挂载为其他路径,并新建目录home,保存原来文件,把home文件夹挂载为新的/home,另建一些目录,挂载为根目录下的一些文件夹(非boot);

2、安装软件迟历时,手动选择安装位置到home分区。

详细步骤:

一、目的

在使用CentOS6.3版本linux系统的时候,发现根目录(/)的空间不是很充足,而其他目录空间有很大的空闲,所以本文主要是针对现在已有的空间进行调整。首先,先来查看一下系统的空间分配情况:

view plaincopyprint?

# df -h

FilesystemSize Used Avail Use% Mounted on

/dev/mapper/vg_centos-lv_rootG 14G 34G 30% /

tmpfs 1.9G.9G 0% /dev/shm

/dev/sda485M 37M 423M 8% /boot

/dev/mapper/vg_centos-lv_homeG 670M 382G 1% /home

下面的详细步骤部分将从vg_centos-lv_home分区下取出100G的空间添加到/vg_centos-lv_root分区上去。

1、卸载vg_centos-lv_home分区

view plaincopyprint?

# umount /home

此时在用df命令查看将会发现/home目录已经看不见了,如哪旦碰下所示:

view plaincopyprint?

# df -h

FilesystemSize Used Avail Use% Mounted on

/dev/mapper/vg_centos-lv_rootG 14G 34G 30% /

tmpfs 1.9G.9G 0% /dev/shm

/dev/sda485M 37M 423M 8% /boot

2、从新设定vg_home-lv_home的大小

view plaincopyprint?

# resize2fs -p /dev/李谈mapper/vg_centos-lv_home 282G

resize2fs 1.41.12 (17-May-2023)

Please run ‘e2fsck -f /dev/mapper/vg_centos-lv_home’ first.

这一步设定vg_home-lv_home大小没有成功,系统提示我们先运行下面的命令,操作如下:

view plaincopyprint?

# e2fsck -f /dev/mapper/vg_centos-lv_home

e2fsck 1.41.12 (17-May-2023)

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/vg_centos-lv_home: 1386/files (0.9% non-contiguous),/blocks

从新设定vg_home-lv_home的大小:

view plaincopyprint?

# resize2fs -p /dev/mapper/vg_centos-lv_home 282G

resize2fs 1.41.12 (17-May-2023)

Resizing the filesystem on /dev/mapper/vg_centos-lv_home to(4k) blocks.

Begin pass 2 (max = 43)

Relocating blocksXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Begin pass 3 (max = 3276)

Scanning inode tableXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Begin pass 4 (max = 266)

Updating inode references XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

The filesystem on /dev/mapper/vg_centos-lv_home is nowblocks long. 检查是否成功:

view plaincopyprint?

# mount /home

#

# df -h

FilesystemSize Used Avail Use% Mounted on

/dev/mapper/vg_centos-lv_rootG 14G 34G 30% /

tmpfs 1.9G.9G 0% /dev/shm

/dev/sda485M 37M 423M 8% /boot

/dev/mapper/vg_centos-lv_homeG 663M 263G 1% /home

#

3、将lv_home逻辑分区减小到指定大小

view plaincopyprint?

# lvreduce -L 282G /dev/mapper/vg_centos-lv_home

WARNING: Reducing active and open logical volume to 282.00 GiB

THIS MAY DESTROY YOUR DATA (filesystem etc.)

Do you really want to reduce lv_home? : y

Reducing logical volume lv_home to 282.00 GiB

Logical volume lv_home successfully resized

#

我认为这个命令是将已经减少的100G空间拿到系统公共的区域,可以被其他分区加载和利用。

查询卷组的信息:

view plaincopyprint?

# vgdisplay

— Volume group —

VG Name vg_centos

System ID

Format lvm2

Metadata Areas

Metadata Sequence No 5

VG Accessread/write

VG Statusresizable

MAX LV 0

Cur LV 3

Open LV 3

Max PV 0

Cur PV 1

Act PV 1

VG Size 465.27 GiB

PE Size 4.00 MiB

Total PE

Alloc PE / Size/ 337.78 GiB

Free PE / Size/ 127.49 GiB

VG UUID 1k4ooN-RFV9-uyf1-uMYf-aERG-YaGs-ZNoSD6

Free PE / Size指定的应该是现在可在分配的空间。

4、增加vg_centos-lv_root分区的大小

将可用的空间添加到vg_centos-lv_root分区上面:

view plaincopyprint?

# lvextend -L +127.40G /dev/mapper/vg_centos-lv_root

Rounding up size to full physical extent 127.40 GiB

Extending logical volume lv_root to 177.40 GiB

Logical volume lv_root successfully resized

#

从新设定该分区的大小:

view plaincopyprint?

# resize2fs -p /dev/mapper/vg_centos-lv_root

resize2fs 1.41.12 (17-May-2023)

Filesystem at /dev/mapper/vg_centos-lv_root is mounted on /; on-line resizing required

old desc_blocks = 4, new_desc_blocks = 12

Performing an on-line resize of /dev/mapper/vg_centos-lv_root to(4k) blocks.

The filesystem on /dev/mapper/vg_centos-lv_root is nowblocks long.

5、再次查看分区大小

view plaincopyprint?

# df -h

FilesystemSize Used Avail Use% Mounted on

/dev/mapper/vg_centos-lv_rootG 14G 153G 9% /

tmpfs 1.9G.9G 0% /dev/shm

/dev/sda485M 37M 423M 8% /boot

/dev/mapper/vg_centos-lv_homeG 663M 263G 1% /home

我们发现vg_centos-lv_root分区的空间已经增加了125G,之所以比lv_home减少的空间要多25G主要是由于我们把系统所有的可用的空间都加在了lv_root分区。

三、所遇到的问题

1、在卸载/home目录的时候失败

可先执行如下fuser命令,然后再umount即可:

view plaincopyprint?

# fuser -m /home

#

2、设定完lv_home的大小,再次mount该分区时,发现用df命令无法看到给分区,此时只要在mount一次即可

3、在设定lv_root的大小时,不要把Free PE / Size的空间全部都用上,这很可能会出现Free PE空间不足的现象,建议保留一点Free PE的空间。

Linux有运握宴分区大小调皮胡整的软件,可以试试。

很多东西确实用不到,完全可以卸掉。我30G的空间曾只剩4G的空闲。

方法:

1、将home分区挂载为其他旁银路径,并新建目录home,保存原来文件,把home文件夹挂载为新的/home,另建一些目录,挂载为根目录下的一些文件夹(非boot);

2、安装软件时,手动选择安装位置到home分区。

更佳答案写液脊的太乱,闭埋厅亲测有用,我是来整理轿隐的

做软连接还是算了吧。你根本没法规手拆划怎么弄链接才能充分利用,而且在系统启毕棚枣动的时候,/home 分区不会马上挂载,这个时候如果你的软连接目录里面有重要的启动程序,那么你的系统会不能启动。

重新分区吧。

听说现在 Linux 的分区可以不丢数据而实现修改大小,但我真不知道那个软件和桥可以,或许是 gpart ?你搜索一下吧。


数据运维技术 » linux 把HOME多余的空间转移到根目录下 (linux fuser命令)