Linux磁盘查看,使用(分区、格式化、挂载)
目录
0、观察磁盘分区状态:lsblk、blkid、parted
0.1 lsblk列出系统上的所有磁盘列表
0.2 blkid列出设备的UUID等参数
0.3 parted列出磁盘的分区表类型与分区信息
1、磁盘分区:gdisk、fdisk
1.1 fdisk
2、磁盘格式化(创建文件系统):mkfs
3、文件系统挂载
3.1.1 手动挂载:mount
3.1.2 手动取消挂载:umount
3.2 自动挂载
3.3 重启自动挂载失败解决问题
如果我们想要在系统里面新增一块磁盘时,应该有哪些操作需要做:
- 对磁盘进行划分,以建立可用的硬盘分区
- 对该硬盘分区进行格式化(format),以建立系统可用的文件系统
- 若想要仔细一点,则可对刚刚建立好的文件系统进行检验
- 在Linux系统下,需要建立挂载点(亦即是目录),并将它挂载上来
0、观察磁盘分区状态:lsblk、blkid、parted
目前磁盘分区主要有MBR以及GPT两种格式,这两种格式所使用的的分区工具不太一样,因此我们需要去知道目前系统有哪些磁盘以及分区方式等等信息
0.1 lsblk列出系统上的所有磁盘列表
可以把lsblk看做 list block device 的缩写,也就是列出所有存储设备的意思
lsblk【-dfimpt】【device】
选项与参数:
-d:仅列出磁盘本身,并不列出该磁盘的分区数据
-f:同时列出该磁盘内的文件系统名称
-i:使用ASCII的字符输出,不要使用复杂的编码(在某些环境下很有用)
-m:同时输出该设备在/dev下面的权限信息(rwx的数据)
-p:列出该设备的完整文件名,而不是列出最后的名字而已
-t:列出该磁盘设备的详细信息,包括磁盘阵列机制、预读写的数据量大小等
列出本系统下所有的磁盘与磁盘内的分区信息:
目前系统主要有个sr0以及一个nvme0n1设备
lsblk默认输出的信息:
NAME:设备的文件名,会省略/dev等前导目录
MAJ:MIN:分别为主要与次要设备代码(内核识别的设备就是通过这两个代码实现的)
RM:是否为可拆卸设备(removable device),如光盘、USB磁盘等
SIZE:容量
TYPE:是磁盘(disk)、分区(partition)还是只读存储器(rom)等输出
MOUNTPOINT:挂载点
列出/dev/nvme0n1设备内所有数据的完整文件名:
0.2 blkid列出设备的UUID等参数
UUID时全局唯一标识符(universally unique identifier),Linux会将系统内所有的设备都给予一个独一无二的标识符,这个标识符可以拿来挂载或是使用这个设备或文件系统
补充:lsblk -f也可列出设备的UUID
0.3 parted列出磁盘的分区表类型与分区信息
parted devicename print
列出/dev/nvme0n1磁盘的相关信息
Model:磁盘的模块名称(厂商)
Disk:磁盘的总容量
Sector size(logical/physical):磁盘的每个逻辑/物理扇区容量
Partition Table:分区表格式(MBR/GPT)
msdos是基于MBR的
这些是分区数据
1、磁盘分区:gdisk、fdisk
MBR分区表请使用fdisk分区,GPT分区表请使用gdisk分区
为讲解fdisk命令,新建了两块磁盘来供我们使用(sda与nvme0n2)
1.1 fdisk
语法:
fdisk 设备名称
输入m查看命令
Help:DOS (MBR)a toggle a bootable flagb edit nested BSD disklabelc toggle the dos compatibility flagGenericd delete a partitionF list free unpartitioned spacel list known partition typesn add a new partitionp print the partition tablet change a partition typev verify the partition tablei print information about a partitionMiscm print this menuu change display/entry unitsx extra functionality (experts only)ScriptI load disk layout from sfdisk script fileO dump disk layout to sfdisk script fileSave & Exitw write table to disk and exitq quit without saving changesCreate a new labelg create a new empty GPT partition tableG create a new empty SGI (IRIX) partition tableo create a new empty DOS partition tables create a new empty Sun partition table
介绍其中常用的目录:
d delete a partition 删除一个磁盘分区
n add a new partition 新增一个磁盘分区
p print the partition table 在屏幕上显示分区表
w write table to disk and exit 保存退出
q quit without saving changes 不保存退出
先查看一下我们的分区表(此时是没有分区的)
创建一个分区的各个流程
新增分区:n
p primary (0 primary, 0 extended, 4 free) 主分区
e extended (container for logical partitions) 扩展分区选择分区类型:p/e
分区位置:1-4
选择起始扇区位置和结束扇区位置
结束扇区的位置除了选择数字外还可以使用+/-来选择容量大小,因为通过512B*扇区数量来计算比较麻烦
全部流程:
创建一个主分区
创建一个扩展分区
创建一个逻辑分区(逻辑分区是位于扩展分区内的)
此时我们来查看一下分区表
保存退出
查看路径下的sda磁盘(1-4是给主分区和逻辑分区使用的)
1.2 fdisk
语法:gdisk 设备名称
gdisk跟fdisk使用方法几乎一样,这里就不做多介绍了
补充:使用partprobe更新Linux内核的分区表信息,因为有时候Linux还在使用磁盘,为了防止和系统出问题,所以分区表有时候没有被更新,这个时候有两种方法来处理:一种为重新启动,另一种就是利用partprobe命令
partprobe【-s】加上选项-s可以把信息打印到屏幕上
2、磁盘格式化(创建文件系统):mkfs
mkfs命令有一个-t选项可以供我们指定要构建的文件系统的类型
-t, --type type
Specify the type of filesystem to be built. If not specified, the default filesystem type (currently ext2) is used
mkfs其实是一个综合命令,当我们使用mkfs -t xfs时,他就会去找mkfs.xfs相关的参数给我们使用;当我们使用mkfs -t ext4时,他就去找mkfs.ext4的相关参数,所以mkfs -t xfs(mkfs -t ext4)与使用mkfs.xfs(mkfs.ext4)是一样的
使用不同的文件系统,它输出的效果是不同的
3、文件系统挂载
挂载点是一个目录,这个目录是进入磁盘分区(其实是文件系统)的入口
在挂载前,你需要确认一下:
- 单一文件系统不应该被重复挂载在不同的挂载点(目录)中
- 单一目录不应该重复挂载多个文件系统
- 要作为挂载点的目录,理论上应该都是空目录才行
如果用来挂载的目录不为空,那么挂载了文件系统之后,原目录下的东西就会暂时地消失
3.1.1 手动挂载:mount
mount -a
mount -l
mount 【-t 文件系统】LABEL=‘ ’ 挂载点
mount 【-t 文件系统】UUID=‘ ’ 挂载点
mount 【-t 文件系统】设备文件名 挂载点
选项与参数:
-a:依照配置文件/etc/fstab的数据将所有未挂载的磁盘都挂载上来
-l:单纯的输入mount会显示目前挂载的信息,加上-l可增列Label名称
-t:可以加上文件系统种类来指定欲挂载的类型
-n:在默认情况下,系统会将实际挂载的情况即时写入/etc/mtab中,所以可使用-n来避免写入
-o:后面可以接一些挂载时额外加上的参数
这个时候,我们就可以进入挂载点来使用磁盘
取消挂载后,在磁盘中创建的文件还会存在于磁盘,但挂载点下已经无法找到了,因为取消了挂载就取消了进入此磁盘的入口
3.1.2 手动取消挂载:umount
umount 设备名/文件系统/挂载点
3.2 自动挂载
如何开机时自动把我们的文件挂载好,直接到/etc/fstab中去修改就行
系统挂载的一些限制:
- 根目录时必须挂载的,而且优先级一定要先于其他挂载点被挂载进来
- 其他挂载点必须为已建立的目录,可任意指定,但一定要遵循必须的系统目录架构原则(FHS)
- 所有挂载点在同一时间之内只能挂载一次
- 所有硬盘分区在同一时间之内挂载一次
- 如若进行卸载,你必须先将工作目录已到挂载点(及其子目录)之外
/etc/fstab文件内容:
这个文件就是我们利用mount命令进行挂载时,将所有选项与参数写入的文件
这个文件共有六部分
第一栏:磁盘文件名/UUID/LABEL name
第二栏:挂载点(目录)
第三栏:磁盘分区的文件系统
第四栏:文件系统参数
第五栏:是否能被dump备份命令作用
第六栏:是否以fsck检验扇区
修改文件内容使之能够开机自动挂载
保存退出后,我们重启看看
3.3 重启自动挂载失败解决问题
当我们的磁盘出现问题(此处把磁盘的分区删除了)时,重启时挂载不上怎么办
解决方案:
在启动界面选择第一项,并按e进入编辑
进入此界面后,在linux开头到quiet结尾的句子最后加上rd.break
加入后按ctrl+x继续启动,进入紧急模式
进入紧急模式输入root密码
输入mount -n -o remount,rw /sysroot重新挂载根目录
chroot /sysroot切换文件系统
vim /etc/fstab编辑文件,将挂载错误的文件系统删除或注销(sda1的那一行删除)
最后两个exit退出根文件系统和紧急模式 等待系统启动
相关文章:

Linux磁盘查看,使用(分区、格式化、挂载)
目录 0、观察磁盘分区状态:lsblk、blkid、parted 0.1 lsblk列出系统上的所有磁盘列表 0.2 blkid列出设备的UUID等参数 0.3 parted列出磁盘的分区表类型与分区信息 1、磁盘分区:gdisk、fdisk 1.1 fdisk 2、磁盘格式化(创建文件系统…...
走进WebGL
什么是 WebGL? WebGL 是一种跨平台、免版税的 API,用于在 Web 浏览器中创建 3D 图形。基于 OpenGL ES 2.0,WebGL 使用 OpenGL 着色语言 GLSL,并提供熟悉的标准 OpenGL API。因为它在 HTML5 Canvas 元素中运行,所以 We…...
Unity 中 Awake 和 Start 时机与 GameObject的关系
Awake和Start很相似,都是在脚本的初始阶段执行 但是有两点重要不同: Awake先执行Awake即便在脚本 disabled (即enabled false)时,也会执行,但是Start就不会执行了 对一个物体: 当初始没有激…...

1月份 GameFi 行业报告
Jan. 2023, DanielData Source: January Monthly GameFi Report在经历了艰难的一年之后,1 月是对加密货币市场最有利的月份。虽然可以说的大部分内容适用于其他看涨周期,但有几个统计数据令 1 月在区块链领域非常有趣。例如&#…...
JVM - 调优
目录 调什么,如何调 内存方面 线程方面 如何调优 调优的目标,策略和冷思考 JVM调优的目标 常见调优策略 JVM调优冷思考 调优经验与内存泄漏分析 JVM调优经验 内存泄露 调什么,如何调 内存方面 JVM需要的内存总大小各块内存分配,新生代、老年代、存活区选…...

flask配置https协议
感谢https://blog.csdn.net/qq_33934427/article/details/127456673,文中多有参考再实践一、要用https协议需要有ca证书,在windows10先下载windows版本openssl,地址如下https://share.weiyun.com/vfjVrMAb我是64位的选择下载完毕安装后配置环…...

Springboot 我随手封装了一个万能的导出excel工具,传什么都能导出
前言 如题,这个小玩意,就是不限制你查的是哪张表,用的是什么类。 我直接一把梭,嘎嘎给你一顿导出。 我知道,这是很多人都想过的, 至少我就收到很多人问过我这个类似的问题。 我也跟他们说了,但…...

【Linux详解】——进程控制(创建、终止、等待、替换)
📖 前言:本期介绍进程控制(创建、终止、等待、替换)。 目录🕒 1. 进程创建🕘 1.1 fork函数初识🕘 1.2 fork的返回值问题🕘 1.3 写时拷贝🕘 1.4 创建多个进程🕒…...

HummerRisk V0.9.1:操作审计增加百度云,增加主机检测规则及多处优化
HummerRisk V0.9.0发布:增加RBAC 资源拓扑图,首页新增检查的统计数据,云检测、漏洞、主机等模块增加规则,对象存储增加京东云,操作审计增加金山云,镜像仓库新增设置别名。 感谢社区中小伙伴们的反馈&#…...
Rust入门(十六):手写web服务器和线程池
这一章将实现一个手写的 web server 和 多线程的服务器,用到之前学到的所有特性 简单的web server 作为一个 web 服务器,我们首先要能接收到请求,目前市面上的 web 服务大多数都是基于 HTTP 和 HTTPS 协议的,而他们有是基于 TCP…...

数据结构——第二章 线性表(1)——顺序结构
线性表1. 线性表1.1 线性表的定义1.1.1 访问型操作1.1.2 加工型操作1.2 线性表的顺序存储结构1.2.1 定义顺序表数据类型方法11.2.2 定义顺序表数据类型方法21.3 顺序表的基本操作实现1.3.1 顺序表的初始化操作1.3.2 顺序表的插入操作1.3.3 顺序表的删除操作1.3.4 顺序表的更新操…...

YOLO 格式数据集制作
目录 1. YOLO简介 2.分割数据集准备 3.代码展示 整理不易,欢迎一键三连!!! 1. YOLO简介 YOLO(You Only Look Once)是一种流行的目标检测和图像分割模型,由华盛顿大学的 Joseph Redmon 和 Al…...
基于linux内核的驱动开发
1 字符设备驱动框架 1.1字符设备 定义:只能以一个字节一个字节的方式读写的设备,不能随机的读取设备中中的某一段数据,读取数据需要按照先后顺序。(字符设备是面向字节流的) 常见的字…...

找不到工作的测试员一大把,大厂却招不到优秀软件测试员?高薪难寻测试工程师。
测试工程师招了快一个月了,实在招不到合适的,已经在被解雇的边缘了。。。” 初级测试工程师非常多,但真正掌握测试思维、能力强的优秀测试太少了! 据我所知, 当下的测试人员不少状态都是这样的: 在工作中…...

buuctf Basic
buuctf Basic 1.Linux Labs 根据提示我们可以知道需要远程连接linux服务器,这里使用xshell进行如下配置 输入ssh的用户名root,密码123456 连接成功 构造命令 ls …/ 查看文件 查看flag cat …/flag.txt 为flag{8fee8783-1ed5-4b67-90eb-a1d603a0208…...

赛狐ERP|亚马逊产品缺货怎么办?该如何补救?
由于物流时效的延长,运输成本的增加,亚马逊的仓储限制等各种原因,断货问题很常成为亚马逊卖家的普遍困扰。那么亚马逊产品缺货应该怎么办!1、提高产品价格:除了卖自己的Listing此外,提高产品价格也是一种保…...
《Elasticsearch源码解读与优化实战》张超-读书笔记
写在前面 好久没更新博客了,应届狗没办法啊╮(╯▽╰)╭为了秋招搞了小半年,从去年5月到现在搞了两段实习(京东、游戏公司),最终年前拿到一家还不错的offer,现在已经入职实习了,不出意外的话以…...

编码踩坑——运行时报错java.lang.NoSuchMethodError / 同名类加载问题 / 双亲委派【建议收藏】
本篇介绍一个实际遇到的排查异常的case,涉及的知识点包括:类加载机制、jar包中的类加载顺序、JVM双亲委派模型、破坏双亲委派模型及自定义类加载器的代码示例;问题背景业务版本,旧功能升级,原先引用的一个二方包中的du…...

软件测试选Python还是Java?
目录 前言 1、先从一门语言开始 2、两个语言的区别 3、两个语言的测试栈技术 4、如何选择两种语言? 总结 前言 对于工作多年的从业者来说,同时掌握java和Python两门语言再好不过,可以大大增加找工作时的选择范围。但是对于转行的人或者…...

“2023数据安全智能化中国行”活动,开幕即高能
工信部等16部门近日发布的《关于促进数据安全产业发展的指导意见》提出,到2025年,数据安全产业基础能力和综合实力明显增强,数据安全产业规模超过1500亿元,年复合增长率超过30%。到2035年,数据安全产业进入繁荣成熟期。…...
树莓派超全系列教程文档--(62)使用rpicam-app通过网络流式传输视频
使用rpicam-app通过网络流式传输视频 使用 rpicam-app 通过网络流式传输视频UDPTCPRTSPlibavGStreamerRTPlibcamerasrc GStreamer 元素 文章来源: http://raspberry.dns8844.cn/documentation 原文网址 使用 rpicam-app 通过网络流式传输视频 本节介绍来自 rpica…...

边缘计算医疗风险自查APP开发方案
核心目标:在便携设备(智能手表/家用检测仪)部署轻量化疾病预测模型,实现低延迟、隐私安全的实时健康风险评估。 一、技术架构设计 #mermaid-svg-iuNaeeLK2YoFKfao {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg…...

如何在看板中体现优先级变化
在看板中有效体现优先级变化的关键措施包括:采用颜色或标签标识优先级、设置任务排序规则、使用独立的优先级列或泳道、结合自动化规则同步优先级变化、建立定期的优先级审查流程。其中,设置任务排序规则尤其重要,因为它让看板视觉上直观地体…...

UDP(Echoserver)
网络命令 Ping 命令 检测网络是否连通 使用方法: ping -c 次数 网址ping -c 3 www.baidu.comnetstat 命令 netstat 是一个用来查看网络状态的重要工具. 语法:netstat [选项] 功能:查看网络状态 常用选项: n 拒绝显示别名&#…...

2.Vue编写一个app
1.src中重要的组成 1.1main.ts // 引入createApp用于创建应用 import { createApp } from "vue"; // 引用App根组件 import App from ./App.vue;createApp(App).mount(#app)1.2 App.vue 其中要写三种标签 <template> <!--html--> </template>…...

剑指offer20_链表中环的入口节点
链表中环的入口节点 给定一个链表,若其中包含环,则输出环的入口节点。 若其中不包含环,则输出null。 数据范围 节点 val 值取值范围 [ 1 , 1000 ] [1,1000] [1,1000]。 节点 val 值各不相同。 链表长度 [ 0 , 500 ] [0,500] [0,500]。 …...
【算法训练营Day07】字符串part1
文章目录 反转字符串反转字符串II替换数字 反转字符串 题目链接:344. 反转字符串 双指针法,两个指针的元素直接调转即可 class Solution {public void reverseString(char[] s) {int head 0;int end s.length - 1;while(head < end) {char temp …...
论文解读:交大港大上海AI Lab开源论文 | 宇树机器人多姿态起立控制强化学习框架(一)
宇树机器人多姿态起立控制强化学习框架论文解析 论文解读:交大&港大&上海AI Lab开源论文 | 宇树机器人多姿态起立控制强化学习框架(一) 论文解读:交大&港大&上海AI Lab开源论文 | 宇树机器人多姿态起立控制强化…...
【HTTP三个基础问题】
面试官您好!HTTP是超文本传输协议,是互联网上客户端和服务器之间传输超文本数据(比如文字、图片、音频、视频等)的核心协议,当前互联网应用最广泛的版本是HTTP1.1,它基于经典的C/S模型,也就是客…...

AI书签管理工具开发全记录(十九):嵌入资源处理
1.前言 📝 在上一篇文章中,我们完成了书签的导入导出功能。本篇文章我们研究如何处理嵌入资源,方便后续将资源打包到一个可执行文件中。 2.embed介绍 🎯 Go 1.16 引入了革命性的 embed 包,彻底改变了静态资源管理的…...