银河麒麟系统安装设备类型选择lvm简单模式之后,数据写入导致失败导致系统重启无法正常加载

银河麒麟系统安装设备类型选择lvm简单模式之后,数据写入导致失败导致系统重启无法正常加载

      • 一 系统环境
          • 1.1 系统版本信息
          • 1.2 通过镜像安装的过程中选择设备类型选择的是lvm简单模式
      • 二 问题描述
      • 三 问题修复过程
          • 3.1 挂载ISO镜像,引导到字符终端界面
          • 3.2 修复逻辑卷并挂载测试
            • (1)激活系统盘中的逻辑卷
            • (2)查看激活的逻辑卷
            • (3)修复root逻辑卷
            • (4)创建临时挂载点
            • (5)挂载测试
            • (6)查看挂载情况
            • (7)修改硬盘为第一引导项,重启正常进入系统
      • 四 问题排查
          • 4.1 使用vgs lvs查看逻辑卷状态
          • 4.2 使用df查看分区使用
          • 4.3 使用lsblk查看分区情况
          • 4.4 根据查询情况总结
      • 五 具体结论
      • 六 LVM精简池和精简卷的概念
          • 6.1 LVM精简配置介绍
          • 6.2 精简池概念
          • 6.3 精简池作用
          • 6.4 精简卷概念
      • 七 后续建议

一 系统环境

1.1 系统版本信息
[root@localhost ~]# nkvers 
############## Kylin Linux Version #################
Release:
Kylin Linux Advanced Server release V10 (Lance)Kernel:
4.19.90-52.22.v2207.ky10.x86_64Build:
Kylin Linux Advanced Server
release V10 (SP3) /(Lance)-x86_64-Build23/20230324
#################################################
1.2 通过镜像安装的过程中选择设备类型选择的是lvm简单模式

在这里插入图片描述

二 问题描述

(1)业务组在上传数据(18G)之后,进行系统重启,无法正常进入系统,系统的根分区开机无法自动挂载,到Control-D界面(由于是根分区挂载不上,所以在此界面输入root密码也无法正常验证)
(2)在修复完成之后,正常进入系统。业务组再次上传数据(18G)之后,重启系统发现又出现开始的问题。
#机器在之前做过/分区扩容的操作,使用lvextend扩容的klas-root这个卷,扩容了200G

在这里插入图片描述

三 问题修复过程

3.1 挂载ISO镜像,引导到字符终端界面

挂载系统的iso镜像文件,将虚拟机第一引导模式更改为cdrom,从光盘进行引导。引导,选择“Install Kylin Linux Advanced Server V10”(如下图1所示)。到语言选择界面(如下图2所示),按ctrl+alt+f2组合键到字符界面(如下图3所示)。
在这里插入图片描述
在这里插入图片描述在这里插入图片描述

3.2 修复逻辑卷并挂载测试
(1)激活系统盘中的逻辑卷
vgchange -ay
(2)查看激活的逻辑卷
lvs
(3)修复root逻辑卷
xfs_repair -L /dev/klas/root
(4)创建临时挂载点
mkdir a/
(5)挂载测试
mount /dev/klas/root a/
(6)查看挂载情况
df -h
(7)修改硬盘为第一引导项,重启正常进入系统

在这里插入图片描述
在这里插入图片描述

四 问题排查

在修复完成之后,进入系统。业务组再次上传数据(18G)之后,重启系统发现又出现开始的问题

4.1 使用vgs lvs查看逻辑卷状态
[root@localhost ~]# vgsVG   #PV #LV #SN Attr   VSize   VFree klas   2   3   0 wz--n- 297.99g <219.60g
[root@localhost ~]# lvsLV     VG   Attr       LSize   Pool   Origin Data%  Meta%  Move Log Cpy%Sync Convertpool00 klas twi-aotz-- <62.32g               100.00 97.11                           root   klas Vwi-aotz-- 281.92g pool00        22.11                                  swap   klas -wi-ao----  16.00g                                  
4.2 使用df查看分区使用
[root@localhost log]# df -h
Filesystem              size Used Avail Use% Mounted on
devtmpfs                7.2G    0  7.2G   0% /dev
tmpfs                   7.3G  20K  7.3G   1% /dev/shm
tmpfs                   7.3G 9.3M  7.2G   1% /run
tmpfs                   7.3G    0  7.3G   0% /sys/fs/cgroup
/dev/mapper/klas-root   282G  64G  219G  23% /
tmpfs                   7.3G 340K  7.3G  18  /tmp
/dev/sda1               2.0G 187M  1.9G  10% /boot
tmpfs                   1.5G  52K  1.5G  18% /run/user/0 
/dev/sr0                4.1G 4.1G  0    100% /run/media/root/Kylin-Server-10
4.3 使用lsblk查看分区情况
[root@localhost ~]# lsblk
NAME                    MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
sda                       8:0    0   100G  0 disk 
├─sda1                    8:2    0     2G  0 part /boot
└─sda2                    8:3    0    98G  0 part ├─klas-pool00_tmeta   253:0    0    36M  0 lvm  │ └─klas-pool00-tpool 253:2    0  62.3G  0 lvm  │   ├─klas-root       253:3    0 281.9G  0 lvm  /│   └─klas-pool00     253:5    0  62.3G  1 lvm  └─klas-pool00_tdata   253:1    0  62.3G  0 lvm  │ └─klas-pool00-tpool 253:2    0  62.3G  0 lvm  │   ├─klas-root       253:3    0 281.9G  0 lvm  /│   └─klas-pool00     253:5    0  62.3G  1 lvm  ├─klas-swap           253:4    0    16G  0 lvm  [SWAP]
sr0                      11:0    1   4.3G  0 rom  /run/media/root/Kylin-Server-10
4.4 根据查询情况总结

(1)vgs,lvs发现在vg卷组中创建了一个精简池,在精简池中创建了一个精简卷。并非采用在vg卷组中创建lv逻辑卷的方式去管理。
(2)lvs显示pool00这个精简池的Data%数值为100.00%,Meta%数值为97.11%
(2)df -h查看/分区实际200多GB,可用空间还有70%多。
(3)在排查过程中使用dmesg命令发现dm-3设备一直有磁盘I/O error相关的报错。

五 具体结论

1、系统在安装的时候,设备类型选择了lvm简单配置,导致系统在安装过程中创建了精简池和精简卷(实际使用者不知道创建了精简卷)。
2、按照传统的扩容方式去对跟分区进行扩容,也就是使用lvextend命令对klas-root这个精简卷去操作,df -h查看确实是扩容成功了。
3、导致出现的情况是:精简池的大小为 63GB左右,精简池下边精简卷(klas-root)的精简卷大小为 281GB。由于精简卷是由精简池管理,所以给klas-root卷扩容的200多GB空间虽然扩容成功了,但是无法使用。
4、系统跟分区63GB,已经使用了55GB,在传输18GB数据的过程中,把根分区写满了,导致根分区出现异常。重启无法过程中无法正常挂载。
5、正常来说的话应该是要扩容精简池(pool00),而不是卷(klas-root)。

六 LVM精简池和精简卷的概念

6.1 LVM精简配置介绍

精简配置(Thin Provisioning)指分配的资源量超过实际的物理资源量,类似于现实社会中的“超售”概念。

LVM的精简配置中有两个要素,分别是精简池和精简卷。

6.2 精简池概念

精简池是一个特殊的普通LV,在它建立时会立即从VG中分配空间,与正常的LV没有什么不同;但是这个LV不能被创建文件系统直接使用,而是处于一种特殊的格式,包含数据和元数据两个部分。

6.3 精简池作用

是为精简卷提供空间,而精简卷本身不能从VG中直接获取空间

6.4 精简卷概念

精简卷和普通卷的根本差异,在于其创建时,并不从VG中真的分配空间,而是虚拟的分配空间,当进行写入时,则会写入到对应的精简池中。

需要注意的是,虽然精简池可以实现自动扩展,但是VG并不能自动扩展,因为PV提供的空间是有限的。在使用精简配置时,需要注意VG的剩余量,对于大型的生产环境,必须使用服务器监控工具进行监视,来避免资源耗尽无法写入的情况。

七 后续建议

(1)创建新的虚拟机模板,删除旧的。并且在安装的时候设备类型选择lvm模式而不是lvm简单模式。
(2)现有的虚拟机不要将扩容的200GB进行缩容,可能会出现未知问题导致根分区无法修复。
(3)如果现有机器还需要使用的话,添加磁盘,扩容精简池(pool00)的空间,而不是卷(klas-root)。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/769844.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

茶饮品牌抖音账号规划流量运营策划方案

【干货资料持续更新&#xff0c;以防走丢】 茶饮品牌抖音账号规划流量运营策划方案 部分资料预览 资料部分是网络整理&#xff0c;仅供学习参考。 抖音运营资料合集&#xff08;完整资料包含以下内容&#xff09; 目录 冷启动期 1. 直播前期准备 - 进行DOUA/B测试&#xff0…

jupyter操作LSTM模型,词向量模型理解

1.jupyter没有torch模块&#xff0c;参考下面链接的解决办法 【jupyter notebook安装配置教程&#xff0c;导入pytorch解决No module named torch-哔哩哔哩】 https://b23.tv/jYGvyVR 2.jupyter中没有某一模块怎么办&#xff0c;可以用pycharm打开一个项目&#xff0c;在该项…

人工智能三剑客NumPy、pandas、matplotlib和Jupyter四者之间的关系

NumPy 主要用途&#xff1a;NumPy&#xff08;Numerical Python的缩写&#xff09;主要用于处理大型多维数组和矩阵的科学计算。它提供了一个高性能的多维数组对象&#xff0c;以及用于数组操作的工具。与其他三者的联系&#xff1a;NumPy是pandas和matplotlib的基础库之一。许…

【C++】报错:multi-line comment

1、C/C中的注释 在C/C语言中&#xff0c;在对源文件做预处理的时候&#xff0c;有两条基本原则&#xff1a; 凡是以“//”开头的为单行注释凡是以“\”结尾的代表此行尚未结束 于是预处理器在处理的时候会先按第二条规则&#xff0c;看每行的末尾的那个字符是不是”\”,是的…

网络七层模型之应用层:理解网络通信的架构(七)

&#x1f90d; 前端开发工程师、技术日更博主、已过CET6 &#x1f368; 阿珊和她的猫_CSDN博客专家、23年度博客之星前端领域TOP1 &#x1f560; 牛客高级专题作者、打造专栏《前端面试必备》 、《2024面试高频手撕题》 &#x1f35a; 蓝桥云课签约作者、上架课程《Vue.js 和 E…

蓝桥杯算法基础(29)字符串匹配(RabinKarp)(KMP)(前缀树,字典树,trie,后缀数组,高度数组)

RabinKarp RabinKarp S:ABABAB m个 P:ABB n个1.朴素算法&#xff0c;挨个匹配 2.哈希法 hash->滚动哈希 c0*31^2c1*31^1c2类似于进制的求法求hash值(c0*31c1)*31c2 hash(p)o(n) hash(s)o(m*n)private static void match(String p,String s){long hash_phash(p);int …

createDocumentFragment()用法总结

createDocumentFragment()用法总结 1.描述 DocumentFragments 是DOM节点。它们不是主DOM树的一部分。通常的用例是创建文档片段,将元素附加到文档片段,然后将文档片段附加到DOM树。在DOM树中,文档片段被其所有的子元素所代替。 因为文档片段存在于内存中,并不在DOM树中,…

hcia datacom课程学习(3):http与https、FTP

1.超文本传输协议&#xff1a;http与https &#xff08;1&#xff09;用来访问www万维网。 wwwhttp&#xff0b;html&#xff0b;URLweb &#xff08;2&#xff09;它们提供了一种发布和接受html界面的方法&#xff1a;当在网页输入URL后&#xff0c;从服务器获取html文件来…

Java项目基于Docker打包发布

一、后端项目 1.打包应用 mvn clean package -DskipTests 2、新建dockerfile文件 #基础镜像 FROM openjdk:8 #工作空间 WORKDIR /opt #复制文件 COPY wms-app-1.0-SNAPSHOT.jar app.jar&#xff08;add也可以&#xff09; #配置容器暴漏的端口 EXPOSE 8080 //不暴露端口使用…

vue的常用指令

v-bind&#xff1a;用于响应地更新 HTML 属性。 <img v-bind:src"imageSrc"> <!-- 简写形式 --> <img :src"imageSrc"> v-on&#xff1a;用于监听 DOM 事件&#xff0c;并在触发时运行一些 JavaScript 代码。 <button v-on:cli…

c语言函数大全(Q开头)

c语言函数大全(Q开头) There is no nutrition in the blog content. After reading it, you will not only suffer from malnutrition, but also impotence. The blog content is all parallel goods. Those who are worried about being cheated should leave quickly. 函数名…

软件测试|Python random模块,超乎想象的强大

Python的random模块是一个非常强大的工具&#xff0c;用于生成随机数和随机选择。它提供了许多函数和方法&#xff0c;可以满足各种随机化需求。本文将介绍random模块的基本功能和常见用法&#xff0c;以帮助读者更好地理解和利用这个模块。 返回整数 random.randange() 语法…

淘宝店商家爬虫工具 天猫店卖家电话采集软件使用指南

淘宝店商家爬虫工具是一款用于采集天猫店卖家电话号码的软件。本文将提供使用指南&#xff0c;并附带相关代码&#xff0c;帮助用户快速了解和使用该软件。 代码示例&#xff1a; import requests from bs4 import BeautifulSoup# 设置请求头 headers {User-Agent: Mozilla/…

关于 FastAPI 路径参数,你知道多少?

你好&#xff0c;我是 shengjk1&#xff0c;多年大厂经验&#xff0c;努力构建 通俗易懂的、好玩的编程语言教程。 欢迎关注&#xff01;你会有如下收益&#xff1a; 了解大厂经验拥有和大厂相匹配的技术等 希望看什么&#xff0c;评论或者私信告诉我&#xff01; 文章目录 一…

建立远程 Git 代码仓库

一、建立远程代码库 要在 Git 中建立远程代码库&#xff0c;你通常需要在代码托管平台上创建一个新的远程仓库&#xff0c;然后将本地仓库与之关联。以下是一般步骤&#xff1a; 在代码托管平台上创建远程仓库&#xff1a; 登录到你选择的代码托管平台&#xff08;如 GitHub、…

React Developer Tools安装

问题描述 在react开发中&#xff0c;需要插件来帮助我们开发&#xff0c;例如&#xff1a; 方法 &#xff08;可能需要魔法 进去后搜索&#xff1a; 点击下载即可

【Nebula笔记】基础操作

目录 一、预备~ 二、基础操作 (一) 图空间 1. 创建图空间 2. 清空图空间 3. 其他 4. FAQ 执行DROP SPACE语句删除图空间后&#xff0c;为什么磁盘的大小没变化&#xff1f; (二) 点类型 1. 创建Tag 2. 删除Tag 3. 更新Tag 4. 其他 (三) 边类型 1. 创建Edge type…

git如何在某个commitId的状态提交到一个分支

有些时候&#xff0c;我们在使用子仓库&#xff0c;或者其他情况&#xff0c;会有一个状态是当前的git仓库是在一个commitId上&#xff0c;而没有在一个分支上&#xff1a; 这时如果想要把基于这个commitId创建一个分支&#xff0c;可以使用下面这个命令&#xff1a; git push…

HCIA实验

实验目的&#xff1a; 1、R6为ISP&#xff0c;接口IP地址均为公有地址&#xff0c;该设备只能配置IP地址&#xff0c;之后不能再对其进行任何配置&#xff1b; 2、R1-R5为局域网&#xff0c;私有IP地址192.168.1.0/24&#xff0c;请合理分配&#xff1b; 3、R1、R2、R4&#x…

前端理论总结(html5)——form表单的新增特性/h5的新特性

form表单的新增特性 range&#xff1a;范围 color&#xff1a;取色器 url&#xff1a;对url进行验证 tel&#xff1a;对手机号格式验证 email&#xff1a;对邮箱格式验证 novalidate &#xff1a;提交表单时不验证 form 或 input 域 numbe…