磁盘——磁盘管理与文件系统

目录

一、在linux中使用硬盘分三步

1、分区

2、文件系统(管理大小权限。日志恢复)

3、挂载(硬盘和系统文件做关联,使用文件夹=使用系统)

二、磁盘结构

三、MBR与GPT磁盘分区

1、分区的原因,为什么分区?

1.2分区的优点:

1.3分区的缺点:

1.4分区的类型:

2、MBR分区 (最多只能分4个区,只能对于小于2T的硬盘分区)

3、GPT分区(可以分128个分区,对2T以上的硬盘分区)

四、文件系统

五、磁盘分区相关命令

1、fdisk :查看或者管理磁盘分区(只能分2T以下的硬盘)

2、gdisk:对于2T以上的磁盘进行分区

3、parted:(即时生效,不推荐)

4、partprobe:分区没出来,用于刷新的

六、查看命令

1、lsblk:查看分区以及磁盘情况

2、blkid:查看uuid

3、df :查看挂载情况

七、磁盘分区实验

八、添加swap 交换分区

1、如何使用swap分区:

九、挂载,解挂载与永久挂载

1、mount:挂载

2、umount 解挂载

3、永久挂载

4、文件系统的修复


一、在linux中使用硬盘分三步

1、分区

2、文件系统(管理大小权限。日志恢复)

3、挂载(硬盘和系统文件做关联,使用文件夹=使用系统)

二、磁盘结构

  • 硬盘存储容量=磁头数×磁道(柱面)数×每道扇区数×每扇区字节数
  • 可以用柱面/磁头/扇区来唯一定位磁盘上每一个区域磁盘
  • 接口类型: IDE、SATA、SCSI、SAS、光纤通道
  • 扇区一共有512个字节,储存最小单位,8个扇区组成一块,一块就是4kb

sda是第一块硬盘      s是硬盘接口       硬盘类型决定了数据传输的速率

d是磁盘,a代表了第一块磁盘

lsblk就是查看硬盘类型

lsblk   -d -o name,rota就是查看硬盘类型

scan就是扫描接口:alias scan='echo "- - -" > /sys/class/scsi_host/host0/scan;echo "- - -" > /sys/class/scsi_host/host1/scan;echo "- - -" > /sys/class/scsi_host/host2/scan'

三、MBR与GPT磁盘分区

1、分区的原因,为什么分区?

①方便读写功能

②实现磁盘的配额

③提高修复速度

④隔离系统和程序

⑤安装多个os

⑥采用不同的文件系统

1.2分区的优点:

①便于管理

②优化读写性能

1.3分区的缺点:

①一旦区分就无法修改大小

②只能使用连续的空间

③没有备份冗余功能

1.4分区的类型:

①主分区:可以直接使用,区号1-4

②扩展分区:不能直接使用,要在扩展的基础上再逻辑分区才可以

③逻辑分区:直接使用,但是必须依赖与扩展分区,分区号5+

2、MBR分区 (最多只能分4个区,只能对于小于2T的硬盘分区)

①MBR位于硬盘第一个物理扇区处

②MBR中包含硬盘的主引导程序和硬盘分区表

③分区表有4个分区记录区,每个分区记录区占16个字节

④MBR位于硬盘第一个物理扇区处

⑤MBR中包含硬盘的主引导程序和硬盘分区表

⑥分区表有4个分区记录区,每个分区记录区占16个字节

⑦扩展分区:是特殊的主分区。目的:是为了可分超过4个分区。

不可以直接使用,无论分多少多大,只显示1k,而且需要再次逻辑分区。

3、GPT分区(可以分128个分区,对2T以上的硬盘分区)

使用128位uid

四、文件系统

文件系统是用来管理文件的程序(增删改查)权限大小 基本属性

XFS centos7  默认的文件系统

ext4  centos6  默认的问价系统

五、磁盘分区相关命令

1、fdisk :查看或者管理磁盘分区(只能分2T以下的硬盘)

格式:fdisk   /dev/sdb(硬盘名)

指令作用效果
n新建一个分区
d删除一个分区
t改变分区属性
w保存退出
q不保存退出
p打印查看当前分区列表
e新建一个扩展分区
l新建一个逻辑分区

2、gdisk:对于2T以上的磁盘进行分区

3、parted:(即时生效,不推荐)

4、partprobe:分区没出来,用于刷新的

六、查看命令

1、lsblk:查看分区以及磁盘情况

2、blkid:查看uuid

3、df :查看挂载情况

df -h显示人性化

七、磁盘分区实验

第一步,先在vm上面添加一块磁盘,在设备中找到硬盘,点击添加,然后一直下一步即可,然后点击确认然后退出。

第二步,然后打开x-shell然后连接vm虚拟机按照下图操作即可。

添加一块硬盘
vim ~/.bashrc           #永久别名编辑器,添加别名
alias scan='echo "- - -" > /sys/class/scsi_host/host0/scan;echo "- - -" > /sys/class/scsi_host/host1/scan;echo "- - -" > /sys/class/scsi_host/host2/scan'
scan                    #扫描新增硬盘

第三步创建主分区

fdisk  /dev/sdb                   #编辑管理硬盘sdb
n                                 #新建分区
回车                              #默认主分区
回车                              #默认分区号
回车                              #默认起始扇区
+5G                               #设置分区大小为5G
p                                 #打印查看
w                                 #保存退出
mkfs.xfs  /dev/sdb1               #格式化  建立文件系统
mount   /dev/sdb1 /mnt            #将sdb1挂载到/mnt目录下
lsblk                             #看分区情况
df -h                             #人性化看挂载情况

创建扩展分区:代码

fdisk  /dev/sdb                   #编辑管理硬盘sdb
n                                 #新建分区
e                                 #新建扩展分区
回车                               #默认分区号
回车                               #默认起始扇区
+10G                               #设置分区大小为10G
p                                  #打印查看
w                                  #保存退出
(也可以不保存,接着做逻辑)

创建逻辑分区:

fdisk  /dev/sdb                   #编辑管理硬盘sdb
n                                 #新建分区
l                                 #新建逻辑分区
回车                              #默认起始扇区
+5G                               #设置分区大小为5G
p                                 #打印查看
w                                 #保存退出
mkfs.xfs  /dev/sdb5               #格式化  建立文件系统
mount   /dev/sdb5 /opt            #将sdb5挂载到/opt目录下
lsblk                             #看分区情况
df -hT                            #人性化看挂载情况

创建分区格式化,建立文件系统可能遇到的问题!

显示:dev/sdb5:没有那个文件或目录

解决方法:partprobe     刷新,重新读取分区信息

八、添加swap 交换分区

分区后改变id类型

t     #填写类型
2     #填写分区号
82    #填写交换分区的ID
p     #打印查看
w     #保存退出

格式化swa分区:

mkswap /dev/sdc2

开启swap分区:

free -h             
#查看当前系统的内存使用情况swapon /dev/sdc2    
#开启swap分区free -h             
#查看当前系统的内存使用情况并与之前作对比

关闭swap分区:

swapoff -a
#关闭所有swap分区

1、如何使用swap分区:

①先分区,分区完后修改类型(t)82

②格式化    mkswap   /dev/sda

③打卡swap设备:swapon  设备

④关闭swap设备:swapoff   /dev/sda(只关闭设备)

swapoff -a   设备    关闭全部

九、挂载,解挂载与永久挂载

1、mount:挂载

挂载文件系统,iso镜像到指定文件夹(将硬件设备与系统文件做关联)

格式:mount 存储设备   挂载点目录

mount -o -loop  iso镜像文件   挂载点目录

2、umount 解挂载

卸载已经挂载的文件系统

格式:umount存储设备位置

umount  挂载点目录

3、永久挂载

就是将挂载放到文件夹里

blkid              #查看UUID号
vim /etc/fstab     #永久挂载UUID=?   /挂载的目录     文件格式    defaults 0  0mount -a           #重新加载

4、文件系统的修复

fack 

badblock  /dev/sda

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

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

相关文章

Ubuntu18.04安装GTSAM库并验证GTSAM是否安装成功(亲测可用)

在SLAM(Simultaneous Localization and Mapping)和SFM(Structure from Motion)这些复杂的估计问题中,因子图算法以其高效和灵活性而脱颖而出,成为图模型领域的核心技术。GTSAM(Georgia Tech Smo…

K8s实战-init容器

概念: 初始化容器的概念 比如一个容器A依赖其他容器,可以为A设置多个 依赖容易A1,A2,A3 A1,A2,A3要按照顺序启动,A1没有启动启动起来的 话,A2,A3是不会启动的,直到所有的静态容器全 部启动完毕…

Java并发编程(四)

ThreadLocal 1.ThreadLocal是什么 ThreadLocal类让每一个线程都拥有了自己的本地变量,这意味着每个线程都可以独立地、安全地操作这些变量,而不会影响其他线程。 ThreadLocal的常用API get():获取当前线程中与ThreadLocal对象关联的变量副…

Java EasyExcel 导入代码

Java EasyExcel 导入代码 导入方法 /*** 仓库库位导入** param req* param res* param files* throws Exception*/RequestMapping(value {"/import/line_store_locs"}, method {RequestMethod.POST})ResponseBodypublic void importStoreLoc(HttpServletRequest …

MySQL 索引、事务与存储引擎

MySQL 索引 索引的概念 索引是一个排序的列表,在这个列表中存储着索引的值和包含这个值的数据所在行的物理地址(类似于C语言的链表通过指针指向数据记录的内存地址)。使用索引后可以不用扫描全表来定位某行的数据,而是先通过索引…

一种适合企业的大体量数据迁移方式

在企业进行数字化转型的过程中,数据迁移是一项至关重要的任务。无论是从旧系统到新系统、从本地数据中心到云端,还是在不同云服务提供商之间进行数据迁移,数据的顺利转移对业务的成功至关重要。 然而,随着数据体量的不断增加&…

[SWPUCTF 2021 新生赛]sql

[SWPUCTF 2021 新生赛]sql wp 输入 1 正常回显: ?wllm1 返回: Want Me? Cross the Waf Your Login name:xxx Your Password:yyy输入单引号引发报错: ?wllm1 返回: Want Me? Cross the Waf You have an error in your SQL s…

ios环境搭建_xcode安装及运行源码

目录 1 xcode 介绍 2 xcode 下载 3 xocde 运行ios源码 1 xcode 介绍 Xcode 是运行在操作系统Mac OS X上的集成开发工具(IDE),由Apple Inc开发。Xcode是开发 macOS 和 iOS 应用程序的最快捷的方式。Xcode 具有统一的用户界面设计&#xff0…

为什么IDEA建议去掉StringBuilder,而要使用“+”拼接字符串

在字符串拼接时应该都见过下面这种提示: 大家普遍认知中,字符串拼接要用StringBuilder,那为什么idea会建议你是用呢,那到底StringBuilder和有什么具体区别呢,我们一起来探究一下。 普通拼接 普通的几个字符串拼接成一…

0基础学习VR全景平台篇第132篇:曝光三要素—快门速度

上课!全体起立~ 大家好,欢迎观看蛙色官方系列全景摄影课程! 经过前面两节课的学习我们认识了曝光三要素中的感光度和光圈,这节课我们将一同去了解影响曝光的最后一个要素——快门速度。 (曝光三要素:感光度、光圈、…

YOLOv8算法优化:解决YOLOv8无法打印计算量(GFLOPs)的问题点

💡💡💡本文内容:解决YOLOv8无法打印计算量的问题点 💡💡💡本文提供:1)训练阶段自动打印计算量;2)提供离线打印计算量的代码; 1.计算量介绍 FLOPS:注意S是大写,是 “每秒所执行的浮点运算次数”(floating-point operations per second)的缩写。它常被用…

低信噪比环境下的语音端点检测

端点检测技术 是 语音信号处理 的关键技术之一为提高低信噪比环境下端点检测的准确率和稳健性,提出了一种非平稳噪声抑制和调制域谱减结合功率 归一化 倒谱距离的端点检测算法 1 端点检测 1-1 定义 定义:在 存在背景噪声 的情况下检测出 语音的起始点和…

2022年全球软件质量效能大会(QECon北京站2022)-核心PPT资料下载

一、峰会简介 当前,新一轮科技革命和产业变革正在重塑全球经济格局,以云计算为代表的新一代信息技术创新活跃,与实体经济深度融合,推动泛在连接、数据驱动、智能引领的数字经济新形式孕育而生。 新兴技术的出现给测试乃至整个软…

Vue(一):Vue 入门与 Vue 指令

Vue 01. Vue 快速上手 1.1 Vue 的基本概念 用于 构建用户界面 的 渐进性 框架 构建用户界面:基于数据去渲染用户看到的界面渐进式:不需要学习全部的语法就能完成一些功能,学习是循序渐进的框架:一套完整的项目解决方案&#x…

ftp服务器(hcia)

原理 客户端 对服务器的访问 传输和下载数据 FTP (File Transfer Protocol)–21端口 FTP传输文件有两种方法: 浏览器 软件 SFTP(Secure File Transfer Protocol)–22端口 SFTP增加了一个安全层,SFTP会把数据加密后进行传输,但更安全带来副…

VSCode 如何安装插件的历史版本

背景 在日常开发过程中,我们可能会遇到新版VSCode插件存在问题,无法正常工作的情况。这种情况下,一种可行的解决方案就是安装插件的历史版本。VSCode 插件默认安装的都是插件最新的版本,例如下面 vscode-styled-compoents 插件 本…

Kubeadmin实现k8s集群:

Kubeadmin来快速搭建一个k8s集群: 二进制搭建适合大集群,50台以上的主机, 但是kubeadm更适合中小企业的业务集群 环境: Master:20.0.0.71 2核4G 或者4核8G docker kubelet kubectl flannel Node1:20.…

ROS MoveIt!

MoveIt!是一个用于ROS的开源运动规划库,提供多种功能,包括用于运动规划的快速逆运动学分析、用于操纵的高级算法、机械手控制、动力学、控制器和运动规划。(通过提供一个GUI来协助MoveIt!所需的各种设置,它允许使用RViz进行视觉反…

TCP 滑动窗口

滑动窗口(Sliding window)是一种流量控制技术。早期的网络通信中,通信双方不会考虑网络的拥挤情况直接发送数据。由于大家不知道网络拥塞状况,同时发送数据,导致中间节点阻塞掉包,谁也发不了数据&#xff0…

RustDesk连接客户端提示key不匹配 Key Mismatch无法连接(已解决)

环境: RustDesk1.1.9 服务端docker部署 问题描述: RustDesk连接客户端提示key不匹配 Key Mismatch无法连接 解决方案: 1.docker部署RustDesk服务检查配置 networks:rustdesk-net:external: falsevolumes:hbbr:hbbs:services:hbbs:container_name: rustdesk-hbbsport…