热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

Linux学习0927

2019独角兽企业重金招聘Python工程师标准4.104.114.12lvm讲解4.13磁盘故障小案例一、lvm讲解LVM是LogicalVolumeManager

2019独角兽企业重金招聘Python工程师标准>>> hot3.png

4.10/4.11/4.12 lvm讲解

4.13 磁盘故障小案例

 

一、lvm讲解

    LVM是 Logical Volume Manager(逻辑卷管理)的简写,它是Linux环境下对磁盘分区进行管理的一种机制,LVM是建立在硬盘和分区之上的一个逻辑层,来提高磁盘分区管理的灵活性。

    LVM最大的特点就是可以对磁盘进行动态管理。因为逻辑卷的大小是可以动态调整的,而且不会丢失现有的数据。如果我们新增加了硬盘,其也不会改变现有上层的逻辑卷。作为一个动态磁盘管理机制,逻辑卷技术大大提高了磁盘管理的灵活性。

    LVM工作原理:LVM的工作原理其实很简单,它就是通过将底层的物理硬盘抽象的封装起来,然后以逻辑卷的方式呈现给上层应用。在传统的磁盘管理机制中,我们的上层应用是直接访问文件系统,从而对底层的物理硬盘进行读取,而在LVM中,其通过对底层的硬盘进行封装,当我们对底层的物理硬盘进行操作时,其不再是针对于分区进行操作,而是通过一个叫做逻辑卷的东西来对其进行底层的磁盘管理操作。比如说我增加一个物理硬盘,这个时候上层的服务是感觉不到的,因为呈现给上层服务的是以逻辑卷的方式。

  

e2769c5459525a2e6925b866ffc97313c1c.jpg

  •     进行实验:

           fdisk /dev/sdc

        (n)分成三个分区,每个分区1G

        (t)把分区类型改为8e,8e类型表示就是lvm。只有这样才能做物理卷

            1fba376042d90edb23ca264bfeb16f831c3.jpg

            重复创建3个分区,并修改类型为8e,创建完成后"w"保存退出

            20a9a393fcea1a6fae65d4fcbb5bdda166a.jpg

  •     查看创建分区的文件

            ls /dev/sdc1 /dev/sdc2/ /dev/sdc3

            如果这些文件不存在,可以执行:partprobe  命令来进行生成

            10154fe559e8d4241cd651f47447477b1e6.jpg 

 

  •         创建物理卷 

                命令:pvcreate 

                如果此命令无法使用,需要安装lvm:yum install -y lvm2

                ps:如果yum安装的时候只知道命令不知道包名可以用:yum provides "/*/使用的命令"  来进行查找安装。

                如:以上我们只知道pvcreate这个命令,但是不知道包名就可以  yum provides "/*/pvcreate"  这样来进行查找安装。

                  

                进行创建: 

                 pvcreate /dev/sdc1

                 pvcreate /dev/sdc2

                 pvcreate /dev/sdc3

                bffa7c4ac33e1194c33f5cc1cd3d1dc12fe.jpg

                查看创建的物理卷:

                命令: pvdisplay

            52db1d692adfe873fc73328b1179f585ff6.jpg

            或者使用pvs命令查看,这样更加直观:

            1c0f29798d20c83dc9ecea883a1454a4f8f.jpg

  •    创建物理卷卷组:

           命令:vgcrate  卷组名   物理卷

           使用两个物理卷创建一个卷组:

            vgcreate vg1  /dev/sdb1  /dev/sdb2

            创建完成后使用vgdisplay查看卷组信息:
            0918c101ba3f6bfac0dfcdcc4c25985913f.jpg

             或者使用vgs命令查看

            732029ed12dffc633cc16d3267dae2946a6.jpg

  • 创建逻辑卷

        命令:lvcreate -L 大小M -n 逻辑卷名  物理卷卷组(表示从哪个卷组中划分)

                  lvcreate -L 100M -n lv1 vg1 

                 003c3dba1f642710ed5cd985d0ede7ef34d.jpg  

  • 格式化逻辑卷

       命令:mkfs.ext4 /dev/卷组/逻辑卷

                 mkfs.ext4 /dev/vg1/lv1

       6fe066c74da7c6475287c3e6198454ba85a.jpg

  •  挂载

        命令:mount  /dev/vg1/lv1 /mnt

        70ce9ae046830daf1d2cd6b96f58a263312.jpg

  • 扩容逻辑卷

        命令:lvsize   -L 大小 /dev/卷组/逻辑卷

                  lvresize -L 200M /dev/vg1/lv1

                  /dev/vg1/lv1已经挂载最好是先取消挂载,再进行扩容才符合规范

                1f81a8f94c37f98cd8d0a6c52022879f828.jpg

         检查磁盘是否有错误:

                e2fsck -f /dev/vg1/lv1

                ed90eab80b85da4d2b2cf16400ea8a87b87.jpg

                更新逻辑卷信息:

                命令:resize2fs /dev/vg1/lv1 

                更新完后再查看大小发现已经变成190M了

                0f9ea280456b8bada4b62dbf213d7b849a3.jpg

  • 缩减逻辑卷

        先取消挂载,然后进行检测逻辑卷是否有错误

        c90d6c641719f7689ecf0dbbbb75072ac1d.jpg

        把逻辑卷大小改为100M,和之前扩容类似:

        更新逻辑卷信息:resize2fs /dev/vg1/lv1  100M

         指定缩减逻辑卷大小:lvresize -L 100M  /dev/vg1/lv1

         144a62b3cbd01e3f6320c401679bfe2a3a4.jpg

        查看逻辑卷信息: lvdisplay

        大小已经变为100m

        382f3aef0fa9853f556acf85988a18ab1fe.jpg

        再进行挂载:

        挂载后查看大小已经变为了100M

        a28164bd544e8dd93b040eb3e2dec2caa09.jpg

        扩容和缩减并不会导致目录文件损坏,除非是在缩减时目录文件大于缩减大小,如目录本身150M你把它缩减到100M肯定会出问题的。

        以上操作的命令只针对ext4及以下文件系统。

    

  •   扩容xfs类型文件系统

           取消逻辑卷挂载目录:umount /mnt/

            格式化逻辑卷为xfs:mkfs.xfs -f /dev/vg1/lv1  /mnt/

            b51743cc48d45e94cf7cc61382498b83472.jpg

            挂载逻辑卷: mount /dev/vg1/lv1  /mnt/

            查看逻辑卷信息:lvs

            指定逻辑卷大小:lvreszie -L 300M  /dev/vg1/lv1 

            a754c081800bbcd6af1fdd26018633bc80c.jpg

           xfs_growfs同步:

            xfs_growfs /dev/vg1/lv1

            483a3b3cf93cae15c015eeb52523f94d42a.jpg

            查看一下扩容情况:

            6cc34162480c81a7abcdf361f9021d39cef.jpg

  •    扩展卷组:

            把之前物理卷sdc3添加到卷组vg1里

            命令:vgextend 卷组名  /dev/物理卷

                      vgextend vg1 /dev/sdc3

            添加完后查看,已经增加到3g

            f40cd95177d31e605cbea66d0011c2c4fa9.jpg            

 

二、磁盘故障小案例

    2127f61bfecb87cec717ed8efee6ee2a9e7.jpg

    如果出现以上或者类似的信息,往往是因为挂载点出现问题。

    解决方法:

    在光标处输入root密码,登录系统

    编辑/etc/fstab配置文件

    删除:/dev/sdb 这一行

    重启:reboot 即可。


转载于:https://my.oschina.net/u/3755326/blog/2209643


推荐阅读
  • Python 工具推荐 | PyHubWeekly 第二十一期:提升命令行体验的五大工具
    本期 PyHubWeekly 为大家精选了 GitHub 上五个优秀的 Python 工具,涵盖金融数据可视化、终端美化、国际化支持、图像增强和远程 Shell 环境配置。欢迎关注并参与项目。 ... [详细]
  • Symfony是一个功能强大的PHP框架,以其依赖注入(DI)特性著称。许多流行的PHP框架如Drupal和Laravel的核心组件都基于Symfony构建。本文将详细介绍Symfony的安装方法及其基本使用。 ... [详细]
  • 离线安装Grafana Cloudera Manager插件并监控CDH集群
    本文详细介绍如何离线安装Cloudera Manager (CM) 插件,并通过Grafana监控CDH集群的健康状况和资源使用情况。该插件利用CM提供的API接口进行数据获取和展示。 ... [详细]
  • HTML基础入门指南
    本文将深入浅出地介绍HTML的基础知识,包括其定义、开发工具、制定机构、特性、基本标签及更多实用内容。 ... [详细]
  • Python自动化测试入门:Selenium环境搭建
    本文详细介绍如何在Python环境中安装和配置Selenium,包括开发工具PyCharm的安装、Python环境的设置以及Selenium包的安装方法。此外,还提供了编写和运行第一个自动化测试脚本的步骤。 ... [详细]
  • 主调|大侠_重温C++ ... [详细]
  • CentOS 7.6环境下Prometheus与Grafana的集成部署指南
    本文旨在提供一套详细的步骤,指导读者如何在CentOS 7.6操作系统上成功安装和配置Prometheus 2.17.1及Grafana 6.7.2-1,实现高效的数据监控与可视化。 ... [详细]
  • 本文深入探讨了 Delphi 中类对象成员的核心概念,包括 System 单元的基础知识、TObject 类的定义及其方法、TClass 的作用以及对象的消息处理机制。文章不仅解释了这些概念的基本原理,还提供了丰富的补充和专业解答,帮助读者全面理解 Delphi 的面向对象编程。 ... [详细]
  • 本文将详细介绍多个流行的 Android 视频处理开源框架,包括 ijkplayer、FFmpeg、Vitamio、ExoPlayer 等。每个框架都有其独特的优势和应用场景,帮助开发者更高效地进行视频处理和播放。 ... [详细]
  • 本文提供了 CIW Dreamweaver MX2004 认证考试的详细试题解析,涵盖不同难度级别的选择题、多项选择题和判断题。通过这些题目,考生可以更好地理解考试内容并为实际考试做好准备。 ... [详细]
  • 从码农到创业者:我的职业转型之路
    在观察了众多同行的职业发展后,我决定分享自己的故事。本文探讨了为什么大多数程序员难以成为架构师,并阐述了我从一家外企离职后投身创业的心路历程。 ... [详细]
  • Linux环境下进程间通信:深入解析信号机制
    本文详细探讨了Linux系统中信号的生命周期,从信号生成到处理函数执行完毕的全过程,并介绍了信号编程中的注意事项和常见应用实例。通过分析信号在进程中的注册、注销及处理过程,帮助读者理解如何高效利用信号进行进程间通信。 ... [详细]
  • 本文将详细介绍如何在没有显示器的情况下,使用Raspberry Pi Imager为树莓派4B安装操作系统,并进行基本配置,包括设置SSH、WiFi连接以及更新软件源。 ... [详细]
  • 配置PHPStudy环境并使用DVWA进行Web安全测试
    本文详细介绍了如何在PHPStudy环境下配置DVWA( Damn Vulnerable Web Application ),并利用该平台进行SQL注入和XSS攻击的练习。通过此过程,读者可以熟悉常见的Web漏洞及其利用方法。 ... [详细]
  • Vue 开发与调试工具指南
    本文介绍了如何使用 Vue 调试工具,包括克隆仓库、安装依赖包、构建项目以及在 Chrome 浏览器中加载扩展的详细步骤。 ... [详细]
author-avatar
mobiledu2502924027
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有