linux存储技术学习资料

这篇具有很好参考价值的文章主要介绍了linux存储技术学习资料。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

参考

https://www.cnblogs.com/pengdonglin137/p/16525428.html

linux存储技术学习资料

Linux I/O栈

  • Linux内核的I/O栈大图
  • 知乎Linux I/O专栏1
  • Linux 块设备之Block Layer层架构演变
  • Linux VFS机制简析(一)
  • Linux VFS机制简析(二)
  • Linux Kernel文件系统写I/O流程代码分析(一)
  • Linux Kernel文件系统写I/O流程代码分析(二)bdi_writeback

工具

  • linux问题调查工具指南
  • Linux 要如何优化SSD(固态硬盘)?
  • linux-磁盘io监控相关工具整理
  • Linux block devices: hints for debugging and new developments

调试节点

  • Block layer statistics in /sys/block//stat

dd

  • dd 工具使用; SSD 顺序写性能测试;
  • 汇报dd的进度

FIO

  • github: https://github.com/axboe/fio
  • HOWTO.rst
  • https://fio.readthedocs.io/en/latest/index.html
  • Linux下磁盘IO读写测试工具-FIO详解
  • hdparm和fio简介
  • linux 磁盘IO测试工具:fio (同时简要介绍dd工具测试)
  • Fio Output Explained

ioprof

  • 分析IO的工具 ioprof,支持导出图表

blktrace

  • 仓库:https://git.kernel.dk/cgit/blktrace/
  • 静态编译的版本:blktrace_2.0.tar.gz
  • blktrace分析IO 绘制图表
  • 利用blktrace分析磁盘I/O
  • 利用blktrace分析IO性能
  • io分析神器blktrace
  • Deep in blktrace
  • Linux IO性能分析blktrace/blk跟踪器
  • blktrace工具
  • Debugging disk issues with blktrace, blkparse, btrace and btt in Linux environment
  • ftrace interface for blktrace

iotrace

  • https://github.com/Open-CAS/standalone-linux-io-tracer
    • Case Study

iostat

  • 容易被误读的iostat
  • I/O statistics fields
  • 深入理解iostat
  • 深入分析diskstats
  • IOSTAT中关于%util,svctm存在的陷阱及解决办法
  • 瓶颈确认之IO瓶颈确认之第一篇

hdparm

  • 查看一个文件实际使用了哪些扇区
hdparm --fibmap xxx

dumpe2fs

用法(来自chatgpt)

dumpe2fs 是一个用于显示 ext2、ext3、ext4 文件系统信息的命令行工具。以下是 dumpe2fs 的用法:

dumpe2fs [选项] 设备文件名

其中,[选项] 可以是以下任意组合:

  • -h:显示帮助信息。
  • -V:显示版本信息。
  • -b:显示块位图的信息。
  • -i:显示 inode 位图的信息。
  • -I:显示 inode 表的信息。
  • -l:显示文件系统的块和 inode 的数量、大小、使用情况等信息。
  • -o:显示文件系统的挂载选项。
  • -p:显示文件系统的预读块数。
  • -r:显示文件系统的块组摘要信息。
  • -S:显示文件系统的超级块信息。
  • -x:显示文件系统的扩展信息。

设备文件名 是要显示信息的文件系统所在的设备文件名,例如 /dev/sda1

例如,要显示 /dev/sda1 文件系统的块和 inode 的数量、大小、使用情况等信息,可以使用以下命令:

dumpe2fs -l /dev/sda1

debugfs

debugfs 是一个用于调试文件系统的工具,可以用于查看和修改文件系统的内部状态。以下是一些常见的 debugfs 命令:

  1. 打开文件系统:debugfs /dev/sda1 (假设 /dev/sda1 是要调试的文件系统)

  2. 查看文件系统的超级块信息:stat <文件系统根目录的inode号>

  3. 查看文件系统的块位图:bmap <文件名>

  4. 查看文件系统的inode位图:imap <文件名>

  5. 查看文件系统的inode信息:inode <inode号>

  6. 查看文件系统的目录项信息:ls <目录名>

  7. 查看文件系统的文件内容:cat <文件名>

  8. 修改文件系统的inode信息:write <inode号> <偏移量> <数据>

  9. 修改文件系统的目录项信息:set <目录项名> <inode号>

  10. 退出 debugfsquit

请注意,使用 debugfs 可能会对文件系统造成不可逆的损坏,因此在使用之前请务必备份数据。文章来源地址https://www.toymoban.com/news/detail-455964.html

fsck

tune2fs

  • EXT4是否存在FS error

dumpe2fs

blockdev

  • blockdev --setra预读优化和IO请求的大小

smartctl

  • https://www.cnblogs.com/fiberhome/p/8275961.html

NVME CLI

  • nvme-cli用户工具
  • https://blog.csdn.net/Z_Stand/article/details/111415236
  • Nvme硬盘检测步骤

sg3_utils

  • 官网:http://sg.danny.cz/sg/sg3_utils.html

Storcli64

  • Storcli64 工具操作指南
  • 不同型号阵列卡相关工具的使用简介

MegaRAID

  • MegaRAID管理工具操作手册
  • MegaRAID MegaRAID/3108问题
  • sas2ircu、sas3ircu、MegaCli64、hpssacli 阵列卡工具使用指令

内核

  • 宋宝华:Linux文件读写(BIO)波澜壮阔的一生
  • 刘正元: Linux 通用块层之IO合并
  • block子系统内核文档
  • IOwait 到底在wait什么
  • BLOCK层代码分析(0)存储IO框架介绍
  • BLOCK 层这么多参数都是什么意思?!
  • Long Story of Block - 1 Data Unit
  • Long Story of Block - segment
  • linux block layer第一篇bio 子系统数据结构及初始化
  • linux block layer第二篇bio 的操作
  • 存储IO落盘原理及路径分析

文件系统

EXT2/3/4

  • EXT4文件系统的磁盘整体布局

F2FS

  • F2FS源码分析系列文章

FUSE

  • 吴锦华/明鑫: 用户态文件系统(FUSE)框架分析和实战

Overlay

  • 深入理解overlayfs(一):初识
  • 深入理解overlayfs(二):使用与原理分析

脏页回写

  • writeback bdi脏页回写原理linux内核源码解析
  • VFS源码分析-Page Cache Writeback脏页回写机制
  • https://lwn.net/Kernel/Index/#Memory_management-Writeback

预读

  • 程序中如何禁用Linux文件预读和缓存机制

模拟设备

  • Null block device driver
  • 基于内存的磁盘驱动

block cgroup

  • cgroup-blkio子系统分析
  • cgroupv2 权威指南
  • cgroup–blkio子系统测试-1(throttle测试)
  • Linux Cgroup v1(中文翻译)(4):Block IO Controller
  • Cgroup blkio简介和测试(使用fio测试)
  • I/O bandwidth controllers

throttle

  • 关于IO throttle
  • Buffer IO的throttle问题
  • Cgroup V2 and writeback support
  • Block Throttle
  • Block Throttle - Low Limit
  • Resource management in Docker

io latency

  • The block I/O latency controller
  • The creation of the io.latency block I/O controller
  • iolatency

io prio

  • Block io priorities
  • How disk IO priority is related with process priority?
  • How to Manage the Priority of I/O Processes in Linux

io cost

  • blk-iocost: iocost: improve donation, debt and excess handling
  • blk-iocost权重限速
  • IOCost: Block IO Control for Containers in Datacenters

Discard

  • Long Story of Block - DISCARD
  • SSD的TRIM原理及实践

blk-mq

  • linux内核block层Multi queue多队列核心点分析
  • Multi-queue 架构分析
  • Linux Block IO: Introducing Multi-queue SSD Access on Multi-core Systems
  • Block multi-queue 架构解析(一)数据结构
  • Block multi-queue 架构解析(二)流程与机制
  • blk-mq arch
  • Multi-Queue Block IO Queueing Mechanism (blk-mq)

IO调度器

  • BFQ (Budget Fair Queueing)

Integrity

  • Data Integrity
  • Using Linux Block Integrity in Building and Testing Storage Systems
    • Slide
    • Youtube
  • integritysetup

Encryption

  • Inline Encryption
  • Speeding Up Linux Disk Encryption

Zoned Block Device

  • ZNS的前世今生
  • 西数 Zoned Storage 分区存储
  • ZNS : 解决传统SSD问题的高性能存储栈设计
  • 用null_blk工具来实现模拟分区块设备
  • Zoned Storage
  • Zoned Block Device Emulation

Device Mapper

  • 内核文档:Device Mapper
  • Device Mapper 简介
  • Linux Command dmsetup管理LVM
  • linux命令----dmsetup
  • 高性能存储的另一块拼图——DM 支持 IO Polling
  • Userspace block device driver (ublk driver)

LVM

  • LVM逻辑卷和手动创建逻辑卷
  • LVM 逻辑卷管理
    • lvm 逻辑卷管理(原理概念篇)
    • LVM 逻辑卷管理(实战篇)

Multipath

  • Linux 下存储多路径软件 MultiPath 源码分析
  • Multipath 切换主路径
  • redhat DM Multipath
  • 红帽DM multipath技术文档
  • https://github.com/opensvc/multipath-tools
  • Linux multipathd多路径
  • 使用scsi_debug测试dm-multipath多路径软件的简单实验
  • 第1讲 多路径软件multipath的介绍与安装
  • 第2讲 scsi设备模拟器scsi_debug
  • 第3讲 multipath聚合由scsi_debug模拟的设备
  • 4.如何删除多路径设备和scsi设备
  • 第5讲 multipath的属性features
  • 第6讲 multipath的路径选择path-selector
  • 第7讲 multipath的路径分组策略
  • Beginners guide to Device Mapper (DM) multipathing

io_uring

  • Linux 异步 I/O 框架 io_uring:基本原理、程序示例与性能压测

Bcache

  • Linux下SSD缓存加速之bcache使用
  • bcache原理及实践

Flashcache

  • 理解flashcache(1)

direct io

  • DirectIO的对齐问题
  • Why does O_DIRECT require I/O to be 512-byte aligned?

SCSI

  • 协议
  • Linux Scsi子系统框架介绍
  • https://www.cnblogs.com/pengdonglin137/p/16383560.html
  • 内核文档:Documentation/scsi/
  • 内核文档:SCSI_EH
  • 内核文档:SCSI mid_level - lower_level driver interface
  • 内核文档:SCSI Kernel Parameters
  • linux scsi相关的一些学习笔记
  • SCSI代码分析(0)SCSI层框架
  • SCSI设备IO栈与块设备并发机制
  • Scsi_debug adapter driver for Linux
  • scsi设备模拟器scsi_debug
  • IO 能够保证在确定的时间回来吗?
  • BLOCK_SCSI 专栏

iscsi

  • iscsi服务器介绍和搭建
  • ISCSI服务器搭建与配置
  • block & scsi & iscsi 开启调试日志
  • 聊一聊存储协议中的孪生兄弟SCSI和iSCSI
  • 什么是ISCSI?ISCSI又能干什么呢?
  • iscsiadm和iscsid的源码
  • Linux文件系统-ISCSI存储和Multipathd
  • Multipath 多路径
  • iSCSI与multipath部署
  • iSCSI initiator软件架构
  • ISCSI介绍
  • iSCSI(一) iSCSI详解 及 iSCSI配置
  • open-iscsi
  • iSCSI command
  • How to get scsi_id

NVME

  • NVME专栏
  • NVMe的Linux内核驱动分析

RAID

  • RAID1是什么
  • RAID 10是什么

书籍推荐

  • 《存储技术原理分析 基于Linux 2.6内核源代码》
  • 《Linux内核探秘:深入解析文件系统和设备驱动的架构与设计》
  • 《深入浅出ssd-固态存储核心技术原理与实战》
  • 《大话存储》

问题排查

  • How to check Fibre Channel HBAs in Linux
  • How to identify the HBA cards/ports and WWN in Linux

到了这里,关于linux存储技术学习资料的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【Python SMTP/POP3/IMAP】零基础也能轻松掌握的学习路线与参考资料

    Python是一种高级编程语言,广泛应用于Web开发、人工智能、数据科学、自动化等领域。SMTP/POP3/IMAP是与邮件相关的三个协议,分别用于发送邮件、接收邮件和访问邮件。使用Python可以轻松实现这些功能,本文将介绍Python SMTP/POP3/IMAP的学习路线,并给出参考资料和优秀实践。 一

    2024年02月07日
    浏览(54)
  • 88、基于STM32单片机学习型搬运机器人四自由度机械臂机械手遥感控制设计(程序+原理图+PCB源文件+参考论文+硬件设计资料+元器件清单等)

    单片机主芯片选择方案 方案一:AT89C51是美国ATMEL公司生产的低电压,高性能CMOS型8位单片机,器件采用ATMEL公司的高密度、非易失性存储技术生产,兼容标准MCS-51指令系统,片内置通用8位中央处理器(CPU)和Flash存储单元,功能强大。其片内的4K程序存储器是FLASH工艺的,这种单

    2024年02月13日
    浏览(67)
  • 0.flink学习资料

    (1)google dataflow model 下载链接:p1792-Akidau.pdf (vldb.org) Akidau T, Bradshaw R, Chambers C, et al. The dataflow model: a practical approach to balancing correctness, latency, and cost in massive-scale, unbounded, out-of-order data processing[J]. Proceedings of the VLDB Endowment, 2015, 8(12): 1792-1803 流式计算的基石文档,google出品

    2024年02月12日
    浏览(51)
  • 自动驾驶最强学习资料

    资料说明和获取方式 本资料包是作者吐血整理的干货!目前为止应该是非常全的自动驾驶资料包!是作者五年自动驾驶算法工程师的 积累! 以上干货资料并不全是作者自己原创, 是作者作为五年自动驾驶算法工程的积累,一部分是参考其他的资料,一部分是作者自己的一些

    2024年03月13日
    浏览(84)
  • zkrollup学习资料汇总

    FluiDex FluiDex Labs 致力于构建下一代专业的去中心化交易所。我们将在以太坊上使用 PLONK 零知识证明技术,开发高性能的订单簿数字资产现货交易所。 zksync: 最完整的 ZK-Rollup 开源项目代码,涵盖了一个 ZK-Rollup 系统需要的每个组件。使用 PLONK 机制,电路代码使用 bellman,链下

    2024年02月12日
    浏览(48)
  • 【IOT】学习资料

    随着科技的不断发展,物联网(IoT)已经成为了当今数字化时代的一部分。物联网将各种物理设备、传感器和互联网连接起来,为我们提供了巨大的数据流和智能化的应用。在这个庞大的生态系统中,物联网平台扮演着至关重要的角色,它们不仅可以连接和管理物联网设备,

    2024年02月20日
    浏览(53)
  • 以太坊入门学习资料

    区块链按照访问和管理权限分为公有链、联盟链和私有链。 公有链:完全开放,所有节点均可加入,代表链-比特币Bitcoin、以太坊Ethereum。 联盟链:有多个组织和机构共同管理,获得组织和机构许可的节点可以加入,代表链-超级账本Hyperledger Fabric。 私有链:获得集中管理者

    2024年02月02日
    浏览(58)
  • 机器学习 深度学习资料 资源machine learning

    Kaggle入门,看这一篇就够了 - 知乎 (zhihu.com) https://zhuanlan.zhihu.com/p/25686876 day1-1.什么是机器学习_哔哩哔哩_bilibili day1-1.什么是机器学习是10天学会机器学习从入门到深度学习的第1集视频,该合集共计62集,视频收藏或关注UP主,及时了解更多相关视频内容。 https://www.bilibili.com

    2024年02月21日
    浏览(54)
  • DPDK相关学习资料汇总

    经常有新报道的童鞋问我,学习DPDK有哪些资料或者书籍可以看,今天我先来汇总一波,后面会持续更新: 1. DPDK官方网站:https://www.dpdk.org/和http://core.dpdk.org/doc/,官方网站提供DPDK的最新版本代码、文档和实例程序下载,同时也发布DPDK的最新版本更新和重大改进。 2. DPDK Git

    2024年02月08日
    浏览(63)
  • 小程序的学习资料收集

    1:官方工具:https://mp.weixin.qq.com/debug/w ... tml?t=1476434678461 2:简易教程:https://mp.weixin.qq.com/debug/wxadoc/dev/?t=1476434677599 3:设计指南:https://mp.weixin.qq.com/debug/wxadoc/design/index.html 4:设计资源下载:https://mp.weixin.qq.com/debug/wxadoc/design/#资源下载 5:微信小程序公测接入指南:http://

    2024年02月08日
    浏览(50)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包