Linux磁盘管理与文件系统(二):实用工具和命令、fdisk分区示例


文章目录

  • 4、查看或管理磁盘分区-fdisk
    • 格式
    • 选项
    • 示例
  • 4、示例:使用 fdisk 命令创建分区
      • 需求
      • 操作步骤
  • 5、创建文件系统-mkfs
      • 格式
      • 常用选项
      • 示例
      • 创建其他类型的文件系统
  • 6、创建文件系统-mkswap
    • 格式
    • 常用选项
    • 示例
    • 拓展:关闭和启用交换分区
    • 拓展:swap分区编号为什么是1-4
  • 7、挂载、卸载文件系统-mount、umount
    • 1. 挂载文件系统-mount
    • 2. 卸载文件系统-umount
  • 8、设置文件系统的自动挂载-/etc/fstab文件
    • 字段格式
    • 内容示例
    • 字段解释
    • 添加示例


接上篇理论:Linux磁盘管理与文件系统(一):磁盘、MBR与分区和文件系统
本篇我们讲解一些实用的磁盘管理和文件系统命令:磁盘工具fdisk、创建文件系统、挂载和卸载文件系统以及配置启动自动挂载。
含一个示例实验:使用fdisk命令创建分区,有详细步骤。

4、查看或管理磁盘分区-fdisk

使用 fdisk 可以查看、创建、删除和修改磁盘分区。fdisk -l 可以列出所有磁盘及其分区信息,或指定特定的磁盘设备以查看其详细分区信息。

格式

fdisk [选项] [磁盘设备]
  • 选项:指定要执行的操作。
  • [磁盘设备]:指定要操作的磁盘设备(例如 /dev/sda)。

选项

  • l:列出所有磁盘及其分区表,或者指定磁盘设备的分区表。
  • b [大小]:指定磁盘的逻辑块大小(如 512、1024、2048、4096 字节)。
  • u:显示分区的起始和结束位置,以扇区而不是柱面为单位。
  • c [体积]:忽略 DOS 兼容模式,或者开启 DOS 兼容模式(dos、nondos)。
  • v:显示 fdisk 的版本信息。

示例

  1. 列出所有磁盘及其分区表

    fdisk -l
    
  2. 查看指定磁盘设备的分区表

    fdisk -l /dev/sda
    
  3. 显示分区的起始和结束位置,以扇区为单位

    fdisk -lu /dev/sda
    

4、示例:使用 fdisk 命令创建分区

需求

1、添加一块盘

2、划分分区-以主分区为主

3、使用xfs文件系统格式化和定义设备文件

4、创建/abc目录,将新建分区挂载到/abc上

5、配置为永久挂载,即重启后依然有效

操作步骤

  1. 添加一块盘

    以VMware虚拟机环境为例,在当前虚拟机设置中添加硬盘。

    使用默认SCSI格式即可。

    在这里插入图片描述

    :可以使用lsblkfdisk -l命令来确认系统是否识别了新硬盘。

  2. 进入 fdisk 交互模式

    使用fdisk工具可以划分分区。一般添加过的第二块硬盘为/dev/sdb,使用以下命令:

    fdisk /dev/sdb
    

    提示:交互模式中的常用指令

    • m:获取帮助菜单
    • n:新建分区**(常用)**
    • p:查看分区情况**(常用)**
    • d:删除分区
    • t:变更分区的类型(改变分区的系统ID)(常用)
    • w:保存分区操作并退出**(常用)**
    • q:不保存分区操作并退出
  3. 创建分区步骤

    • 输入 n 进入新建分区模式。
      • 选择分区类型,选择 p 创建主分区,e 创建扩展分区,或 l 创建逻辑分区。
      • 设置分区号(范围 1-4),默认是第一个分区,即1 ,按 Enter 键接受默认值。
      • 设置柱面序列,直接按 Enter 键接受默认值(默认2048-xxxx)。
      • 设置分区大小,例如 +20G 表示 20GB,按 Enter 键接受默认值表示使用所有剩余空间。(可以使用+sizeK+sizeM+sizeG等指定大小,或者输入+后按回车使用全部剩余空间)。(此步骤可以省略)
    • 输入 w 保存分区操作并退出。

    示例命令

    创建新分区:

    n
    p
    1
    <Enter>
    <Enter>
    +20G
    w
    
  4. 使用xfs文件系统格式化和定义设备文件:

    格式化分区为xfs文件系统:

    mkfs.xfs /dev/sdb1
    或者
    mkfs -t xfs /dev/sdb1
    
  5. 创建/abc目录,将新建分区挂载到/abc上(临时):

    创建挂载点目录/abc

    mkdir /abc
    

    将新分区挂载到/abc目录:

    mount /dev/sdb1 /abc
    

    验证:使用df -h命令查看挂载情况,或使用ls /abc查看挂载点下的内容。

    注意:变更硬盘(特别是正在使用的硬盘)的分区设置以后,建议最好将系统重启一次,或者执行“partprobe”命令(如partprobe /dev/sdb)更新内核的分区表信息,使操作系统检测新的分区表情况,以防格式化分区时损坏硬盘中已有的数据。

  6. 使挂载在系统重启后依然有效

    编辑/etc/fstab文件。使用文本编辑器打开/etc/fstab文件,并添加以下行:

    /dev/sdb1 /mnt/abc xfs defaults 0 2
    

    保存并关闭文件后,下次系统启动时,/dev/sdb1分区将自动挂载到/abc目录。

    解释defaults 0 2是挂载选项和文件系统检查顺序的组合。

    1. defaults:一个挂载选项,实际上是一个占位符,代表一组默认的挂载选项。
    2. 0:文件系统检查(fsck)的通过顺序(pass number)。在系统启动时,fsck用于检查文件系统的完整性并尝试修复任何问题。数字0意味着该文件系统不会在启动时由fsck检查。通常用于那些在系统启动时不包含关键系统文件的文件系统。
    3. 2:文件系统的备份顺序。用于备份工具(如dump)来决定哪些文件系统需要备份,以及备份的优先级。数字2表示这个文件系统在备份时会被考虑,但优先级不是最高的。数字0表示从不备份该文件系统。

    注意:在编辑/etc/fstab文件时,配置错误可能导致系统无法启动。

    验证:可以使用mount -a命令测试挂载配置是否正确,无需重启系统。

5、创建文件系统-mkfs

创建文件系统的过程即格式化分区的过程。通过格式化,可以将一个分区初始化为指定的文件系统类型,使其可以存储和管理文件和目录。

格式

mkfs -t <文件系统类型> <设备>

或者使用专用的格式化命令,例如 mkfs.xfs

常用选项

  • t <文件系统类型>:指定要创建的文件系统类型,如 xfs, ext4, vfat 等。
  • <设备>:指定要格式化的分区或设备,例如 /dev/sdb1

示例

  1. 使用通用命令 mkfs

    mkfs -t xfs /dev/sdb1
    

    该命令将 /dev/sdb1 分区格式化为 XFS 文件系统。

  2. 使用专用命令 mkfs.xfs

    mkfs.xfs /dev/sdb1
    

    该命令也将 /dev/sdb1 分区格式化为 XFS 文件系统,是 mkfs -t xfs 的简写形式。

创建其他类型的文件系统

  1. 创建 EXT4 文件系统

    mkfs -t ext4 /dev/sdb1
    

    或者:

    mkfs.ext4 /dev/sdb1
    
  2. 创建 VFAT 文件系统

    mkfs -t vfat /dev/sdb1
    

    或者:

    mkfs.vfat /dev/sdb1
    

6、创建文件系统-mkswap

用于初始化交换空间(swap partition)。会创建一个空的交换空间文件或分区,并准备好让系统使用该交换空间进行内存扩展。交换空间用于存储暂时不活跃的内存页面,帮助系统在物理内存不足时避免崩溃。

格式

mkswap [选项] 设备或文件
  • 选项:指定如何初始化交换空间的参数。
  • 设备或文件:指定要创建交换空间的设备或文件。

常用选项

  • L <标签>:为交换空间设置一个标签。
  • U <UUID>:为交换空间指定一个 UUID(通用唯一标识符)。

示例

  1. 初始化交换分区

    mkswap /dev/sdb1
    

    /dev/sdb1 上初始化交换分区,使其可以用作交换空间。

    可以通过cat /proc/meminfo l grep SwapTotal 查看。

  2. 初始化交换文件,并为其设置标签

    mkswap -L swapfile /swapfile
    

    /swapfile 上创建交换空间,并设置标签为 swapfile

  3. 为交换分区指定 UUID

    mkswap -U 12345678-1234-1234-1234-1234567890ab /dev/sdb2
    

    /dev/sdb2 上初始化交换分区,并为其指定 UUID。

拓展:关闭和启用交换分区

  • 关闭所有交换分区:swapoff -a
  • 启用交换分区:swapon -a

拓展:swap分区编号为什么是1-4

  • 问:swap分区编号为什么是1-4,而不是5?
  • 答:因为它被设置为主分区;如果编号为 5 或更高,那它是一个逻辑分区。

7、挂载、卸载文件系统-mount、umount

1. 挂载文件系统-mount

  • 格式

    mount [-t 类型] 存储设备 挂载点目录
  • 挂载 ISO 镜像

    mount -o loop ISO镜像文件 挂载点目录
  • 选项说明

    • t:用于指定文件系统类型。通常可以省略,由系统自动识别。
    • o:用于指定挂载参数列表,以英文逗号分隔。例如,loop 参数用于挂载 ISO 镜像文件。
  • 示例

    1. 挂载 CD-ROM 到 /mnt

      mount /dev/cdrom /mnt
      
    2. 挂载分区 /dev/sdb1/opt

      mount /dev/sdb1 /opt
      
    3. 挂载 ISO 镜像 CentOS-7-x86_64-DVD-1611.iso/media/mnt

      mount -o loop CentOS-7-x86_64-DVD-1611.iso /media/mnt
      

2. 卸载文件系统-umount

  • 基本格式

    umount [-lf] 存储设备目录 或 挂载点目录
    
  • 选项说明

    • l:延迟卸载,即在设备不再使用时再进行卸载。
    • f:强制卸载,即使设备正在被使用也强制卸载。
  • 卸载前提

    • 确保挂载的设备或目录不再被使用。如果目录中有打开的文件或正在使用的进程,可能需要先退出或停止相关进程。
  • 示例

    1. 卸载 /dev/sdb1

      umount /dev/sdb1
      
    2. 卸载挂载点 /media/mnt

      umount /media/mnt
      
    3. 强制卸载(如果设备正在使用中)

      umount -f /media/mnt
      
    4. 延迟卸载(在设备不再使用时卸载)

      umount -l /media/mnt
      

8、设置文件系统的自动挂载-/etc/fstab文件

/etc/fstab 文件用于配置系统启动时自动挂载文件系统的详细信息。每一行描述一个文件系统的挂载方式和选项。

字段格式

<分区名或设备卷标名> <挂载点目录> <文件系统类型> <挂载参数> <dump备份> <磁盘检查顺序>

内容示例

# <分区名或设备卷标名> <挂载点目录> <文件系统类型> <挂载参数> <dump备份> <磁盘检查顺序>
UUID=3f6b41f6-8d8a-4c65-9f38-3a6b4f1d6cb7 /          ext4    defaults        1 1
UUID=4f5a6e7d-8b9c-4d0e-a123-4b5c6d7e8f9a /home      xfs     defaults        1 2
/dev/sdb1     /mnt/data  ext4    defaults,rw            0 2

字段解释

第1字段:分区名或设备卷标名

第2字段:文件系统的挂载点目录的位置

第3字段:文件系统类型,如 xfs、swap 等

第4字段:挂载参数,即mount命令“-o”选项后可使用的参数。例如,defaults(默认参数)、rw(可读写)、ro(只读)、noexec(禁用执行程序)

第5字段:表示文件系统是否需要 dump 备份(dump 是一个备份工具)。一般设为1时表示需要,设为0时将被dump 忽略

第6字段:该数字决定在系统启动时进行磁盘检查的顺序。0表示不进行检查,1表示优先检查,2表示其次检查。根分区应设为 1,其他分区设为 2

添加示例

/dev/sdb1 /opt xfs defaults 0 0
/dev/sr0 /mnt iso9660 defaults 0 0
  • /dev/sdb1:设备名或分区名。
  • /opt:挂载点目录。
  • xfs:文件系统类型。
  • defaults:挂载参数,使用默认设置。
  • 0dump 备份标志,不进行备份。
  • 0:磁盘检查顺序,表示不进行检查。
  • /dev/sr0:设备名或光驱设备。
  • /mnt:挂载点目录。
  • iso9660:文件系统类型,通常用于光盘镜像。
  • defaults:挂载参数,使用默认设置。
  • 0dump 备份标志,不进行备份。
  • 0:磁盘检查顺序,表示不进行检查。

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

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

相关文章

Visual Studio Code搭建VUE开发环境

Vue.js 是一款易学易用&#xff0c;性能出色&#xff0c;适用场景丰富的 Web 前端框架。它基于标准 HTML、CSS 和 JavaScript 构建&#xff0c;提供容易上手的 API 和一流的文档。可以用来开启PC网页、移动端网页页面、小程序等等 实验环境 VS Code 1.88.1Node 20.16.0Vue3.2…

趋动科技联合超聚变,让超融合彻底释放算力潜能

近日&#xff0c;趋动科技联合超聚变推出基于FusionOne HCI超融合的AI算力资源池化解决方案。该方案基于业内领先的AI算力资源池化技术&#xff0c;实现智能调度、异构算力融合管理等功能&#xff0c;让客户能够低成本获取AI算力&#xff0c;便捷使用AI算力&#xff0c;加速AI业…

AI学习记录 - transformer的Embedding层

创作不易&#xff0c;免费的赞 前面有介绍了GPT2如何进行token化的过程&#xff0c;现在讲下transformer的Embedding层 Embedding层就是一个巨大的矩阵&#xff0c;边长分别是词汇表长度和词向量维度&#xff0c;矩阵里面的每一个数字都是一个随机初始化的&#xff0c;或者是…

TinyWebserver的复现与改进(1):服务器环境的搭建与测试

计划开一个新坑, 主要是复现qinguoyi/TinyWebServer项目&#xff0c;并且使用其它模块提升性能。 本文开发服务器配置&#xff1a;腾讯云轻量级服务器&#xff0c;CPU - 2核 内存 - 2GB&#xff0c;操作系统 Ubuntu Server 18.04.1 LTS 64bit 打开端口 需要打开服务器3306、80…

常见硬件工程师面试题(四)

大家好&#xff0c;我是山羊君Goat。 对于硬件工程师&#xff0c;学习的东西主要和电路硬件相关&#xff0c;所以在硬件工程师的面试中&#xff0c;对于经验是十分看重的&#xff0c;像PCB设计&#xff0c;电路设计原理&#xff0c;模拟电路&#xff0c;数字电路等等相关的知识…

DriftingBlues2靶机渗透测试

DriftingBlues2靶机 文章目录 DriftingBlues2靶机信息收集FTP渗透web渗透权限提升靶机总结 信息收集 nmap扫描得到21,22和80端口&#xff0c;其中21ftp协议可以使用匿名用户登录 使用目录扫描一下网站&#xff0c;得到了blog目录 FTP渗透 匿名用户登录进去&#xff0c;发现…

WPF篇(8)- Button按钮

1. 用法解析 Button因为继承了ButtonBase&#xff0c;而ButtonBase又继承了ContentControl&#xff0c;所以&#xff0c;Button可以通过设置Content属性来设置要显示的内容。例如 <Button Content"确定"/>我们使用Button的时机&#xff0c;通常是鼠标点击事件…

补录:day023-回溯法

40.组合II 给定一个候选人编号的集合 candidates 和一个目标数 target &#xff0c;找出 candidates 中所有可以使数字和为 target 的组合。 candidates 中的每个数字在每个组合中只能使用 一次 。 注意&#xff1a;解集不能包含重复的组合。 思路:组合题目二&#xff0c;这个题…

2024世界机器人大会将于8月21日至25日在京举行

2024年的世界机器人大会预定于8月21日至25日&#xff0c;在北京经济技术开发区的北人亦创国际会展中心隆重举办。 本届大会以“共育新质生产力 共享智能新未来”为核心主题&#xff0c;将汇聚来自全球超过300位的机器人行业专家、国际组织代表、杰出科学家以及企业家&#xff0…

【云原生】Prometheus Pushgateway使用详解

目录 一、前言 二、Pushgateway概述 2.1 什么是Pushgateway 2.1.1 Pushgateway在Prometheus中的位置 2.2 为什么需要Pushgateway 2.3 Pushgateway作用 2.4 Pushgateway 工作原理 2.5 Pushgateway 使用场景 2.6 Pushgateway 优缺点 三、Pushgateway 部署 3.1 二进制安…

ip透传及实例

IP 透传介绍 “IP 透传”&#xff08;IP Passthrough&#xff09;是一种网络配置方式&#xff0c;指的是将网络服务提供商分配给用户的公网 IP 地址直接传递或分配给用户设备&#xff0c;而不是经过网络地址转换&#xff08;NAT&#xff09;处理。 在传统的网络环境中&#xf…

HTML5+JavaScript绘制彩虹和云朵

HTML5JavaScript绘制彩虹和云朵 彩虹&#xff0c;简称虹&#xff0c;是气象中的一种光学现象&#xff0c;当太阳光照射到半空中的水滴&#xff0c;光线被折射及反射&#xff0c;在天空上形成拱形的七彩光谱&#xff0c;由外圈至内圈呈红、橙、黄、绿、蓝、靛、紫七种颜色。事实…

Qt WebEngine基于WebEngineScript注入js脚本

在之前的文章中&#xff0c;我们介绍了Qt WebEngine注入js的用法&#xff0c;及runJavaScript()的用法&#xff0c;该方法主要是用在页面加载完成后&#xff0c;为了和网页做一些交互时使用。有时候需要监听网页加载完成的一些状态或信息&#xff0c;则需要网页加载前注入js来实…

VSCODE platformio ESP32-S3 内置 JTAG 接口断点单步调试笔记

ESP32 S3的两种JTAG调试方法 ESP32 S3的有两种JTAG调试方法&#xff0c;直接连接板子上的JTAG引脚进行调试&#xff0c;或者用ESP32-S3 内置 JTAG 接口进行调试&#xff0c;这些方法有助于开发者在开发过程中进行更深入的调试。 1、ESP32-S3 内置 JTAG 接口 使用 ESP32-S3 内…

VSCode Markdown Preview Enhanced启用PlantumlL支持

目录 VSCode Markdown Preview Enhanced启用Plantuml支持安装Java下载Plantuml最新版本jar文件配置Markdown Preview Enhanced中Plantuml Jar Path路径 VSCode Markdown Preview Enhanced启用Plantuml支持 当需要Markdown支持PlantUML语法显示支持时&#xff0c;需要进行如下设…

学单片机怎么在3-5个月内找到工作?

每个初学者&#xff0c;都如履薄冰&#xff0c;10几年前&#xff0c;我自学单片机时&#xff0c;也一样。 想通过学习&#xff0c;找一份体面点的工作&#xff0c;又害怕辛辛苦苦学出来&#xff0c;找不到工作。 好在&#xff0c;当初执行力&#xff0c;还算可以&#xff0c;自…

使用FFmpeg实现摄像头RTMP实时推流

在当今的数字时代,视频直播已成为连接人与人之间的重要桥梁,广泛应用于在线教育、远程会议、娱乐直播等多个领域。随着技术的不断进步,人们对于直播的实时性、稳定性和高质量需求日益增加。为了实现高效的视频直播,选择合适的工具和协议至关重要。 RTMP(Real-Time Messagi…

LVS集群中的负载均衡技术

目录 一、LVS技术原理 二、NAT模式原理及部署方法 1、工作原理 2、部署方法 1、网络配置 2、软件安装与启用 3、测试 三、DR模式原理及部署方法 1、工作原理 2、部署方法 1、网络配置 2、解决vip响应问题 3、测试 四、ipvsadm命令及参数 1、管理集群服务&#x…

MySQL增删改查(基础)

1、. 新增&#xff08;Create&#xff09; 语法&#xff1a; INSERT [INTO] table_name[(column [, column] ...)] VALUES (value_list) [, (value_list)] ... 例子&#xff1a; -- 创建一张学生表 DROP TABLE IF EXISTS student; CREATE TABLE student (id INT,sn INT com…

DC-DC控制器芯片内部如何实现PWM控制?

大家好,这里是大话硬件。 在前面文章中,结合UC3842芯片内部框图,陆续实现了芯片的振荡器功能,参考电压功能,过欠压保护功能。今天这篇文章对PWM控制功能进行仿真。 根据框图,器件内部主要是误差放大器和高速比较器。 实现思路如下:模拟一个输出电压,纹波变化频率和…