当前位置: 首页 > news >正文

Ceph入门到精通- Linux 磁盘管理(block 与 inode)

1  硬盘 block 与 inode 详解

1.1  Sector(扇区)与 Block(块)

1)  硬盘的最小存储单位:sector(扇区),每个扇区储存 512 字节;操作系统会一次性连续读取多个扇区,即一次性读取多个扇区称为一个 block(块)

2)  文件存取的最小单位:block(块),由多个扇区组成;block 的大小常见的有 1KB、2KB、4KB,在 linux 中常见设置为 4KB,即连续 8 个扇区组成一个 block;/boot 分区的 block 一般为 1KB

3)  查看 block 的方法:

ext3 与 ext4 格式化文件系统:

       dumpe2fs /dev/sda1 | grep "Block size"

       tune2fs -l /dev/sda1 | grep "Block size"

       stat /boot/ | grep "IO Block"

   xfs 格式化文件系统:

       xfs_info /dev/sda1

 

stat /boot/ | grep "IO Block"

4)  每个 block 只能存放一个文件,如果文件的大小比 block 大,会申请更多的 block;如果文件的大小比 block 小,仍会占用一个 block,剩余的空间会浪费

例:有 1 万个文件,大小为 10B,block 为 4KB

理论上占用空间大小:10000 * 10B=97.656MB

实际上占用空间大小:10000 * 4KB = 40GB

1.2  硬盘 block 与 inode 详解

1.2.1   superblock、inode 与 block

操作系统对于文件数据的存放包括两个部分:1 文件内容、2 权限及文件属性

在硬盘分区中,还有一个超级区块(superblock)

1)  superblock:记录文件系统的整体信息,包括 inode 与 block 的总量、使用大小、剩余大小以及文件系统的格式与相关信息等

2)  inode:记录文件的属性、权限,同时会记录该文件的数据所在的 block 编号

3)  block:存储文件的内容

1.2.2   inode 与 block

每个 inode 与 block 都有编号,而每个文件都会占用一个 inode,inode 内则有文件数据放置的 block 号码;能够找到文件的 inode 就可以找到该文件所放置数据的 block 号码,从而读取文件内容

1)在格式化时可以指定默认的 inode 与 block 的大小;-b 指定默认 block 值,-I 指定默认 inode 值,例:mkfs.ext4 –b 4096 –I 256 /dev/sdb

2)查看 inode 的方法:

ext3 与 ext4 格式化文件系统:

dumpe2fs /dev/sda1 | grep "Inode size"

tune2fs -l /dev/sda1 | grep "Inode size"

 

   xfs 格式化文件系统:

 

2  硬链接

硬链接:Linux 系统多个文件名可以指向同一个 inode,这意味着可以用不同的文件名访问同样的内容,对文件内容进行修改会影响到所有文件名;但删除一个文件名不会影响另一个文件名的访问。

硬链接不能跨分区链接,只能对文件生效,对目录无效,链接后的文件不占用系统多余的空间

命令:ln test1.txt test2.txt         #test1.txt 为源文件,test2 为目标文件

 

3  软链接(符号链接)

软链接文件的 Inode 号不同,可以跨分区链接,支持目录同时也支持文件的链接;不管是删除源文件还是重启系统,该软链接还存在,但文件内容会丢失,一旦新建源同名文件,软链接文件恢复正常

命令:ln –s test1.txt test2.txt

 

相关文章:

Ceph入门到精通- Linux 磁盘管理(block 与 inode)

1 硬盘 block 与 inode 详解 1.1 Sector(扇区)与 Block(块) 1) 硬盘的最小存储单位:sector(扇区),每个扇区储存 512 字节;操作系统会一次性连续读取多个…...

安全DNS,状态码,编码笔记整理

一 DNS DNS(Domain Name System)是互联网中用于将域名转换为IP地址的系统。 DNS的主要功能包括以下几个方面: 域名解析:DNS最主要的功能是将用户输入的域名解析为对应的IP地址。当用户在浏览器中输入一个域名时,操作…...

【业务功能篇53】Springboot 数据封装对象

Entity、VO、DTO解释 1)Entity:实体,与数据库的每一行数据打交道的,它的属性对应数据库每个字段 class User{ private Long idCard; private String name; private Date birthday; ...... } 对应数据库的id,name&…...

将Spring Session存储到Redis中实现持久化

文章目录 Session持久化1. 添加依赖2. 配置redis连接信息3. 存储和读取session从Redis Session持久化 1. 添加依赖 在项目中添加session依赖和redis依赖&#xff0c;如下所示&#xff1a; <dependency><groupId>org.springframework.boot</groupId><art…...

Git工作中常用命令

模拟一个git完整命令流程 有一个名为 example.txt 的文本文件 Hello, this is some text.1、做一些修改并查看文件的差异&#xff1a; # 修改 example.txt 文件 echo "Hello, this is some updated text." > example.txt查看文件的差异 git diffgit diff 命令…...

【电路效应】信号处理和通信系统模型中的模拟电路效应研究(SimulinkMatlab代码实现)

目录 &#x1f4a5;1 概述 &#x1f4da;2 运行结果 &#x1f389;3 参考文献 &#x1f308;4 Matlab代码、Simulink仿真实现 &#x1f4a5;1 概述 在信号处理和通信系统模型中&#xff0c;模拟电路效应研究是指考虑到实际电路的特性对信号进行建模和分析的过程。模拟电路效应…...

Spring 的元注解

一、元注解介绍 1.1.源码引入 1.2.元注解介绍 从上面的图片可知&#xff0c;Spring 有四个【负责注解其他注解】的元注解&#xff0c;分别是&#xff1a; Target&#xff1a;标识该注解可以用于标注哪些程序元素&#xff0c;比如类、方法、字段等。 Retention&#xff1a;标…...

【前缀和】238. 除自身以外数组的乘积

238. 除自身以外数组的乘积 解题思路 前缀与后缀的思路对于给定索引i&#xff0c;将它左边的所有数字乘积乘以右边所有数字的乘积初始化两个数组L R计算L[i] L[i - 1] * nums[i - 1] 也就是左侧所有数字的乘积计算R[i] R[i 1] * nums[i 1] 也就是右侧所有数字的成绩计算L…...

【Java中间件】RocketMQ

RocketMQ 一、MQ概述 Message Queue&#xff0c;是一种提供消息队列服务的中间件。提供了消息生产、存储、消费全过程API的软件系统。 MQ的作用 限流削峰&#xff1a;当用户发送超量请求时&#xff0c;将请求暂存&#xff0c;以便后期慢慢处理。如果不使用MQ暂存直接请求到…...

Megatron-LM、NVIDIA NeMo、MegaMolBART 、model_optim_rng.pt 文件是什么?

本文涉及以下几个概念&#xff0c;分别是&#xff1a; Megatron和Megatron-LM-v1.1.5-3D_parallelism NVIDIA NeMo Megatron和Megatron-LM-v1.1.5-3D_parallelism是什么&#xff1f; Megatron是由NVIDIA开发的一种用于训练大规模语言模型的开源框架。它旨在提供高效的分布式…...

2023年信息系统项目管理师如何报名?老司机告诉你

信息系统项目管理师是全国计算机技术与软件专业技术资格&#xff08;水平&#xff09;考试&#xff08;简称软考&#xff09;项目之一&#xff0c;是由国家人力资源和社会保障部、工业和信息化部共同组织的国家级考试&#xff0c;既属于国家职业资格考试&#xff0c;又是职称资…...

linux ubuntu系统 命令备忘

一、安装软件包的命令 1、验证安装包是否安装 dpkg -s <软件包名> 2、从软件源服务器获取最新的软件信息并缓存到本地 apt update 3、从本地仓库中对比系统中所有已安装的软件&#xff0c;如果有新版本的话则进行升级 apt upgrade 4、列出本地仓库中所有的软件包名…...

我的第一个flutter项目(Android Webview)

前言&#xff1a;flutter开发环境搭建Flutter的开发环境搭建-图解_☆七年的博客-CSDN博客 第一个flutter简单项目&#xff0c;内容是一个主界面&#xff0c;其中&#xff1a; 1.内容点击数字自增 2.跳转一个空页&#xff0c; 3.跳转一个WebView界面 其中涉及添加主键&#xf…...

微信机器人搭建详细教程

确保已安装Python和pip。 在D盘上创建名为wxbot的文件夹&#xff0c;并将你的Python机器人项目文件放在这个目录中。 在D盘的wxbot文件夹中打开命令行工具&#xff0c;并创建一个新的Python虚拟环境&#xff08;可选&#xff09;&#xff1a; python -m venv venv激活虚拟环…...

opengauss安装

opengauss安装 系统环境 Redhat版本&#xff1a;redhat7.6 虚拟机ip&#xff1a;192.168.5.144 Gauss版本&#xff1a;openGauss-5.0.0-CentOS-64bit-all.tar.gz 企业版 一&#xff0e;准备软硬件环境 1.1 安装依赖包 yum -y install bzip2 python3 libaio-devel flex bis…...

什么是SVM算法?硬间隔和软间隔的分类问题

SVM全称是supported vector machine(支持向量机)&#xff0c;即寻找到一个超平面使样本分成两类&#xff0c;并且间隔最大。 SVM能够执行线性或⾮线性分类、回归&#xff0c;甚至是异常值检测任务。它是机器学习领域最受欢迎的模型之一。SVM特别适用于中小型复杂数据集的分类。…...

Normalization(BN and LN) in NN

Batch Normalization 称为批标准化。批是指一批数据&#xff0c;通常为 mini-batch&#xff1b;标准化是处理后的数据服从 N ( 0 , 1 ) N(0,1) N(0,1) 的正态分布。在训练过程中&#xff0c;数据需要经过多层的网络&#xff0c;如果数据在前向传播的过程中&#xff0c;尺度发…...

opencv-22 图像几何变换01-缩放-cv2.resize()(图像增强,图像变形,图像拼接)

什么是几何变换&#xff1f; 几何变换是计算机图形学中的一种图像处理技术&#xff0c;用于对图像进行空间上的变换&#xff0c;而不改变图像的内容。这些变换可以通过对图像中的像素位置进行调整来实现。 常见的几何变换包括&#xff1a; 平移&#xff08;Translation&#x…...

python机器学习(五)逻辑回归、决策边界、代价函数、梯度下降法实现线性和非线性逻辑回归

线性回归所解决的问题是把数据集的特征传入到模型中&#xff0c;预测一个值使得误差最小&#xff0c;预测值无限接近于真实值。比如把房子的其他特征传入到模型中&#xff0c;预测出房价&#xff0c; 房价是一系列连续的数值&#xff0c;线性回归解决的是有监督的学习。有很多场…...

聊聊Linq中.AsEnumerable(), AsQueryable() ,.ToList(),的区别和用法

聊聊Linq中.AsEnumerable(), AsQueryable() ,.ToList(),的区别和用法 当使用LINQ查询数据时&#xff0c;我们常常会面临选择使用.AsEnumerable(), .AsQueryable(), 和 .ToList()方法的情况。这些方法在使用时有不同的效果和影响&#xff0c;需要根据具体场景来选择合适的方法。…...

【Python】 -- 趣味代码 - 小恐龙游戏

文章目录 文章目录 00 小恐龙游戏程序设计框架代码结构和功能游戏流程总结01 小恐龙游戏程序设计02 百度网盘地址00 小恐龙游戏程序设计框架 这段代码是一个基于 Pygame 的简易跑酷游戏的完整实现,玩家控制一个角色(龙)躲避障碍物(仙人掌和乌鸦)。以下是代码的详细介绍:…...

关于nvm与node.js

1 安装nvm 安装过程中手动修改 nvm的安装路径&#xff0c; 以及修改 通过nvm安装node后正在使用的node的存放目录【这句话可能难以理解&#xff0c;但接着往下看你就了然了】 2 修改nvm中settings.txt文件配置 nvm安装成功后&#xff0c;通常在该文件中会出现以下配置&…...

CRMEB 框架中 PHP 上传扩展开发:涵盖本地上传及阿里云 OSS、腾讯云 COS、七牛云

目前已有本地上传、阿里云OSS上传、腾讯云COS上传、七牛云上传扩展 扩展入口文件 文件目录 crmeb\services\upload\Upload.php namespace crmeb\services\upload;use crmeb\basic\BaseManager; use think\facade\Config;/*** Class Upload* package crmeb\services\upload* …...

多模态图像修复系统:基于深度学习的图片修复实现

多模态图像修复系统:基于深度学习的图片修复实现 1. 系统概述 本系统使用多模态大模型(Stable Diffusion Inpainting)实现图像修复功能,结合文本描述和图片输入,对指定区域进行内容修复。系统包含完整的数据处理、模型训练、推理部署流程。 import torch import numpy …...

掌握 HTTP 请求:理解 cURL GET 语法

cURL 是一个强大的命令行工具&#xff0c;用于发送 HTTP 请求和与 Web 服务器交互。在 Web 开发和测试中&#xff0c;cURL 经常用于发送 GET 请求来获取服务器资源。本文将详细介绍 cURL GET 请求的语法和使用方法。 一、cURL 基本概念 cURL 是 "Client URL" 的缩写…...

在 Spring Boot 中使用 JSP

jsp&#xff1f; 好多年没用了。重新整一下 还费了点时间&#xff0c;记录一下。 项目结构&#xff1a; pom: <?xml version"1.0" encoding"UTF-8"?> <project xmlns"http://maven.apache.org/POM/4.0.0" xmlns:xsi"http://ww…...

Vue ③-生命周期 || 脚手架

生命周期 思考&#xff1a;什么时候可以发送初始化渲染请求&#xff1f;&#xff08;越早越好&#xff09; 什么时候可以开始操作dom&#xff1f;&#xff08;至少dom得渲染出来&#xff09; Vue生命周期&#xff1a; 一个Vue实例从 创建 到 销毁 的整个过程。 生命周期四个…...

Oracle11g安装包

Oracle 11g安装包 适用于windows系统&#xff0c;64位 下载路径 oracle 11g 安装包...

【Post-process】【VBA】ETABS VBA FrameObj.GetNameList and write to EXCEL

ETABS API实战:导出框架元素数据到Excel 在结构工程师的日常工作中,经常需要从ETABS模型中提取框架元素信息进行后续分析。手动复制粘贴不仅耗时,还容易出错。今天我们来用简单的VBA代码实现自动化导出。 🎯 我们要实现什么? 一键点击,就能将ETABS中所有框架元素的基…...

JDK 17 序列化是怎么回事

如何序列化&#xff1f;其实很简单&#xff0c;就是根据每个类型&#xff0c;用工厂类调用。逐个完成。 没什么漂亮的代码&#xff0c;只有有效、稳定的代码。 代码中调用toJson toJson 代码 mapper.writeValueAsString ObjectMapper DefaultSerializerProvider 一堆实…...