Linux文件系统与LVM精讲
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux文件系统与LVM精讲相关的知识,希望对你有一定的参考价值。
一、管理文件系统1、创建EXT4文件系统
mkfs(Make Filesystem)命令用于创建文件系统(格式化)。mkfs命令的基本语法格式如下:
1)mkfs应用举例
将/dev/sdb1分区格式化为EXT4文件系统。
<!--自行规划分区-->
[root@centos01 ~]# fdisk /dev/sdb
欢迎使用 fdisk (util-linux 2.23.2)。
更改将停留在内存中,直到您决定将更改写入磁盘。
使用写入命令前请三思。
命令(输入 m 获取帮助):n
Partition type:
p primary (0 primary, 0 extended, 4 free)
e extended
Select (default p): p
分区号 (1-4,默认 1):
起始 扇区 (2048-83886079,默认为 2048):
将使用默认值 2048
Last 扇区, +扇区 or +size{K,M,G} (2048-83886079,默认为 83886079):+5G
分区 1 已设置为 Linux 类型,大小设为 5 GiB
命令(输入 m 获取帮助):p
磁盘 /dev/sdb:42.9 GB, 42949672960 字节,83886080 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:dos
磁盘标识符:0xd459c569
设备 Boot Start End Blocks Id System
/dev/sdb1 2048 10487807 5242880 83 Linux
命令(输入 m 获取帮助):w
The partition table has been altered!
Calling ioctl() to re-read partition table.
正在同步磁盘。
[root@centos01 ~]# mkfs -t ext4 /dev/sdb1 <!--将/dev/sdb1格式化为EXT4文件系统-->
[root@centos01 ~]# mkfs.ext4 /dev/sdb1 <!--或执行第二种方式-->
mke2fs 1.42.9 (28-Dec-2013)
文件系统标签=
OS type: Linux
块大小=4096 (log=2)
分块大小=4096 (log=2)
Stride=0 blocks, Stripe width=0 blocks
327680 inodes, 1310720 blocks
65536 blocks (5.00%) reserved for the super user
第一个数据块=0
Maximum filesystem blocks=1342177280
40 block groups
32768 blocks per group, 32768 fragments per group
8192 inodes per group
Superblock backups stored on blocks:
32768, 98304, 163840, 229376, 294912, 819200, 884736
Allocating group tables: 完成
正在写入inode表: 完成
Creating journal (32768 blocks): 完成
Writing superblocks and filesystem accounting information: 完成
2、创建Swap交换文件系统
使用mkswap命令创建交换文件系统;基本语法格式如下:
1)mkswap应用举例
将/dev/sdb2分区创建为交换分区。
[root@centos01 ~]# mkswap /dev/sdb2 <!--将sdb2格式化为swap分区-->
mkswap: /dev/sdb2: warning: wiping old swap signature.
正在设置交换空间版本 1,大小 = 5242876 KiB
无标签,UUID=a86ecd38-3058-4d92-9688-346cb9407915
[root@centos01 ~]# cat /proc/meminfo | grep SwapTotal <!--查看swap分区大小-->
SwapTotal: 4194300 kB
[root@centos01 ~]# swapon /dev/sdb2 <!--扩展swap分区-->
[root@centos01 ~]# cat /proc/meminfo | grep SwapTotal
<!--查看扩展后的swap分区大小-->
SwapTotal: 9437176 kB
[root@centos01 ~]# swapoff /dev/sdb2 <!--取消扩展swap分区-->
[root@centos01 ~]# cat /proc/meminfo | grep SwapTotal
<!--查看取消扩展后的swap分区大小-->
SwapTotal: 4194300 kB
3、挂载、卸载文件系统
1)挂载硬盘分区
mount命令挂载文件系统、ISO镜像;mount基本语法格式如下:
应用举例:
[root@centos01 ~]# mkdir /sdb1 <!--创建挂载目录-->
[root@centos01 ~]# mount /dev/sdb1 /sdb1/ <!--挂载/dev/sdb1分区-->
[root@centos01 ~]# mount <!--查看挂载分区-->
………… <!--此处省略部分内容-->
/dev/sdb1 on /sdb1 type ext4 (rw,relatime,data=ordered)
[root@centos01 ~]# df -Th <!--或者执行此命令查看-->
文件系统 类型 容量 已用 可用 已用% 挂载点
/dev/sda3 xfs 76G 3.6G 73G 5% /
devtmpfs devtmpfs 474M 0 474M 0% /dev
tmpfs tmpfs 489M 0 489M 0% /dev/shm
tmpfs tmpfs 489M 7.0M 482M 2% /run
tmpfs tmpfs 489M 0 489M 0% /sys/fs/cgroup
/dev/sda1 xfs 197M 136M 61M 70% /boot
tmpfs tmpfs 98M 0 98M 0% /run/user/0
/dev/sdb1 ext4 4.8G 20M 4.6G 1% /sdb1
2)卸载已挂载的硬盘分区
[root@centos01 ~]# umount /sdb1/ <!--卸载已挂载的文件系统-->
[root@centos01 ~]# df -Th <!--验证是否卸载成功-->
文件系统 类型 容量 已用 可用 已用% 挂载点
/dev/sda3 xfs 76G 3.7G 73G 5% /
devtmpfs devtmpfs 474M 0 474M 0% /dev
tmpfs tmpfs 489M 0 489M 0% /dev/shm
tmpfs tmpfs 489M 7.0M 482M 2% /run
tmpfs tmpfs 489M 0 489M 0% /sys/fs/cgroup
/dev/sda1 xfs 197M 136M 61M 70% /boot
tmpfs tmpfs 98M 0 98M 0% /run/user/0
3)挂载ISO镜像
[root@centos01 ~]# ls
anaconda-ks.cfg ansible.iso initial-setup-ks.cfg
[root@centos01 ~]# mount -o loop ansible.iso /mnt/
<!--挂载ISO镜像到指定目录-->
mount: /dev/loop0 写保护,将以只读方式挂载
[root@centos01 ~]# mount <!--查看挂载的ISO镜像-->
………… <!--此处省略部分内容-->
/root/ansible.iso on /mnt type iso9660 (ro,relatime)
[root@centos01 ~]# df -Th <!--查看ISO镜像是否挂载成功-->
文件系统 类型 容量 已用 可用 已用% 挂载点
/dev/sda3 xfs 76G 3.7G 73G 5% /
devtmpfs devtmpfs 474M 0 474M 0% /dev
tmpfs tmpfs 489M 0 489M 0% /dev/shm
tmpfs tmpfs 489M 7.0M 482M 2% /run
tmpfs tmpfs 489M 0 489M 0% /sys/fs/cgroup
/dev/sda1 xfs 197M 136M 61M 70% /boot
tmpfs tmpfs 98M 0 98M 0% /run/user/0
/dev/loop0 iso9660 83M 83M 0 100% /mnt
4)卸载已挂载的ISO镜像
[root@centos01 ~]# umount /mnt/ <!--卸载已挂载的ISO镜像-->
[root@centos01 ~]# df -Th <!--验证是否卸载成功-->
文件系统 类型 容量 已用 可用 已用% 挂载点
/dev/sda3 xfs 76G 3.7G 73G 5% /
devtmpfs devtmpfs 474M 0 474M 0% /dev
tmpfs tmpfs 489M 0 489M 0% /dev/shm
tmpfs tmpfs 489M 7.0M 482M 2% /run
tmpfs tmpfs 489M 0 489M 0% /sys/fs/cgroup
/dev/sda1 xfs 197M 136M 61M 70% /boot
tmpfs tmpfs 98M 0 98M 0% /run/user/0
4、设置文件系统的自动挂载
/etc/fstab配置文件包含需要开机后自动挂载的文件系统记录;示例如下:
1)自动挂载硬盘分区
[root@centos01 ~]# mkfs.ext4 /dev/sdb1
<!--将/dev/sdb1分区格式化为EXT4文件系统-->
[root@centos01 ~]# vim /etc/fstab <!--编辑开机自动挂载配置文件-->
…………
/dev/sdb1 /sdb1 ext4 defaults 0 0 <!--添加自动挂载的硬盘分区及挂载目录-->
[root@centos01 ~]# df -Th <!--重启计算机查看是否自动挂载-->
文件系统 类型 容量 已用 可用 已用% 挂载点
/dev/sda3 xfs 76G 3.6G 73G 5% /
devtmpfs devtmpfs 474M 0 474M 0% /dev
tmpfs tmpfs 489M 0 489M 0% /dev/shm
tmpfs tmpfs 489M 7.0M 482M 2% /run
tmpfs tmpfs 489M 0 489M 0% /sys/fs/cgroup
/dev/sdb1 ext4 4.8G 20M 4.6G 1% /sdb1
/dev/sda1 xfs 197M 136M 61M 70% /boot
tmpfs tmpfs 98M 0 98M 0% /run/user/0
[root@centos01 ~]# cat /proc/meminfo | grep SwapTotal
<!--自动挂载swap分区-->
SwapTotal: 4194300 kB
[root@centos01 ~]# vim /etc/fstab<!--编辑开机自动挂载配置文件-->
…………
/dev/sdb1 /sdb1 ext4 defaults 0 0
/dev/sdb2 swap swap defaults 0 0 <!--添加此行-->
[root@centos01 ~]# cat /proc/meminfo | grep SwapTotal
<!--重新启动计算机验证是否挂载成功-->
SwapTotal: 9437176 kB
2)自动挂载ISO镜像
[root@centos01 ~]# ls
anaconda-ks.cfg ansible.iso initial-setup-ks.cfg
[root@centos01 ~]# mount -o loop ansible.iso /mnt/ <!--挂载ISO镜像-->
mount: /dev/loop0 写保护,将以只读方式挂载
[root@centos01 ~]# mount <!--查看挂载信息-->
…………
/root/ansible.iso on /mnt type iso9660 (ro,relatime) <!--查看设备类型-->
[root@centos01 ~]# umount /mnt/ <!--卸载已挂载的ISO镜像-->
[root@centos01 ~]# vim /etc/fstab <!--编辑开机自动挂载配置文件-->
…………
/dev/sdb1 /sdb1 ext4 defaults 0 0
/dev/sdb2 swap swap defaults 0 0
/root/ansible.iso /mnt iso9660 defaults 0 0 <!--添加此行-->
[root@centos01 ~]# df -Th
<!--重启计算机验证ISO镜像是否自动挂载成功-->
文件系统 类型 容量 已用 可用 已用% 挂载点
/dev/sda3 xfs 76G 3.7G 73G 5% /
devtmpfs devtmpfs 474M 0 474M 0% /dev
tmpfs tmpfs 489M 0 489M 0% /dev/shm
tmpfs tmpfs 489M 7.0M 482M 2% /run
tmpfs tmpfs 489M 0 489M 0% /sys/fs/cgroup
/dev/loop0 iso9660 83M 83M 0 100% /mnt
/dev/sdb1 ext4 4.8G 20M 4.6G 1% /sdb1
/dev/sda1 xfs 197M 136M 61M 70% /boot
tmpfs tmpfs 98M 0 98M 0% /run/user/0
5、查看磁盘使用情况
df命令的基本语法格式如下:
应用举例如下:
[root@centos01 ~]# df -Th
文件系统 类型 容量 已用 可用 已用% 挂载点
/dev/sda3 xfs 76G 3.7G 73G 5% /
devtmpfs devtmpfs 474M 0 474M 0% /dev
tmpfs tmpfs 489M 0 489M 0% /dev/shm
tmpfs tmpfs 489M 7.0M 482M 2% /run
tmpfs tmpfs 489M 0 489M 0% /sys/fs/cgroup
/dev/sda1 xfs 197M 136M 61M 70% /boot
tmpfs tmpfs 98M 0 98M 0% /run/user/0
二、管理LVM逻辑卷
1、LVM概述
Logical Volume Manager,逻辑卷管理。
1)LVM作用
动态调整磁盘容量,从而提高磁盘管理的灵活性。注意:/boot分区用于存放引导文件,不能基于LVM创建。
2)图形界面管理工具
system-config-lvm
2、LVM机制的基本概念
PV(Physical Volume,物理卷):整个硬盘,或使用fdisk等工具建立的普通分区;包括许多默认4MB大小的PE(Physical Extent,基本单元)。
VG(Volume Group,卷组):一个或多个物理卷组合而成的整体。
LV(Logical Volume,逻辑卷):从卷组中分割出的一块空间,用于建立文件系统。
3、LVM的管理命令
1)常见的LVM管理命令
2)管理LVM的主要命令
4、LVM应用案例
1)自行添加两块硬盘,使用fdisk命令规划两个分区,将类型设置为“8e”
[root@centos01 ~]# fdisk -l /dev/sdb /dev/sdc | grep "LVM"
/dev/sdb1 2048 83886079 41942016 8e Linux LVM
/dev/sdc1 2048 83886079 41942016 8e Linux LVM
2)创建物理卷pvcreate
[root@centos01 ~]# pvcreate /dev/sdb1 /dev/sdc1
Physical volume "/dev/sdb1" successfully created.
Physical volume "/dev/sdc1" successfully created.
3)创建卷组vgcreate
[root@centos01 ~]# vgcreate mail_store /dev/sdb1 /dev/sdc1
Volume group "mail_store" successfully created
4)创建逻辑卷lvcreate
[root@centos01 ~]# lvcreate -L 20G -n mbox mail_store
Logical volume "mbox" created.
[root@centos01 ~]# mkfs -t ext4 /dev/mail_store/mbox
mke2fs 1.42.9 (28-Dec-2013)
文件系统标签=
OS type: Linux
块大小=4096 (log=2)
分块大小=4096 (log=2)
Stride=0 blocks, Stripe width=0 blocks
1310720 inodes, 5242880 blocks
262144 blocks (5.00%) reserved for the super user
第一个数据块=0
Maximum filesystem blocks=2153775104
160 block groups
32768 blocks per group, 32768 fragments per group
8192 inodes per group
Superblock backups stored on blocks:
32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208,
4096000
Allocating group tables: 完成
正在写入inode表: 完成
Creating journal (32768 blocks): 完成
Writing superblocks and filesystem accounting information: 完成
5)为逻辑卷扩容
[root@centos01 ~]# lvextend -L +5G /dev/mail_store/mbox
Size of logical volume mail_store/mbox changed from 20.00 GiB (5120 extents) to 25.00 GiB (6400 extents).
Logical volume mail_store/mbox successfully resized.
[root@centos01 ~]#
[root@centos01 ~]# resize2fs /dev/mail_store/mbox
resize2fs 1.42.9 (28-Dec-2013)
Resizing the filesystem on /dev/mail_store/mbox to 6553600 (4k) blocks.
The filesystem on /dev/mail_store/mbox is now 6553600 blocks long.
———————— 本文至此结束,感谢阅读 ————————
以上是关于Linux文件系统与LVM精讲的主要内容,如果未能解决你的问题,请参考以下文章