深入理解 Linux 存储与文件系统:挂载、LVM 与 Docker 卷管理全解析一、为何要搞清楚存储和文件系统?想象一下,你家的储物间乱七八糟:东西放在地上、堆在角落,根本找不到钥匙。Linux 也一样,如果不理解文件系统、挂载和存储管理,数据很容易丢失、混乱、性能也不佳。
在我们的场景里,三台 AlmaLinux 主机(master、node1、node2)上用 Docker 运行 MySQL 主从容器,主机文件系统、卷管理、容器存储驱动之间就像房东、仓库管理员和租户,缺少明确分工就会闹乌龙。
二、组件关系大揭秘
宿主机文件系统(Ext4 / XFS)
相当于大楼的地基和房间结构。决定性能、稳定性。
LVM(Logical Volume Manager)
像可动态分隔、扩容的多功能储物柜,给你可伸缩的存储空间。
Docker 存储驱动(overlay2 等)
类似租户在房间里贴的透气墙纸,隔离不同容器的读写层。
Docker 卷(Volume)
就是租户从公共仓库(宿主机)申请的专属储物箱,用来持久化数据。
MySQL 容器里的数据目录
真正放置数据库文 ...
详解 Linux 中的 /etc/fstab 文件/etc/fstab 。它是一个至关重要的配置文件,它负责管理文件系统的挂载信息,确保系统启动时能够自动完成存储设备与目录树的关联。
一、什么是 /etc/fstab?/etc/fstab(File System Table)是 Linux 系统中定义文件系统挂载规则的配置文件。是告诉系统在启动时如何自动挂载各类存储设备,包括本地硬盘分区、U 盘、网络存储(如 NFS)等。
在 Linux 中,”挂载” 是将存储设备与目录树中的某个目录关联的操作,参考另一篇文章:救命!服务器崩了竟因不会挂U盘?Linux命令行挂载秘籍,运维小哥血泪总结…通过挂载,用户可以像访问普通目录一样读写设备中的文件(Linux一切皆文件)。而 fstab 则将这一过程自动化,避免了每次启动系统后手动执行 mount 命令的繁琐。
二、/etc/fstab 的文件格式fstab 文件的每一行对应一个文件系统的挂载配置,由6 个字段组成,字段之间用空格或制表符分隔,顺 ...
精通 Vim 核心操作一、 Vim的三种模式解析123Normal Mode → 命令模式(按Esc进入)Insert Mode → 编辑模式(i/I/a/A/o/O进入)Visual Mode → 可视模式(v/V/Ctrl+v进入)
成功的关键:自然转换模式
二、 导航命令1、基础移动12345h/j/k/l ← 左下上右移动(脱离方向键!)0/$ → 行首/行尾gg/G → 文件首/文件尾20G/:20 → 跳转第20行Ctrl+u/d → 上/下翻半页
实例演示:
打开文件 vim cat命令.md
输入 :25 直接跳转25行
按 gg 返回文件开头
2、精准定位1234w/W → 下个单词开头(标点分隔/非标点分隔)e/E → 单词结尾f{char} → 行内跳转到指定字符,{char} ...
详细图解RAID技术RAID,全称为独立磁盘冗余阵列(Redundant Array of Independent Disks),简单来说,RAID就是把多个磁盘(无论是机械硬盘还是固态硬盘)组合成一个大的逻辑磁盘分区,其核心思想是在多块硬盘上分散存储数据,某些模式还会进行冗余备份,从而在提升读写速度的同时,确保硬件故障情况下的数据安全。操作系统将整个磁盘阵列视为一个大型存储设备,简化了管理并支持动态扩展容量。
RAID 工作原理在进行工作原理阐述之前先解释以下几个底层概念:
• 条带化(Striping)
数据被切成固定大小的块(Chunk/Stripe Unit,如 64KB、256KB),按顺序分布到不同磁盘上,实现并行读写。
• 镜像(Mirroring)
把同一份数据同时写入多块磁盘(RAID1/10),提供完全冗余机制
• 校验(Parity)
用数学方法为一组数据计算冗余信息(RAID5/6)。当坏了一到两块盘时,可通过校验重建缺失数据。
RAID的工作原理是将数据存放在多个磁盘上,并允许输入/输出(I/O)操作 ...
银河麒麟服务器v10 sp2安装mongodb 6.0.0123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869一、下载源码包:wget https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel80-6.0.0.tgz二、安装mongodb1、解压 放到 /usr/local/ 目录下tar -zxvf mongodb-linux-x86_64-rhel80-6.0.0.tgzmv mongodb-linux-x86_64-rhel80-6.0.0 /usr/local/mongodb2、切换目录cd /usr/local/mongodb3、在当前路径【/usr/local/mongodb】下创建文件夹mkdir -p ./data/dbmkdir ./logs4、进入/usr/local/mongodb/bin 目录下,创 ...
详解RAID技术(二)补充上一篇文章详细图解RAID技术讲解了RAID的基础概念, 原理,常见的RAID等级等,此篇文章做一个补充,列出一些非常见的RAID等级、RAID控制器类型及RAID技术的优缺点等
一、非常见RAID等级1、RAID 2这是RAID 0的改良版,使用汉明码方式对数据进行编码后分割为独立位元并写入磁盘,并加入错误修正码(ECC)。RAID 2至少需要三块磁盘才能运作。它现在很少使用,因为与RAID 3相比没有优势。
2、RAID 3采用位元交错存储(Bit-interleaving)技术,将数据位元分割后存储在磁盘中,并将同位元检查单独存储在一个硬盘中。由于数据位元分散在不同磁盘上,即使读取少量数据也可能需要所有硬盘协同工作。因此,这种规格更适用于读取大量数据。
3、RAID 4与RAID 3不同,它以区段为单位分割数据并存储在磁盘中。每次数据存取都必须从同位元检查硬盘中取出对应数据进行核对。由于过于频繁使用,可能提高硬盘损耗。它使用大型条带,允许从任何单个磁盘读取记录,从而可以用于读操作的重叠I/O。但所有写操作都需更新奇偶校验盘,因此无法进行I& ...
运维命令简易上手💎 服务器命令知识切换权限12sudo su 权限名称 // 不填时,默认为root// 💡:有的用户名设置了密码,还需要输入密码回车验证
下载第三方包不同的服务器操作系统,下载包的命令不一样
Debian/Ubuntu 发行版:sudo apt-get install unzip
CentOS/RHEL 发行版:sudo yum install unzip
Fedora 发行版:sudo dnf install unzip
改变目录1234cd . // 返回上级cd ~ // 返回根目录cd /home/work // 返回指定目录// 💡技巧:输入字母按tab键会自动补全
改变文件12345678910// 移动文件mv /a /b// 将a移动到b目录下,a可以是文件,也可以是目录// 💡技巧:如果指定的新地址不存在,则会创建新目录// 重命名mv a b // 将a命名为b// 删除文件rm -rf 文件名 // 删除指定文件
文件压缩123456zip -r command_file.zip file1 file2// ...
导读curl 是常用的命令行工具,用来请求 Web 服务器。它的名字就是客户端(client)的 URL 工具的意思。
它的功能非常强大,命令行参数多达几十种。如果熟练的话,完全可以取代 Postman 这一类的图形界面工具。
本文介绍它的主要命令行参数,作为日常的参考,方便查阅。内容主要翻译自《curl cookbook》。为了节约篇幅,下面的例子不包括运行时的输出,初学者可以先看我以前写的《curl 初学者教程》。
不带有任何参数时,curl 就是发出 GET 请求。
1$ curl https://www.example.com
上面命令向www.example.com发出 GET 请求,服务器返回的内容会在命令行输出。
-A参数指定客户端的用户代理标头,即User-Agent。curl 的默认用户代理字符串是curl/[version]。
1$ curl -A 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/76.0.380 ...
高效运维工具箱:精选频繁运用的10款Linux运维神器咱们运维工程师日常干活,离不开各种顺手的好工具。下面这10个可以说是必备神器,帮你省时省力,稳保系统平稳运行:
1、****Shell脚本
功能:通过编写自动化脚本执行任务和批处理操作。
适用场景:广泛应用于文件处理、系统管理、定时任务调度及基础网络配置等场景。
优势:具备高度的灵活性和强大的系统交互能力,能够直接调用系统命令和工具,支持复杂的逻辑控制和管道操作。
实例:运维工程师常编写Shell脚本系统资源检查,如CPU使用率、内存使用率、磁盘使用率、系统负载等。
1234567891011121314151617181920212223242526272829303132vi check_system.sh#!/bin/bash # 检查CPU使用率check_cpu() { top -bn1 | grep "Cpu(s)" | awk '{print $2}' | awk -F'%' '{print $1 ...
RegexOne 中文 - 通过简单的交互式练习来学习正则表达式
RegexOne 中文 - 通过简单的交互式练习来学习正则表达式
https://imageslr.github.io/regexone-cn/
课程 1:简介和字母 ABCs正则表达式 (regular expressions) 是一个非常有用的工具,可以从诸如代码、日志文件、电子表格或文档等文本中提取信息。虽然规范的语言背后有许多理论,但后续的课程和例子将探索正则表达式的更实际的用法,以便您能够尽快使用这个工具。
在使用正则表达式时要认识到的第一件事是:所有东西本质上都是字符,我们正在编写模式 (pattern) 来匹配特定的字符序列(也称为字符串)。大多数模式使用普通的 ASCII 字符,包括字母、数字、标点符号和键盘上的其他符号,如 %#$@!,但是也可以使用 unicode 字符来匹配任何类型的国际文本。
下面是几行文本,当您在输入框中输入模式时,请注意每行的匹配字符是如何变化的。要继续下一课,您需要使用每个课程中介绍的新的语法 (syntax) 和概念,写出能够匹配给定的每行文本的模式。
请尝试写一个能够匹 ...
