如何在 Linux 中对 USB 驱动器进行分区
如何在 Linux 中对 USB 驱动器进行分区
一、说明
为了在 Linux 上访问 USB 驱动器,它需要有一个或多个分区。由于 USB 驱动器通常相对较小,仅用于临时存储或轻松传输文件,因此绝大多数用户会选择只配置一个跨越整个 USB 磁盘的分区。但是,如果您想使用多个分区,您也可以在逻辑上将 USB 驱动器分成不同的部分。
在本教程中,我们将介绍在 Linux 系统上对 USB 驱动器进行分区的分步说明。您还将学习如何创建新分区、删除分区以及缩小或扩展 USB 驱动器上的现有分区。您将看到命令行和 GUI 方法的步骤,因此您可以按照您最熟悉的一组说明进行操作。让我们开始吧。
在本教程中,您将学习:
- 如何从命令行添加分区 USB 驱动器
- 如何从 GUI 添加分区 USB 驱动器
- 如何添加、删除现有分区表和调整其大小
- 如何在 Linux 中对 USB 驱动器进行分区
- 如何在 Linux 中对 USB 驱动器进行分区
二、在 Linux 中对 USB 驱动器进行分区
2.1 约定
软件要求和 Linux 命令行约定
类别 | 要求、约定或使用的软件版本 |
---|---|
系统 | 任何 Linux 发行版 |
软件 | parted, gparted |
其他 | 以 root 身份或通过命令对 Linux 系统进行特权访问。sudo#– 要求以 root 权限直接以 root 用户身份或使用命令 |
约定 | $ 执行给定的 Linux 命令– 要求以常规非特权用户身份执行给定的 Linux 命令sudo如何在 Linux 上通过命令行对 USB 驱动器进行分区 |
在下面的分步说明中,我们将使用分区表初始化磁盘、创建新分区、检查分区对齐方式、调整分区大小并删除现有分区。这应该涵盖各种情况,具体取决于您是尝试对新的 USB 驱动器还是具有现有分区的 USB 驱动器进行分区。
2.2 步骤1:使用分区表初始化 USB 驱动器
我们将在这些步骤中使用的设备是 。要运行,我们必须以 root 权限启动 parted,将我们要操作的 USB 驱动器的路径作为参数传递给命令,在本例中为:/dev/sdXinteractive mode
$ sudo parted /dev/sdX
将打开 parted 提示符:
GNU Parted 3.4
Using /dev/sdX
Welcome to GNU Parted! Type 'help' to view a list of commands.
(parted)
2.3 步骤2: 查看当前状态
首先,需要可视化驱动器的当前状态。这将告诉我们当前分区表是什么样子的,或者是否存在。因此,我们将使用以下print命令:
(parted) print
Error: /dev/sdX: unrecognised disk label
Model: SanDisk SanDisk Cruzer (scsi)
Disk /dev/sdX: 16.2GB
Sector size (logical/physical): 512B/512B
Partition Table: unknown
Disk Flags:
如您所见,由于 /dev/sdX 不包含分区表,parted 只向我们显示有关磁盘模型、总大小和扇区大小的信息。为了能够使用磁盘,我们需要对其进行初始化,因此我们必须在其上创建一个分区表。
2.4 步骤3: 分区表
允许我们创建分区表的命令是mklabel 。如果我们没有指定要创建什么样的分区表,parted 会在提示符中询问我们:
(parted) mklabel
New disk label type? msdos
在本例中,我们创建一个传统的分区表。其他有效值包括 “aix”、“amiga”、“bsd”、“dvh”、“gpt”、“loop”、“mac”、“pc98” 和 “sun”。如前所述,我们还可以将分区表的类型指定为命令的参数。msdosmklabel
2.5 步骤4:创建分区
接下来,我们将在 USB 驱动器上创建第一个分区。我们需要提供分区类型,在主分区或扩展分区之间进行选择,文件系统类型(可选),分区起点和分区终点。同样,如果未直接提供,则将以交互方式请求这些值。创建分区的命令是:mkpart
(parted) mkpart
Partition type? primary/extended? primary
File system type? [ext2]? ext4
Start? 0%
End? 100%
在此示例中,我们选择创建一个使用 ext4 文件系统格式化的主分区,并且我们让该分区跨越整个 USB 驱动器,因此它从 0% 开始,到 100% 结束。或者,您可以以 MiB 或 GiB 值指定开始和结束,而不是像上面那样以百分比指定。
2.6 步骤5:print分区
现在,我们可以再次运行该命令print,以查看我们刚刚创建的分区:
(parted) print
Model: SanDisk SanDisk Cruzer (scsi)
Disk /dev/sdb: 16.2GB
Sector size (logical/physical): 512B/512B
Partition Table: msdos
Disk Flags: Number Start End Size Type File system Flags1 1049kB 16.2GB 16.2GB primary ext4 lba
2.7步骤6:检查分区对齐方式
分区的对齐是优化性能的一个非常重要的因素。使用 ,我们可以检查两种类型的对齐方式,以及 。在 minimal 模式下,程序会检查 partition 是否遵循物理块的最小对齐值,而在 optimal 模式下,它会检查 partition 是否与物理 block 大小的倍数对齐,以提供最佳性能。用于执行这些检查的命令是:partedminimaloptimalalign-check
(parted) align-check
alignment type(min/opt) [optimal]/minimal? minimal
Partition number? 1
1 aligned
在交互模式下运行命令后,系统会提示我们提供要检查的对齐类型(默认使用 optimal)和分区编号 (1)。在这种情况下,parted 确认分区已正确对齐。
2.8步骤7:调整分区大小
调整分区大小也是一个非常危险的操作,尤其是在分区已经包含文件系统的情况下。请注意,当更改分区的大小时,永远不会使文件系统适应它,因此,尤其是在收缩时,您必须首先使用专用工具来调整正在使用的文件系统的大小。用于执行分区大小调整的命令是 。我们的分区大小目前占用了 100% 的磁盘;例如,如果我们想将其扩展为仅覆盖设备的 50%,我们可以键入:partedresizepart
(parted) resizepart
Partition number? 1
End? [16.2GB]? 50%
Warning: Shrinking a partition can cause data loss, are you sure you want to continue?
Yes/No? yes
该分区现在只覆盖 USB 驱动器上一半的空间。
2.9步骤8:删除分区
删除分区也同样简单。显然,我们应该非常谨慎地执行此类操作。在这种情况下,要使用的命令是:rm
(parted) rm
Partition number? 1
警告
没有确认提示,因此在运行此命令以销毁现有分区之前请三思而后行。
2.10步骤9:如何退出parted
要在退出 parted 之前确认您的更改,请使用 print 命令,然后使用 quit 退出 parted:
(parted) quit
三、如何通过 GUI 在 Linux 上对 USB 驱动器进行分区
有许多 GUI 程序也可用于在 Linux 上为 USB 驱动器创建或编辑分区。在本教程中,我们将重点介绍如何使用 gparted,顾名思义,它是我们上面使用的命令行 parted 工具的 GUI 对应项。
您可以使用下面的适当命令将 gparted 与系统的包管理器一起安装。
3.1 要在 Ubuntu、Debian 和 Linux Mint 上安装 gparted:
$ sudo apt install gparted
要在 Fedora、CentOS、AlmaLinux 和 Red Hat 上安装 gparted:
$ sudo dnf install gparted
要在 Arch Linux 和 Manjaro 上安装 gparted:
$ sudo pacman -S gparted
安装后,请按照以下步骤使用 gparted 在 USB 驱动器上创建、调整大小和删除分区:
3.2 开始启动gparted 应用程序
首先在桌面环境的应用程序启动器中搜索 gparted 应用程序。打开程序时,系统将提示您输入 root 密码。
搜索并打开 gparted 应用程序
搜索并打开 gparted 应用程序
您必须提供 root 密码才能使用 gparted
您必须提供 root 密码才能使用 gparted
我们需要做的第一件事是从右上角选择我们将要使用的 USB 驱动器。在我们的测试系统上,这将如下面的屏幕截图所示。/dev/sdb
首先选择要在 gparted 中使用的 USB 驱动器
首先选择要在 gparted 中使用的 USB 驱动器
创建新分区
如您所见,我们的 USB 驱动器目前没有分区。让我们通过转到 Device > Create Partition Table 来添加一个。
从 Device 菜单中选择以创建新的分区表
从 Device 菜单中选择以创建新的分区表
接下来,选择要创建的分区类型。我们将坚持在我们的教程中,但可以随意选择其他内容。建议将 GPT 用于大小大于 2 TB 的 USB 驱动器。msdos
选择分区类型并确认这些更改将擦除当前的 USB 磁盘数据
选择分区类型并确认这些更改将擦除当前的 USB 磁盘数据
现在分区表已经创建完毕,我们可以继续向 USB 驱动器添加新分区。此选项可以通过前往 分区 > 新建.
选择以创建新分区
选择以创建新分区
在此菜单上,我们可以选择新分区的大小。不要使用精确值,而是随意使用鼠标滑块来配置所需的大小。对于我们的示例,我们将简单地创建一个跨越 USB 驱动器整个大小的分区。准备好继续时点击 ‘Add’ 。
选择分区大小和名称(可选)
选择分区大小和名称(可选)
注意
是推荐在 Linux 系统上使用的文件系统,除非有特殊原因需要用其他类型的 USB 驱动器格式化。如果您还计划将 USB 驱动器用于 Windows 系统,则建议使用 NTFS。ext4
更改尚未写入磁盘,但我们可以在预览窗格中看到将要应用的配置。准备好后,单击 Edit > Apply All Operations。
将更改应用于 USB 驱动器
将更改应用于 USB 驱动器
调整分区大小
点击 分区 > 调整大小 以调整当前所选分区的大小。
从菜单中选择 Resize partition 选项
从菜单中选择 Resize partition 选项
输入分区的新起点和终点。或者,只需使用滑块调整分区的大小。在这种情况下,我们会将分区缩小到大约一半的大小。
输入值,然后单击完成后的 Resize (调整大小)
输入值,然后单击完成后的 Resize (调整大小)
您可以看到我们所做的新更改。要完成编写它们,请单击 Edit > Apply All Operations。
将更改应用于磁盘并收缩分区
将更改应用于磁盘并收缩分区
删除分区
要删除分区,只需在 gparted 中选择它并导航到 Partition > Delete。完成后,单击 Edit > Apply All Operations 以确认更改。
如何删除 gparted 中的分区
如何删除 gparted 中的分区
四、结束语
在本教程中,我们了解了如何在 Linux 系统上从命令行和 GUI 对 USB 驱动器进行分区。大多数用户会选择在他们的 USB 驱动器上只有一个分区,但如果您愿意,没有理由不能拥有多个分区。多个分区还可以允许您使用多个文件系统(例如,一个 ext4 分区用于 Linux 文件,一个 NTFS 分区用于 Windows 文件)。
相关文章:

如何在 Linux 中对 USB 驱动器进行分区
如何在 Linux 中对 USB 驱动器进行分区 一、说明 为了在 Linux 上访问 USB 驱动器,它需要有一个或多个分区。由于 USB 驱动器通常相对较小,仅用于临时存储或轻松传输文件,因此绝大多数用户会选择只配置一个跨越整个 USB 磁盘的分区。但是&a…...

【STM32+HAL】STM32CubeMX学习目录
一、基础配置篇 【STM32HAL】微秒级延时函数汇总-CSDN博客 【STM32HAL】CUBEMX初始化配置 【STM32HAL】定时器功能小记-CSDN博客 【STM32HAL】PWM呼吸灯实现 【STM32HAL】DACDMA输出波形实现-CSDN博客 【STM32HAL】ADCDMA采集(单通道多通道)-CSDN博客 【STM32HAL】三重A…...

PPT自动化:Python如何修改PPT文字和样式!
文章目录 📖 介绍 📖🏡 演示环境 🏡📒 文章内容 📒📝 使用 Python 修改 PPT 文本内容📝 遍历所有幻灯片和文本框📝 设置和修改文本样式📝 复制和保留文本样式⚓️ 相关链接 ⚓️📖 介绍 📖 在日常工作中,PPT 的文字内容和样式修改似乎是一项永无止境的…...

4:Java的介绍与基础4:for语句
4.1for循环 for循环也是一个非常重要的东西,再代码中是一个循环的作用,在python的文章中也介绍过了for循环的使用方法,其实在Java中也是一样的逻辑,但是有着不一样的表达,现在我们来讲一下关于for循环的东西。 因为循…...

R语言机器学习算法实战系列(十二)线性判别分析分类算法 (Linear Discriminant Analysis)
禁止商业或二改转载,仅供自学使用,侵权必究,如需截取部分内容请后台联系作者! 文章目录 介绍LDA的原理LDA的步骤教程下载数据加载R包导入数据数据预处理数据描述数据切割构建模型预测测试数据评估模型模型准确性混淆矩阵模型评估指标ROC CurvePRC Curve保存模型总结优点:缺…...

[LeetCode] 50. Pow(x, n)
题目描述: 实现 pow(x, n) ,即计算 x 的整数 n 次幂函数(即,xn )。 示例 1: 输入:x 2.00000, n 10 输出:1024.00000示例 2: 输入:x 2.10000, n 3 输出…...

Vue学习笔记(七、事件修饰符 .stop .capture .self .once .prevent)
先看一段基本的代码: <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8"><title>VueBaseCode</title><script src"./lib/vue.js"></script><style>.inner {width:…...

web网站搭建(静态)
准备工作: 关闭防火墙: [rootlocalhost ~]# systemctl disable --now firewalld 修改enforce为permissive [rootlocalhost ~]# setenforce 0 [rootlocalhost ~]# geten getenforce getent [rootlocalhost ~]# getenforce Permissive 重启服务 [rootloca…...

高效特征选择策略:提升Python机器学习模型性能的方法
高效特征选择策略:提升Python机器学习模型性能的方法 目录 🔍 特征选择的重要性📊 相关性分析🔄 递归特征消除 (RFE)🌳 基于模型的特征选择 1. 🔍 特征选择的重要性 特征选择在机器学习中至关重要&#…...

2024年TI杯E题-三子棋游戏装置方案分享-jdk123团队-第四弹 第一题
#1024程序员节|征文# 往期回顾 前期准备 摄像头bug解决 手搓机械臂 视觉模块的封装 第一问: 需要将一颗黑棋,放入棋盘中的五号位置。 理想思路:依据摄像头,依据机械臂及其传感器。建立机械臂的逆运动学方程。然后完…...

优化多表联表查询的常见方法归纳
目录 一、使用mybatis的嵌套查询 二、添加表冗余字段,减少联表查询需求 三、分表预处理,前端再匹配 一、使用mybatis的嵌套查询 【场景说明】 前端需要展示一张列表,其中的字段来源于多张表,如何进行查询优化? 【…...

Java毕业设计 基于SpringBoot发卡平台
Java毕业设计 基于SpringBoot发卡平台 这篇博文将介绍一个基于SpringBoot发卡平台,适合用于Java毕业设计。 功能介绍 首页 图片轮播 商品介绍 商品详情 提交订单 文章教程 文章详情 查询订单 查看订单卡密 客服 后台管理 登录 个人信息 修改密码 管…...

VRoid Studio 介绍 3D 模型编辑器
VRoid Studio 是由日本公司 pixiv 开发的一款免费 3D 模型创建软件,专门设计用于轻松制作 3D 虚拟角色。它的主要特点是用户友好,允许没有 3D 建模经验的用户创建高质量的 3D 人物角色,尤其是针对虚拟主播(Vtuber)、动…...

软件设计模式------抽象工厂模式
抽象工厂模式(Abstract Factory Pattern),又称Kit模式,属于对象创建型模式。 一:先理解两个概念: (1)产品等级结构: 即产品的继承结构。 通俗来讲,就是不同品…...

基于springboot+微信小程序校园自助打印管理系统(打印1)
👉文末查看项目功能视频演示获取源码sql脚本视频导入教程视频 1、项目介绍 基于springboot微信小程序校园自助打印管理系统实现了管理员、店长和用户。管理员实现了用户管理、店长管理、打印店管理、打印服务管理、服务类型管理、预约打印管理和系统管理。店长实现…...

解锁文本数据可视化的无限可能:Wordcloud库全解析
文章目录 **🌟解锁文本数据可视化的无限可能:Wordcloud库全解析🔐**1. **背景介绍**2. **Wordcloud库是什么?**3. **如何安装Wordcloud库?**4. **Wordcloud库的基本函数使用方法**5. **实际应用场景**6. **常见问题及解…...

代码审计-Python Flask
1.Jinjia2模版注入 Flask是一个使用 Python 编写的轻量级 Web 应用框架。其 WSGI 工具箱采用 Werkzeug ,模板引擎则使用 Jinja2。jinja2是Flask作者开发的一个模板系统,起初是仿django模板的一个模板引擎,为Flask提供模板支持,由于…...

深度学习:开启人工智能的新纪元
深度学习:开启人工智能的新纪元 深度学习是机器学习的一个子领域,它基于人工神经网络的学习算法,特别是那些具有多个非线性变换的层(即“深度”)。这些算法模仿人脑处理信息的方式,通过学习数据的多层次表…...

第十四章_File类与IO流
目录 1. java.io.File类的使用 1.1 概述 1.2 构造器 1.3 常用方法 1、获取文件和目录基本信息 2、列出目录的下一级 3、File类的重命名功能 4、判断功能的方法 5、创建、删除功能 1.4 练习 2. IO流原理及流的分类 2.1 Java IO原理 2.2 流的分类 2.3 流的API 3. …...

Qml-CheckBox的使用
Qml-CheckBox的使用 CheckBox属性 CheckBox的继承关系: CheckBox – AbstractButton – Control – Item; CheckBox的属性主要继承于AbstractButton。属性checkState:勾选状态,值为:Qt.Unchecked、Qt.Checked、Qt.PartiallyChec…...

Java的RocketMQ使用
在 Spring Boot 中,RocketMQ 和 Kafka 都是常用的消息中间件,它们的使用方法有一些相似之处,也有各自的特点。 一、RocketMQ 在 Spring Boot 中的使用 引入依赖 在项目的pom.xml文件中添加 RocketMQ 的依赖。 <dependency><groupId…...

中间件之MQ-Kafka
一、引言 Apache Kafka是一个分布式消息队列系统,最初由LinkedIn开发,并于2011年开源。Kafka以其高吞吐量、低延迟和容错能力而著名,广泛应用于日志收集、实时流处理、事件驱动架构等领域。本文将详细介绍Kafka的基本概念、特点、应用场景以…...

[DB] NSM
Database Workloads(数据库工作负载) 数据库工作负载指的是数据库在执行不同类型任务时所需的资源和计算方式,主要包括以下几种类型: 1. On-Line Transaction Processing (OLTP) 中文:联机事务处理解释:…...

Redis 高可用:从主从到集群的全面解析
目录 一、主从复制 (基础)1. 同步复制a. 全量数据同步b. 增量数据同步c. 可能带来的数据不一致 2. 环形缓冲区a. 动态调整槽位 3. runid4. 主从复制解决单点故障a. 单点故障b. 可用性问题 5. 注意事项a. Replica 主动向 Master 建立连接b. Replica 主动向 Master 拉取数据 二、…...

全能型选手视频播放器VLC 3.0.21 for Windows 64 bits支持Windows、Mac OS等供大家学习参考
全能型选手视频播放器,支持Windows、Mac OS、Linux、Android、iOS等系统,也支持播放几乎所有主流视频格式。 推荐指数: ★★★★★ 优点: ◆、界面干净简洁,播放流畅 ◆、支持打开绝大多数的文件格式,包…...

解决在Vue3中使用monaco-editor创建多个实例的导致页面卡死的问题
最近在项目中使用到了monaco-editor来实现相关的业务功能,按照官方使用方法进行了相关操作,但是在使用的时候,总是会导致创建多个编辑器实例,导致页面卡死的情况,下面来看看怎么处理这种情况吧,先说一下我使…...

【某农业大学计算机网络实验报告】实验二 交换机的自学习算法
实验目的: (1)理解交换机通过逆向自学习算法建立地址转发表的过程。 (2)理解交换机转发数据帧的规则。 (3)理解交换机的工作原理。 实验器材: 一台Windows操作系统的PC机。 实…...

燕山大学23级经济管理学院 10.18 C语言作业
燕山大学23级经济管理学院 10.18 C语言作业 文章目录 燕山大学23级经济管理学院 10.18 C语言作业1C语言的基本数据类型主要包括以下几种:为什么设计数据类型?数据类型与知识体系的对应使用数据类型时需要考虑的因素 21. 逻辑运算符2. 真值表3. 硬件实现4…...

【880线代】线性代数一刷错题整理
第一章 行列式 2024.8.20日 1. 2. 3. 第二章 矩阵 2024.8.23日 1. 2024.8.26日 1. 2. 3. 4. 5. 2024.8.28日 1. 2. 3. 4. 第四章 线性方程组 2024.9.13日 1. 2. 3. 4. 5. 2024.9.14日 1. 第五章 相似矩阵 2024.9.14日 1. 2024.9.15日 1. 2. 3. 4. 5. 6. 7. 2024.9.…...

【C++语言】精妙的哈希算法:原理、实现与优化
解锁Python编程的无限可能:《奇妙的Python》带你漫游代码世界 哈希算法是计算机科学中的一项基本技术,广泛应用于数据检索、加密、缓存等领域。本文将深入探讨C++中的哈希算法,详细讲解其原理、实现、优化以及在不同应用场景中的使用。通过丰富的代码示例和数学推导,本文旨…...