分区

常用命令行工具:

  • fdisk:适用于 MBR 分区表
  • gdisk:适用于 GPT 分区表
  • parted:适用于 MBR 和 GPT 分区表,功能更强大。它还有一个 GUI 版本,名为 gparted,使用起来更加方便。

MBR 分区表已经被淘汰了,现在基本都使用 GPT 分区表。这篇文章将使用 gdisk 编辑 GPT 分区表。如果你的 Linux 有图形界面,建议使用 gparted 工具编辑分区,更加方便快捷。

安装必要的工具:

sudo apt install gdisk util-linux

列出所有物理磁盘及其分区表:

sudo parted -l

在上一步中选择你要进行分区操作的磁盘,例如 /dev/sda,然后进入交互式分区编辑界面:

sudo gdisk /dev/sda

常用命令:

  • p:打印当前分区表
  • n:新建分区
  • d:删除分区
  • w:保存并退出
  • q:不保存直接退出

新建一个分区:

(gdisk) Command (? for help): n  # 新建分区
(gdisk) Partition number (5-128, default 5): # 分区号,默认为第一个可用的分区号
(gdisk) First sector (3794108416-3907029134, default = 3794108416) or {+-}size{KMGTP}: # 起始扇区,默认为磁盘空闲空间的起始位置
(gdisk) Last sector (3794108416-3907029134, default = 3907028991) or {+-}size{KMGTP}: +512G # 结束扇区,指定为起始扇区的后 512 GiB 处
(gdisk) Current type is 8300 (Linux filesystem)
(gdisk) Hex code or GUID (L to show codes, Enter = 8300): # 分区类型,默认为 Linux 文件系统类型
(gdisk) Changed type of partition to 'Linux filesystem'

这样,我们就创建了一个分区计划:新建分区 /dev/sda5,分区大小为 512 GiB,分区类型为 Linux 文件系统。

接下来应用这个分区计划,键入 w 保存并退出 gdisk

在新建分区时注意到需要指定分区类型。在 Windows 或 macOS 上分区过的小伙伴应该会发现以前并没有提示过要指定分区类型。实际上是因为软件将分区和格式化两个操作合并到一起了。在你为新分区指定文件系统时,分区软件自动匹配了其适合的分区类型。

那么分区类型的作用是什么?在 GPT 分区表中,每个分区都有一个类型 GUID,用来帮助操作系统和固件(如 UEFI)判断分区用途。比如说,类型为 EFI 的分区会被 UEFI 用来搜索引导程序。常用的分区类型有以下几种:

  • Linux Filesystem Data:十六进制代码 8300,常用文件系统 ext4
  • Microsoft Basic Data:十六进制代码 0700,常用文件系统 NTFS, FAT32, exFAT

格式化

创建完分区后,需要先为分区建立文件系统,然后分区才能用来存储文件。下面是一些建立常见的文件系统的命令:

# ext4
sudo mkfs.ext4 /dev/sda5 # 格式化为 ext4
# exFAT
sudo apt-get install exfat-utils exfat-fuse # 安装 exFAT 工具包
sudo mkfs.exfat /dev/sda5 # 格式化为 exFAT # NTFS
sudo apt install ntfs-3g # 安装 NTFS 工具包
sudo mkfs.ntfs /dev/sda5 # 格式化为 NTFS

挂载

分区格式化好之后还需要挂载才能使用,就好像新买的 U 盘要插到电脑上才能用一样。

首先创建挂载点(例如 /mnt/new_partition):

sudo mkdir -p /mnt/new_partition

接下来挂载分区:

sudo mount /dev/sda5 /mnt/new_partition

验证挂载:

df -h /mnt/new_partition

现在我们的新分区就已经被挂载且可以使用了。不过,现在的挂载只是临时挂载,当操作系统重启后这个挂载就失效了。为了能够在开机时自动挂载新分区,我们需要将新分区的 GUID 添加到自动挂载配置文件。

首先查找新分区的 GUID:

sudo blkid /dev/sda5

接下耒编辑 /etc/fstab,写入一条新的配置项:

UUID=your-guid /mnt/new_partition ext4 defaults 0 2

your-guid 替换为实际的 GUID。

测试新的 fstab 条目是否正确:

sudo mount -a

如果没有错误信息,说明配置正确。

分区的扩容和缩小

分区扩容和缩小的过程其实就是删除旧分区,然后新建一个大小不同,但分区编号和类型都相同的新分区的过程。

新建分区后,需要检查和调整文件系统以确保其完整性:

# ext4
sudo e2fsck -f /dev/sda5 # 检查文件系统
sudo resize2fs /dev/sda5 # 调整文件系统大小

详情可以参见 Linux 扩展磁盘分区 | CSDN

Linux 磁盘分区和格式化的更多相关文章

  1. Linux磁盘分区与格式化

    磁盘分区格式说明 linux分区不同于windows linux下分区标示: 例如:hda1 hd这两个字母表示分区所在的设备类型,hd标示IDE类型硬盘,sd表示SCSI类型硬盘 第三字母a标示硬盘 ...

  2. Linux 磁盘分区、格式化、目录挂载

    实验环境: Citrix虚拟化, RHEL6.4系统环境 本文目的: 熟悉Linux的基本磁盘分区.格式化.目录挂载. 显示当前主机目录 磁盘分区 磁盘格式化 挂载目录 1. 显示当前主机目录 命令d ...

  3. Linux磁盘分区、格式化和挂载

    一.查看磁盘使用 [root@iZ88rvassw1Z ~]# df -h Filesystem Size Used Avail Use% Mounted on /dev/vda1 40G .3G 3 ...

  4. linux磁盘分区、格式化、挂载

    新建分区的操作步骤,如下图: 1)RAID卡: 机器有没有RAID卡可以在开机时看有没有出现配置RAID什么的提示(亲测),系统运行时有没有,不知道! 服务器大多有这个新加硬盘后不修改raid,开即f ...

  5. linux 磁盘 分区、格式化、挂载

    将容量结果易读的容量格式显示出来df -h 分区 初次接触仅分成两个分区(“/与Swap”)预留一个备用的剩余磁盘容量 磁盘分区 fdisk #df /找出磁盘文件名#fdisk /dev/hdc#m ...

  6. LINUX磁盘分区、格式化、挂载、卸载全程详解

    1.一切皆文件 Linux系统有一个理念:“一切皆文件”,所以计算机的硬件在linux中也是以“文件”的形式存在于/dev目录中.   图为CentOS 6.5系统中/dev目录的部分内容.不同的计算 ...

  7. linux磁盘分区格式化-fdisk命令工具

    本文主要讲述使用fdisk工具对磁盘进行分区和格式化的方法 首先要明确分区是针对磁盘进行的操做,磁盘分区会创建分区表,类似vda,sda的是磁盘,vda1,sda1的是分区 1.查看磁盘分区状态 1. ...

  8. 【Linux命令】磁盘分区,格式化,挂载命令,创建交换分区(fdisk,mkfs,mount,umount)

    友情链接 磁盘分区,格式化,挂载,创建交换分区:https://www.cnblogs.com/HeiDi-BoKe/p/11936998.html RAID工作级别:https://www.cnbl ...

  9. Linux运维实战之磁盘分区、格式化及挂载(一)

    在网络系统中,磁盘和文件系统管理是两个非常基本.同时也是非常重要的管理任务,特别是文件系统管理,因为它与用户权限和整个网络系统的安全息息相关.本次博文的主题是关于Linux系统中磁盘分区.格式化及挂载 ...

  10. linux磁盘分区模式

    linux磁盘分区模式 模式一:MBR 1)主分区不超过四个 2)单个分区容量最大2TB 模式二:GPT 1)主分区个数"几乎"没有限制(原因:在GPT的分区表中最多可以支持128 ...

随机推荐

  1. LangGraph实战

    1.概述 前段时间LangChain发布了LangGraph,它引起了很多关注.LangGraph 的主要优势在于它能够实现循环工作流,这对于在 LLM 应用程序中模拟类似代理的行为至关重要.本篇博客 ...

  2. Qt--共享内存监听工具

    共享内存概述 共享内存的特点: 1)共享内存是进程共享数据的一种最快的方法. 一个进程向共享内存区域写入了数据,共享这个内存区域的所有进程就可以立刻看到其中的内容. 2)使用共享内存要注意的是多个进程 ...

  3. 第一个Vert.x程序(基于Gradle7)

    这里跑一下Vert.x中文站的入门程序(以后就不写那个点了,或者干脆写vx)简易教程.这个程序非常简单,为啥还写一下呢?因为里面的依赖有点老,已经不能直接成功启动了. 搭建项目 通过IDEA创建Gra ...

  4. Uipath学习(一)

    Uipath 常用程序包总结: (1)正则表达式依赖程序包: System.Text.RegularExpressions 用法: 这个语句的作用是判断"溢达集团"这一串字符是否为 ...

  5. Java Executors类的9种创建线程池的方法及应用场景分析

    在Java中,Executors 类提供了多种静态工厂方法来创建不同类型的线程池.在学习线程池的过程中,一定避不开Executors类,掌握这个类的使用.原理.使用场景,对于实际项目开发时,运用自如, ...

  6. MakeSense标注指南

    1.网址 https://www.makesense.ai/ 2.操作流程 2.1 导入 点击get started 点击drop images,上传图片 选择obeject detection 新建 ...

  7. 各类配置文件(DNS, Firefox,Edge)

    DNS配置 腾讯DNS: 119.29.29.29 2402:4e00::  2402:4e00:1:: 阿里云: 223.5.5.5 223.6.6.6 2400:3200::1 2400:3200 ...

  8. [oeasy]python018_ 如何下载github仓库_git_clone_下载仓库

    继续运行 回忆上次内容 上次从 2行代码 进化到了 万行代码 命令 作用 yy 复制光标所在行代码 到剪贴板 p 粘贴 剪贴板中的内容 9999p 将剪贴板中的代码粘贴9999次 保存运行一条龙 :w ...

  9. Pandas库学习笔记(2)

    Pandas 数据结构 Pandas 有三种常用的数据结构 Series DataFrame Panel 这些数据结构建立在Numpy数组之上,这意味着它们运行速度都非常快. Python.Numpy ...

  10. Oracle 删除大量表记录操作总结

    By:授客 QQ:1033553122 删除表数据操作 清空所有表记录 TRUNCATE TABLE your_table_name; 或者批量删除满足条件的表记录 BEGIN LOOP DELETE ...