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

news2024/11/16 19:24:40

文章目录

  • 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.coloradmin.cn/o/1992048.html

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

相关文章

路径规划 | 五种经典算法优化机器人路径规划(Matlab)

目录 效果一览基本介绍程序设计参考文献 效果一览 基本介绍 五种经典算法优化机器人路径规划&#xff0c;算法可任意更换&#xff01;地图可修改&#xff01;Matlab语言 1.分为简单路径规划和复杂路径规划两种情景&#xff0c;采用粒子群算法(PSO)&#xff0c;遗传算法(GA)&am…

[Qt][信号与槽][上]详细讲解

目录 0.Q_OBJECT宏1.信号和槽概述1.信号2.槽3.说明 2.信号和槽的使用1.连接信号和槽2.查看内置信号和槽 0.Q_OBJECT宏 Qt如果要让某个类能够使用信号槽&#xff0c;则必须要在类最开始的地方&#xff0c;写下Q_OBJECT宏 1.信号和槽概述 1.信号 在Qt中&#xff0c;⽤⼾和控件…

如何在银河麒麟操作系统上搭建 Electron (含 Electron 打包指南)

本次教程所用版本 QT版本&#xff1a;5.12 Eletron版本&#xff1a;31.3.1 Electron-packager版本&#xff1a;17.1.2 VScode版本&#xff1a;1.92.0 Node版本&#xff1a;18.19.0 npm版本&#xff1a;10.2.3 前言&#xff1a; 随着跨平台应用开发的需求日益增长&#…

Python基础核心知识点(建议收藏再用)

目录 一、python入门day1-day24 day01-03 编程语言day04 变量day05 垃圾回收机制&#xff08;GC机制&#xff09; 1 引用计数2 标记清除3 分代回收 day05 程序交互与基本运算符day06 可变不可变类型day07 流程控制 1 赋值 2 浅拷贝 copy3 深拷贝 deepcopy day08-10 基本数据类…

ES数据类型学习之keyword和text以及查询条件match和term

es&#xff08;4&#xff09;—查询条件match和term_es match term-CSDN博客 参考文章如上。开始学习 1.text和keyword的学习 直接上官网Text type family | Elasticsearch Guide [7.17] | Elastic Text type family The text family includes the following field types: …

默克索引轻松搞定,快速查找!

在化学、药学和生物科学领域&#xff0c;有一部被广泛认可的权威工具书——《默克索引》&#xff08;Merck Index&#xff09;。自1889年首次出版以来有130多年的历史&#xff0c;《默克索引》一直被视为化学品、药物和生物制品的关键物理、药理和历史信息的最权威、最可靠的来…

Ubuntu22.04安装NVIDIA Driver和CUDA

Ubuntu22.04安装NVIDIA Driver和CUDA 1.安装NVIDIA Driver(1).卸载Ubuntu自带的驱动程序&#xff1a;(2).禁用nouveau:(3).安装相应的NVIDIA Driver: 2.安装CUDA(1).下载并安装CUDA:(2).配置环境变量&#xff1a; 本文记录了在 "Ubuntu22.04"上安装 "NVIDIA D…

百度关掉Ai智能回答(保姆级技术文,解决过程完整记录)

随着AI时代到来&#xff0c;百度也是不肯落于人后&#xff0c;在其搜索页面推出了AI自动回答。点到这里的你想必正因此懊恼&#xff0c;你说它怎么切入不好&#xff0c;非得搞个东西在那一直跳&#xff0c;顶着下面的内容哐哐直跳&#xff0c;你想好好浏览内容还得等它跳消停了…

C++(week15): C++提高:(四)并发服务器架构模型

文章目录 一、五种网络IO模型1.数据传输过程2.两组重要概念3.五种网络IO模型(1)阻塞式IO(2)非阻塞式IO(3)IO多路复用(4)信号驱动IO(5)异步IO 4.五种网络IO模型的对比5.举例说明 二、并发服务器模型1.循环式迭代式模式2.并发式服务器3.prefork服务器4.反应式服务器 (Reactor)5.反…

协同过滤推荐算法(包括传统协同过滤、矩阵分解、NeuralCF)

一、什么是协同过滤推荐算法 传统的协同过滤&#xff08;Collaborative Filtering, CF&#xff09;是一种推荐系统技术&#xff0c;它基于用户的历史行为数据来预测用户对未评分项目的潜在兴趣。 “协同大家的反馈、评价和意见一起对海量的信息进行过滤&#xff0c;从中筛选出…

IPD如何通过数字化项目管理平台落地实施?

随着市场竞争的日益激烈&#xff0c;企业对于产品研发的效率和质量逐渐提高&#xff0c;越来越多的企业关注到IPD(Integrated Product Development)&#xff0c;希望参考IPD体系的方法理念和实践经验&#xff0c;从而帮助企业快速响应市场变化、缩短产品开发周期、提升产品开发…

step9:设置软件初始状态获取时不发送配置指令

文章目录 文章介绍问题描述效果图 解决办法下拉框控件ComboBox切换开关组件Switch数值微调框控件SpinBox 文章介绍 问题描述 虚拟端口&#xff08;硬件&#xff09;发送信号给客户端电脑&#xff0c;会设置此时硬件的各种基础参数&#xff0c; 客户端软件被设置基础参数之后&a…

计算机视觉——凸包计算

现在有一大堆点&#xff0c;然后你要找出一个可以围住这些点且面积最小的凸多边形&#xff0c;这个凸多边形称为凸包。 显而易见&#xff0c;如果要面积最小&#xff0c;那凸包的顶点势必得是这一大堆点的几个点&#xff0c;你也可以想成是用一条橡皮筋把这些点圈起来。 先把各…

什么是云原生?(一)

1. 前言 停下手头的工作&#xff0c;让你的同事定义“云原生”一词。你很可能会得到几个不同的答案。 1.1 让我们从一个简单的定义开始&#xff1a; 云原生架构和技术是一种设计、构建和操作在云中构建并充分利用云计算模型的工作负载的方法。 1.2 云原生计算基金会给出了官方…

easyexcel使用教程--导入导出简单案例

java中操作excel的库是poi,但是poi有很多问题&#xff0c;使用复杂&#xff0c;内存占用大等&#xff0c;阿里开源了一个操作excel的库叫easyexcel,它基于poi做了很多优化&#xff0c;平时读写excel建议使用这个库 文档地址: 关于Easyexcel | Easy Excel 官网 写入excel 在…

操作无法完成错误0x000006ba?教你几种全面解析与解决方案指南

错误代码0x000006ba通常与 Windows 操作系统中的远程过程调用&#xff08;RPC&#xff09;服务有关。当你在尝试执行某些操作&#xff0c;如连接到网络共享、运行某些网络服务或使用依赖于 RPC 的应用程序时&#xff0c;可能会遇到这个错误。接下来就和大家聊聊操作无法完成错误…

“揭秘CentosChina爬虫项目:掌握Scrapy框架的必备技巧与数据库设计“

Centoschina 项目要求 爬取centoschina_cn的所有问题&#xff0c;包括文章标题和内容 数据库表设计 库表设计&#xff1a; 数据展示&#xff1a; 项目亮点 低耦合&#xff0c;高内聚。 爬虫专有settings custom_settings custom_settings_for_centoschina_cncustom_settin…

鸿蒙(API 12 Beta2版)媒体开发【使用OHAudio开发音频播放功能(C/C++)】

OHAudio是系统在API version 10中引入的一套C API&#xff0c;此API在设计上实现归一&#xff0c;同时支持普通音频通路和低时延通路。仅支持PCM格式&#xff0c;适用于依赖Native层实现音频输出功能的场景。 使用入门 开发者要使用OHAudio提供的播放或者录制能力&#xff0c…

根据 IP 地址配置子网示例(下挂 hub 接不同 vlan 终端)

我们一般根据端口配置子网比较简单&#xff0c;但是如果换接口&#xff0c;就又要到交换机上重新配置端口所属 vlan 了&#xff0c;紧急情况下&#xff0c;还是比较耽误时间的。但如果根据IP地址配置 vlan&#xff0c;则可以插在交换机上任意端口&#xff0c;排障时比较节省时间…

部分PC制造商不会帮助英特尔第13/14代酷睿延保 对用户来说可能是个问题

早前英特尔已经宣布大部分第 13/14 代酷睿桌面处理器将可以获得延长保修服务&#xff0c;即后续使用出现非人为损坏的问题后&#xff0c;用户都可以联系英特尔换一颗新处理器。然而英特尔承担责任不代表对用户来说就高枕无忧&#xff0c;例如只有盒装版处理器才能直接联系英特尔…