运维经验|Linux虚拟机如何挂载磁盘 您所在的位置:网站首页 linux挂载日志 运维经验|Linux虚拟机如何挂载磁盘

运维经验|Linux虚拟机如何挂载磁盘

2024-07-01 01:21| 来源: 网络整理| 查看: 265

📫 作者简介:「六月暴雪飞梨花」,专注于研究Java,就职于科技型公司后端工程师 🏆 近期荣誉:华为云云享专家、阿里云专家博主、腾讯云优秀创作者 🔥 三连支持:欢迎 ❤️关注、👍点赞、👉收藏三连,支持一下博主~

引言

今天早上在做业务系统日常巡检,发现日志盘没有办法写入进去了,第一个想到的就是磁盘被撑爆了。很好奇就去看了下,果不其然,满满当当的日志文件。为了解决这个问题,下面开始自己的处理方案,以供需要之人。 这个问题很好解决,我一般的处理办法有两种。 第一种就是根据需求来删减日志的,可以删除过期的日志或者时间久远的日志文件。一般来讲,大家应该都会有相应的调度任务来处理这个。 第二种就是增加磁盘空间,一般情况下,我们都是增加挂载。 那么问题来了,如何进行磁盘挂载呢?下面就让我来带着大家一起实践下吧。

环境准备

实验机器环境(虚拟机):Linux ky10.x86_64 、Linux CentOS 7.6_x86_64 其中本次实践演示为CentOS 7.6虚拟机。

实践挂载1、 检查磁盘存储

在检查磁盘是否已经被垃圾文件占用,我们通常会使用命令 df -h 来检查是否已经还有存储空间,此命令只会展示已经挂载在节点上的磁盘是否被占用,而未挂载的磁盘是不会被显示到此命令的输出。所以,我们需要额外的命令工具来做支撑,实验之前,先检查下机器已经挂载的磁盘,可使用lsblk命令来查询,如果不了解这个命令,

注意:Linux下对SCSI和SATA设备是以sd命名的,第一个SCSI设备是sda,第二个是sdb…以此类推。一般主板上有两个SCSI接口,因此一共可以安装4个SCSI设备。主SCSI上的两个设备分别对应sda和sdb,第二个SCSI口上的设备对应sdc和sdd。

2、 先挂载一个盘

当我们磁盘满了,此时需要从外部挂载一个硬盘来存储日志信息或者备份信息。为了方便实践操作,此时我先挂载一个盘。当然,如果这个是在UI界面程序上面操作比较好操作,此时演示的为命令行挂载。执行命令 lsblk

3、 查看未挂载的磁盘

Linux fdisk 是一个创建和维护分区表的程序,它兼容 DOS 类型的分区表、BSD 或者 SUN 类型的磁盘列表。我们可以使用命令fdisk -l查看还未挂载到节点的磁盘。

代码语言:javascript复制[root@~ ~]# fdisk -l Disk /dev/sda:50 GiB,53687091200 字节,104857600 个扇区 磁盘型号:VMware Virtual S 单元:扇区 / 1 * 512 = 512 字节 扇区大小(逻辑/物理):512 字节 / 512 字节 I/O 大小(最小/最佳):512 字节 / 512 字节 磁盘标签类型:dos 磁盘标识符:0x9366b0cc 设备 启动 起点 末尾 扇区 大小 Id 类型 /dev/sda1 * 2048 2099199 2097152 1G 83 Linux /dev/sda2 2099200 104857599 102758400 49G 8e Linux LVM Disk /dev/sdb:1 TiB,1099511627776 字节,2147483648 个扇区 磁盘型号:VMware Virtual S 单元:扇区 / 1 * 512 = 512 字节 扇区大小(逻辑/物理):512 字节 / 512 字节 I/O 大小(最小/最佳):512 字节 / 512 字节 Disk /dev/mapper/klas-root:45.4 GiB,48364519424 字节,94461952 个扇区 单元:扇区 / 1 * 512 = 512 字节 扇区大小(逻辑/物理):512 字节 / 512 字节 I/O 大小(最小/最佳):512 字节 / 512 字节 Disk /dev/mapper/klas-swap:3.98 GiB,4244635648 字节,8290304 个扇区 单元:扇区 / 1 * 512 = 512 字节 扇区大小(逻辑/物理):512 字节 / 512 字节 I/O 大小(最小/最佳):512 字节 / 512 字节 [root@xxx ~]#

如上所示,使用fdisk之后可以看到有四个Disk盘,其中Disk /dev/sdb为刚挂载的盘。此时使用df -h也还是看不到已经挂载的盘。

4、 实施磁盘分区

【格式】fdisk [盘号/盘位置/盘节点] 【实践】执行 fdisk /dev/sdb 在Linux进行挂载。

代码语言:javascript复制[root@xxx ~]# fdisk /dev/sdb …… 命令(输入 m 获取帮助):n # 第一步 直接输入n,新建一个分区(可以参考附录第一步骤命令) Partition type: p primary (0 primary, 0 extended, 4 free) e extended Select (default p): p # 第二步 只是选择主分区 分区号 (1-4,默认 1):1 # 第三步 默认第一分区 起始 扇区 (2048-41943039,默认为 2048):# 第四步 开始大小,使用默认,直接回车 将使用默认值 2048 结束 扇区, +扇区 or +size{K,M,G} (2048-41943039,默认为 41943039):# 第五步 结束大小,使用默认,直接回车 分区 1 已设置为 Linux 类型,大小设为 10 GiB 命令(输入 m 获取帮助):W # 第六步 写入磁盘,保存并退出。 The partition table has been altered! Calling ioctl() to re-read partition table. 正在同步磁盘。

通过上面六步走,我们可以临时挂载(机器重启后失效)。这六步骤分别为: (1)第一步 直接输入n,新建一个分区(可以参考4、(1)帮助第一个命令) (2)第二步 只是选择主分区 (3)第三步 默认第一分区 (4)第四步 开始大小,使用默认,直接回车 (5)第五步 结束大小,使用默认,直接回车 (6)第六步 写入磁盘,保存并退出。

简单的六步走方式是懒人操作,执行的命令为: n > p > 1 > 回车 > 回车 > w 。主打一个懒人操作,当然了,这个也是在熟悉命令的情况下操作。如果不熟悉命令,可以参考下面的执行帮助命令来查询。

5、 格式化写入文件系统

使用 mkfs.ext4 /dev/sdb1 命令来格式化磁盘并写入到文件系统中。

注意:这里可以用ext3,也可以用ext4。可以到/dev目录下查看有哪些格式。

6、 实施挂载

(1)创建挂载节点 这个比较简单,就是创建一个文件夹。 mkdir disk_mount (2)将新磁盘挂载到新节点 【格式】mount [磁盘节点] [目录节点] mount /dev/sdb1 /disk_mount

7、 检查是否挂载成功

此时,可以使用df -h命令来查询是否挂载成功。

8、 设置开机启动挂载

将挂载信息按指定格式写入到 /etc/fstab文件中(这样主机重启后,挂载才能永久有效),可以将下面的信息追加到文件中。 /dev/sdb1 /disk_mount ext4 defaults 0 1 // 如果上面用的是ext3,这里也要用ext3; 此时,如果你在测试环境,可以重启试试。

9、 迁移日志到挂载盘

上面的挂载已然成功,那么回到最初的问题,可以将日志迁移到挂载盘中,是业务正常运行。

代码语言:javascript复制cp -rf /data/backup/* /disk_mount/ mv /data/backup/* /disk_mount/

附录:第一步骤命令 输入m命令可以查阅帮助命令。

命令操作代码语言:javascript复制 a toggle a bootable flag b edit bsd disklabel c toggle the dos compatibility flag d delete a partition g create a new empty GPT partition table G create an IRIX (SGI) partition table l list known partition types m print this menu n add a new partition o create a new empty DOS partition table p print the partition table q quit without saving changes s create a new empty Sun disklabel t change a partition's system id u change display/entry units v verify the partition table w write table to disk and exit问题与解决办法挂载点不存在

执行挂载新节点到目录上时提示挂载节点不存在时,首先检查下创建的目录的权限问题或者创建的目录结构不对,一般当前用户下,也就是在最外层;其次有些时候可能系统性能比较慢,稍等等;如果还不可以,最后可以删除进行重新mout挂载。

代码语言:javascript复制$ /disk_mount mount point does not exist.结束语

通过本文关于在Linux下如何挂载磁盘,以及挂载后开机启动,想必读者都对磁盘分区挂载有所了解。个人觉得Linux中的工具不像windows,可以使用图形化界面程序处理,但是命令也可以完美的解决问题,尤其是在线上环境中历练我们的命令功底,而且看了很多国产操作系统在被应用到线上环境后,这是其他操作系统所不具备的优势。总的体验下来,国产操作系统非常好用,功能也很强大,值得入手体验一番!

欢迎关注博主 「六月暴雪飞梨花」 或加入【六月暴雪飞梨花社区】一起学习和分享Linux、C、C++、Python、Matlab,机器人运动控制、多机器人协作,智能优化算法,滤波估计、多传感器信息融合,机器学习,人工智能等相关领域的知识和技术。



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有