Linux入门实践-数据盘格式化和和多分区挂载

本文涉及的产品
Redis 开源版,标准版 2GB
推荐场景:
搭建游戏排行榜
云数据库 Tair(兼容Redis),内存型 2GB
简介:

内容

  本文主要介绍了CentOS系统的阿里云ECS服务器中数据盘的格式化和挂载多分区ext4格式的文件系统。

版本 操作系统: CentOS 7.2 64位

适合人群:linux运维人员
步骤

查看文件系统的使用情况

  通过"df -h "命令查看当前文件系统的使用情况,可以观察到文件系统的名称、总容量、已用、可用、使用比例、挂载点等信息。
[user1@iz8vb62snc6e5cage5yvz9z /]$ df -h

文件系统的名称 总容量 已用 可用 使用比例 挂载点

Filesystem Size Used Avail Use% Mounted on
/dev/vda1 20G 1.9G 17G 11% /
devtmpfs 3.9G 0 3.9G 0% /dev
tmpfs 3.9G 0 3.9G 0% /dev/shm
tmpfs 3.9G 320K 3.9G 1% /run
tmpfs 3.9G 0 3.9G 0% /sys/fs/cgroup
tmpfs 783M 0 783M 0% /run/user/0
  由于笔者所购服务器还含有50G的数据盘,但是通过"df -h"命令没有查找到。经过查阅阿里云的文档,发现数据盘需要格式化并挂载后才能正常使用。

  下面就演示如何将数据盘分成两个25G的区,格式化分区后分别挂载到/home/user1/redis/data和/home/user1/program。这里需要先创建这两个目录,此处就不再演示。

查看磁盘的信息

  通过" fdisk -l"命令可以查看当前磁盘的信息,本服务器有个20GB的系统盘/dev/vda,和50GB的数据盘/dev/vdb。可以看到磁盘的扇区数,每个扇区的大小(512字节)。
[user1@iz8vb62snc6e5cage5yvz9z /]$ sudo fdisk -l

20G系统盘/dev/vda

Disk /dev/vda: 21.5 GB, 21474836480 bytes, 41943040 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk label type: dos
Disk identifier: 0x000d2717

Device Boot Start End Blocks Id System
/dev/vda1 * 2048 41943039 20970496 83 Linux

50GB的数据盘/dev/vdb

Disk /dev/vdb: 53.7 GB, 53687091200 bytes, 104857600 sectors
Units = sectors of 1 * 512 = 512 bytes #每个扇区的大小(512字节)
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
执行分区操作

  运行 fdisk /dev/vdb对数据盘进行分区,此处创建两个分区,大小分别为25GB。

  步骤1:输入 n 并按回车键:创建一个新分区;如果有旧的分区,可以输入d进行删除。

  步骤2:输入 p 并按回车键:选择主分区类型。创建4个以内的分区,都可以使用主分区类型。

  步骤3:输入分区编号并按回车键,第一个分区的分区编号设置为1,第二个分区的分区编号设置为2。

  步骤4:分别输入第一个扇区的编号和最后一个扇区的编号,此处第一个分区的扇区从2048到52400000,第二个分区的扇区从52400128到104857599。

  如果创建多个分区,重复执行上述4个步骤。

  步骤5:输入 wq 并按回车键,开始分区。
[user1@iz8vb62snc6e5cage5yvz9z ~]$ sudo fdisk /dev/vdb
Welcome to fdisk (util-linux 2.23.2).

Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.

如果有旧的分区,可以输入d进行删除。

Command (m for help): d
Selected partition 3
Partition 3 is deleted

首先输入 n 并按回车键:创建一个新分区。

Command (m for help): n
Partition type:
p primary (0 primary, 0 extended, 4 free) #主分区类型
e extended #扩展分区类型

输入 p 并按回车键:选择主分区类型

Select (default p): p

输入分区编号并按回车键

Partition number (1-4, default 1): 1

输入第一个扇区的编号

First sector (2048-104857599, default 2048):
Using default value 2048

输入最后一个扇区的编号

Last sector, +sectors or +size{K,M,G} (2048-104857599, default 104857599): 52400000
Partition 1 of type Linux and of size 25 GiB is set

重复执行上述4个步骤,创建第二个分区

Command (m for help): n
Partition type:
p primary (1 primary, 0 extended, 3 free)
e extended
Select (default p): p
Partition number (2-4, default 2): 2
First sector (52400001-104857599, default 52400128):
Using default value 52400128
Last sector, +sectors or +size{K,M,G} (52400128-104857599, default 104857599):
Using default value 104857599
Partition 2 of type Linux and of size 25 GiB is set

最后输入 wq 并按回车键,开始分区。

Command (m for help): wq
The partition table has been altered!

Calling ioctl() to re-read partition table.
Syncing disks.
确认分区信息

  再次执行" fdisk -l"命令可以查看当前磁盘的信息,可以看到上述操作创建的分区/dev/vdb1与/dev/vdb2。
[user1@iz8vb62snc6e5cage5yvz9z ~]$ sudo fdisk -l

Disk /dev/vda: 21.5 GB, 21474836480 bytes, 41943040 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk label type: dos
Disk identifier: 0x000d2717

Device Boot Start End Blocks Id System
/dev/vda1 * 2048 41943039 20970496 83 Linux

Disk /dev/vdb: 53.7 GB, 53687091200 bytes, 104857600 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk label type: dos
Disk identifier: 0xc95b5e42

上述操作创建的分区/dev/vdb1与/dev/vdb2

Device Boot Start End Blocks Id System
/dev/vdb1 2048 52400000 26198976+ 83 Linux
/dev/vdb2 52400128 104857599 26228736 83 Linux
创建文件系统

  执行mkfs.ext4 命令,分别在新分区/dev/vdb1与/dev/vdb2上创建ext4类型的文件系统。
[user1@iz8vb62snc6e5cage5yvz9z ~]$ sudo mkfs.ext4 /dev/vdb1
mke2fs 1.42.9 (28-Dec-2013)
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
Stride=0 blocks, Stripe width=0 blocks
inodes, 6549744 blocks
blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=2155872256
block groups
blocks per group, 32768 fragments per group
inodes per group
Superblock backups stored on blocks:

    32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208,

Allocating group tables: done
Writing inode tables: done
Creating journal (32768 blocks): done
Writing superblocks and filesystem accounting information: done
 这里创建的文件系统类型为ext4,阿里云官方文档创建的是ext3,下面从参考的文章中摘录一些内容说明ext3和ext4的关系:

  Linux kernel 自 2.6.28 开始正式支持新的文件系统 Ext4。 Ext4 是 Ext3 的改进版,修改了 Ext3 中部分重要的数据结构,而不仅仅像 Ext3 对 Ext2 那样,只是增加了一个日志功能而已。Ext4 可以提供更佳的性能和可靠性,还有更为丰富的功能:与 Ext3 兼容;更大的文件系统和更大的文件;多块分配;延迟分配;日志校验;在线碎片整理等。

备份并写入分区信息

  首先备份分区信息文件/etc/fstab,然后在该文件下追加/dev/vdb1与/dev/vdb2的分区信息,包括挂载点和文件系统的格式。

备份分区信息文件

[user1@iz8vb62snc6e5cage5yvz9z /]$ sudo cp /etc/fstab /etc/fstab.bak

user1用户使用sudo执行命令扔提示权限不足,切换到root账户下执行命令

[user1@iz8vb62snc6e5cage5yvz9z data]$ sudo echo /dev/vdb1 /home/user1/redis/data ext4 defaults 0 0 >> /etc/fstab
bash: /etc/fstab: Permission denied

追加/dev/vdb1的分区信息,该分区挂载的路径为/home/user1/redis/data,格式为ext4

[root@iz8vb62snc6e5cage5yvz9z data]# echo /dev/vdb1 /home/user1/redis/data ext4 defaults 0 0 >> /etc/fstab

追加/dev/vdb2的分区信息,该分区挂载的路径为/home/user1/program,格式为ext4

[root@iz8vb62snc6e5cage5yvz9z home]# echo /dev/vdb2 /home/user1/program ext4 defaults 0 0 >> /etc/fstab

查看分区信息

[root@iz8vb62snc6e5cage5yvz9z home]# cat /etc/fstab

/etc/fstab

Created by anaconda on Thu Aug 17 07:38:21 2017

Accessible filesystems, by reference, are maintained under '/dev/disk'

See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info

UUID=976105f5-f402-456c-aadd-50de49ff88f9 / ext4 defaults 1 1
/dev/vdb1 /home/user1/redis/data ext4 defaults 0 0
/dev/vdb2 /home/user1/program/ ext4 defaults 0 0
挂载分区

  使用mount将分区挂载到对应的路径下,并使用df -h观察挂载后的文件系统信息。

  到此为止,完成了数据盘的分区、格式化、挂载等工作;不需要重启实例即可开始使用新的文件系统。

使用mount将分区挂载到对应的路径下

[root@iz8vb62snc6e5cage5yvz9z data]# mount /dev/vdb1 /home/user1/redis/data
[root@iz8vb62snc6e5cage5yvz9z data]# mount /dev/vdb2 /home/user1/program

使用df -h观察挂载后的文件系统

[root@iz8vb62snc6e5cage5yvz9z home]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/vda1 20G 1.9G 17G 11% /
devtmpfs 3.9G 0 3.9G 0% /dev
tmpfs 3.9G 0 3.9G 0% /dev/shm
tmpfs 3.9G 328K 3.9G 1% /run
tmpfs 3.9G 0 3.9G 0% /sys/fs/cgroup
tmpfs 783M 0 783M 0% /run/user/0
/dev/vdb1 25G 45M 24G 1% /home/user1/redis/data
/dev/vdb2 25G 45M 24G 1% /home/user1/program

相关实践学习
基于Redis实现在线游戏积分排行榜
本场景将介绍如何基于Redis数据库实现在线游戏中的游戏玩家积分排行榜功能。
云数据库 Redis 版使用教程
云数据库Redis版是兼容Redis协议标准的、提供持久化的内存数据库服务,基于高可靠双机热备架构及可无缝扩展的集群架构,满足高读写性能场景及容量需弹性变配的业务需求。 产品详情:https://www.aliyun.com/product/kvstore     ------------------------------------------------------------------------- 阿里云数据库体验:数据库上云实战 开发者云会免费提供一台带自建MySQL的源数据库 ECS 实例和一台目标数据库 RDS实例。跟着指引,您可以一步步实现将ECS自建数据库迁移到目标数据库RDS。 点击下方链接,领取免费ECS&RDS资源,30分钟完成数据库上云实战!https://developer.aliyun.com/adc/scenario/51eefbd1894e42f6bb9acacadd3f9121?spm=a2c6h.13788135.J_3257954370.9.4ba85f24utseFl
相关文章
|
21天前
|
监控 算法 Linux
Linux内核锁机制深度剖析与实践优化####
本文作为一篇技术性文章,深入探讨了Linux操作系统内核中锁机制的工作原理、类型及其在并发控制中的应用,旨在为开发者提供关于如何有效利用这些工具来提升系统性能和稳定性的见解。不同于常规摘要的概述性质,本文将直接通过具体案例分析,展示在不同场景下选择合适的锁策略对于解决竞争条件、死锁问题的重要性,以及如何根据实际需求调整锁的粒度以达到最佳效果,为读者呈现一份实用性强的实践指南。 ####
|
21天前
|
缓存 监控 网络协议
Linux操作系统的内核优化与实践####
本文旨在探讨Linux操作系统内核的优化策略与实际应用案例,深入分析内核参数调优、编译选项配置及实时性能监控的方法。通过具体实例讲解如何根据不同应用场景调整内核设置,以提升系统性能和稳定性,为系统管理员和技术爱好者提供实用的优化指南。 ####
|
1月前
|
关系型数据库 MySQL Linux
Linux环境下MySQL数据库自动定时备份实践
数据库备份是确保数据安全的重要措施。在Linux环境下,实现MySQL数据库的自动定时备份可以通过多种方式完成。本文将介绍如何使用`cron`定时任务和`mysqldump`工具来实现MySQL数据库的每日自动备份。
109 3
|
20天前
|
存储 Oracle 安全
服务器数据恢复—LINUX系统删除/格式化的数据恢复流程
Linux操作系统是世界上流行的操作系统之一,被广泛用于服务器、个人电脑、移动设备和嵌入式系统。Linux系统下数据被误删除或者误格式化的问题非常普遍。下面北亚企安数据恢复工程师简单聊一下基于linux的文件系统(EXT2/EXT3/EXT4/Reiserfs/Xfs) 下删除或者格式化的数据恢复流程和可行性。
|
3月前
|
机器学习/深度学习 安全 网络协议
Linux防火墙iptables命令管理入门
本文介绍了关于Linux防火墙iptables命令管理入门的教程,涵盖了iptables的基本概念、语法格式、常用参数、基础查询操作以及链和规则管理等内容。
242 73
|
1月前
|
Unix Linux Shell
linux入门!
本文档介绍了Linux系统入门的基础知识,包括操作系统概述、CentOS系统的安装与远程连接、文件操作、目录结构、用户和用户组管理、权限管理、Shell基础、输入输出、压缩打包、文件传输、软件安装、文件查找、进程管理、定时任务和服务管理等内容。重点讲解了常见的命令和操作技巧,帮助初学者快速掌握Linux系统的基本使用方法。
78 3
|
2月前
|
监控 Linux 云计算
Linux操作系统在云计算环境中的实践与优化###
【10月更文挑战第16天】 本文探讨了Linux操作系统在云计算环境中的应用实践,重点分析了其在稳定性、安全性和高效性方面的优势。通过具体案例,阐述了Linux如何支持虚拟化技术、实现资源高效分配以及与其他开源技术的无缝集成。文章还提供了针对Linux系统在云计算中的优化建议,包括内核参数调整、文件系统选择和性能监控工具的应用,旨在帮助读者更好地理解和应用Linux于云计算场景。 ###
63 3
|
2月前
|
Linux
linux开机挂载镜像
【10月更文挑战第1天】在 Linux 系统中,开机挂载镜像通常涉及几个关键步骤,包括创建挂载点、编辑配置文件以及重新加载配置
101 0
|
2月前
|
机器学习/深度学习 Linux 编译器
Linux入门3——vim的简单使用
Linux入门3——vim的简单使用
64 1
|
2月前
|
Linux Shell Windows
Linux入门1——初识Linux指令
Linux入门1——初识Linux指令
36 0
Linux入门1——初识Linux指令