linux中磁盘分区以及如何将磁盘挂载到系统中
linux磁盘分区
说明:一个硬盘最多可以建4个主分区, 至少需要建一个主分区, 逻辑分区可以建立多个,也可以不建
命令和参数介绍
查看磁盘分区
cat /proc/partitions
fdisk /dev/sdb(分区名称)
-p查看当前分区
-t 改分区号
-w将分区表写进磁盘
-n创建分区
-p主分区
-e拓展分区
新建分区
先fdisk -l看看,所有的存储设备
fdisk /dev/sdb,可以看到最后面一行的提示,m for help。
m是more更多的意思,更多帮助输入m
输入n代表新建分区。
我们可以看到,一个e是extend扩展的意思,就是说建立扩展分区。p是primary partition主分区的意思,就是说建立主分区。
我们这里建立扩展分区。
在拓展分区的基础上新建逻辑分区,逻辑分区分区号是从5开始
w保存起来
fdisk -l看一下,存储器和分区信息
将分区进行文件系统并进行格式化
mkfs -t ext3 /dev/sdb5
mkfs -t ext3 /dev/sdb6
挂载分区
新建挂载点
mkdir /data1
mkdir /data2
挂载(mount)
mount /dev/sdb5 /data1
mount /dev/sdb6 /data2
自动挂载
vim /etc/fstab
/dev/sda3 /mnt ext4 defaults 0 0
卸掉挂载点
umount /data1
umount /data2
新建卷
fdisk /dev/sdb n p 4 t 8e w
新建物理卷
pvcreate /dev/sdb4
pvdisplay
查看物理卷
pvs
新建卷组
vgcreate VG01 /dev/sdb4
查看卷组
vgdisplay
新建逻辑卷并划分100M空间
lvcreate -L 100M -n lvdata1 VG01
mkfs -t ext3 /dev/VG01/lvdata1
Lvdisplay/lvscan
给逻辑卷添加100M空间
lvextentd -L +100M /dev/VG01/lvdata1
resize2fs对增加的空间生效
resize2fs /dev/VG01/lvdata1
卷组中新加物理卷
fdisk /dev/sdc n p 1 t 8e w
pvcreate /dev/sdc1
pvs
将/dev/sdc1物理卷加入到组VG01中
vgextend VG01 /dev/sdc1
分区扩容(不加磁盘的情况)
1.首先,必须确保其他分区有足够的空间用来分给根目录/。可以使用以下命令查看:
df -h
扩容根目录的思路
2.扩容根目录的思路如下
将/home文件夹备份,删除/home文件系统所在的逻辑卷,增大/文件系统所在的逻辑卷,增大/文件系统大小,最后新建/home目录,并恢复/home文件夹下的内容。
备份/home分区内容
3.备份/home分区内容
这里需要选一个能够容纳下/home文件夹大小的分区,可以看到/run剩余空间为32G,因此,我们将/home备份到/run下面。
tar cvf /run/home.tar /home
卸载/home
4.卸载/home
要先终止所有使用/home文件系统的进程,这里要注意不要在/home目录下执行下面的操作:
fuser -km /home
上述可以转化成下面
fuser -m /home
ps -ef |egrep '(进程id|进程id)' |grep -v grep
kill -9 pid
然后,卸载:
umount /home
删除/home所在的逻辑卷lv
5.删除/home所在的逻辑卷lv:
lvremove /dev/mapper/centos-home
扩大根目录所在的逻辑卷
6.扩大根目录所在的逻辑卷,这里增大1T:
lvextend -L +1T /dev/mapper/centos-root
扩大/文件系统
7.扩大/文件系统:
xfs_growfs /dev/mapper/centos-root
重建/home文件系统所需要的逻辑卷
8.重建/home文件系统所需要的逻辑卷:
由于刚才我们分出去1.0T,因此这里创建的逻辑卷大小为2.5T.
lvcreate -L 2.5T -n/dev/mapper/centos-home
.创建文件系统
9.创建文件系统
mkfs.xfs /dev/mapper/centos-home
10.将新建的文件系统挂载到/home目录下:
mount /dev/mapper/centos-home /home
11.恢复/home目录的内容
tar xvf /run/home.tar -C /home
12.删除/run下面的备份:
rm -rf /run/home.tar
分区扩容(添加磁盘的情况)
查看当前磁盘情况
fdisk -l
建立新分区
fdisk /dev/sdb
查看已有分区
fdisk -l
格式化分区,建立文件系统
mkfs.xfs -f /dev/sdb1
挂载磁盘
mount /dev/sdb1 /home/data/
查看是否挂载成功
df -TH /home/data/
通过卷扩容分区容量 通过卷扩容分区容量
查看已有分区
fdisk -l
查看卷分组
vgdisplay -v
创建物理卷
pvcreate /dev/sdb1
查看结果
pvdisplay
扩展卷分组
vgextend centos /dev/sdb1
查看逻辑卷
lvdisplay
扩展逻辑卷/dev/centos/root
lvextend -L +100G /dev/centos/root
扩充文件系统
xfs_growfs /dev/centos/root
卷的管理
卷的删除
删除逻辑卷:
取消挂载
umount /mnt/lv0
取消逻辑卷
lvremove /dev/vg0/lv0
取消卷组(直接写卷组名称就可以)
vgremove /dev/VG01
取消物理卷
pvremove /dev/sdb4 /dev/sdc1
修改/etc/fstab
删掉/etc/fstab配置文件中对应的挂载信息
resize2fs 针对文件系统ext2 ext3 ext4
xfs_growfs 针对文件系统xfs
查看文件系统大小
查看文件系统的类型情况
df -T
查看文件系统的大小情况
df -h
显示目录和目录下子目录和文件占用磁盘空间的大小
du -ah home
显示指定深度的目录的空间大小
du -ah home --max-depth=1
显示几个文件或目录各自占用磁盘空间的大小, 还统计它们的总和
du -ch home