如何在Ubuntu系统中进行磁盘的分区与挂载

2024-10-09 18:12:37 浏览数 (1)

1.确认系统当前的磁盘信息

lsblk命令

我们可以使用lsblk命令来查询系统中的块设备,包括磁盘、分区和挂载点。

代码语言:bash复制
lsblk

返回结果如下图所示:

fdisk工具

fdisk 是一个用于管理分区的工具,可以用来查看磁盘及其分区。使用 -l 选项可以列出所有磁盘和分区。

代码语言:bash复制
fdisk -l

返回结果如下图所示:

可以看到每个磁盘和分区的详细信息,我们可以根据 MOUNTPOINT 来判断哪些分区已经挂载,哪些分区尚未挂载。

2.创建挂载点

我们可以根据需要创建相应挂载点,一般会将磁盘挂载至/mnt或者/data目录下。

这里我们创建一个名为data的挂载点。

代码语言:bash复制
mkdir /mnt/data

3.使用fdisk工具对磁盘进行分区

fdisk 是一个常用的分区工具,适用于 MBR(主引导记录)分区表管理。适用于较小的磁盘(小于 2TB)。

步骤 1: 查看可用磁盘

使用 lsblkfdisk -l 来查看当前系统中的磁盘和分区信息:

代码语言:bash复制
lsblk

或者:

代码语言:bash复制
fdisk -l

根据返回信息找到我们需要分区的磁盘例如,假设磁盘是 /dev/sdb。

步骤 2: 使用 fdisk 进入磁盘分区管理

使用fdisk命令管理磁盘,选中需要分区的磁盘:

代码语言:bash复制
fdisk /dev/sdb

返回如下图所示:

这里就会进入fdisk的交互模式。

步骤 3: 创建新分区

在 fdisk 提示符下,使用以下命令进行操作:

1. 创建新分区

输入n(new)来创建新分区。

代码语言:bash复制
Command (m for help): n

这里我们会被要求选择创建主分区还是扩展分区。通常主分区输入 p,然后根据需要选择分区号(默认是从 1 开始),以及分区的起始和结束位置。如果要分配整个磁盘,直接按回车使用默认值。

2. 选择分区类型(可选):

默认情况下,fdisk 会创建Linux 分区(83 类型)。如果需要更改分区类型,比如要创建交换分区,使用t修改分区类型。

代码语言:bash复制
Command (m for help): t

输入对应的分区类型代码。例如,Linux 的 ext4 使用类型 83,Linux swap 使用类型 82。这里我们使用LVM,将类型设置为8E。

3. 保存并退出

输入 w 保存更改并退出 fdisk。

代码语言:bash复制
Command (m for help): w

这条命令表示写入分区表并退出。

步骤 4: 格式化新分区

代码语言:bash复制
mkfs.ext4 /dev/vdb

如果创建了交换分区,则需要格式化为swap类型:

代码语言:bash复制
mkswap /dev/vdb

步骤五.挂载新分区

创建分区并格式化后,可以挂载分区到某个目录,例如 /mnt/data:

代码语言:bash复制
mkdir /mnt/data
mount /dev/vdb /mnt/data

4.使用 parted 进行分区

parted支持 GPT(GUID 分区表),适合大于2TB的磁盘。它的功能比fdisk更强大,支持更多的文件系统类型。

步骤 1: 安装 parted

代码语言:bash复制
sudo apt update
sudo apt install parted

步骤 2: 启动 parted

代码语言:bash复制
parted /dev/sdb

步骤 3: 创建 GPT 分区表(如果需要)

如果磁盘尚未分区,需要创建GPT分区表。则执行以下命令:

代码语言:bash复制
mklabel gpt

步骤 4: 创建新分区

1. 创建新分区

使用mkpart命令创建分区,指定分区的起始和结束位置。

例如,创建一个从1MB到100GB的ext4分区:

代码语言:bash复制
mkpart primary ext4 1MiB 100GiB

这里的 primary 是分区类型,ext4 是文件系统类型。

2. 查看分区

输入 print 查看磁盘分区情况。

代码语言:txt复制
print

3. 退出 parted

完成后,输入quit 退出parted。

代码语言:bash复制
quit

步骤 5: 格式化新分区

和 fdisk 一样,创建分区后需要格式化。

代码语言:txt复制
mkfs.ext4 /dev/vdb

步骤 6: 挂载新分区

代码语言:bash复制
mkdir /mnt/data
mount /dev/vdb /mnt/data

5.设置开机自动挂载

要如果让分区在系统启动时自动挂载,我们需要编辑/etc/fstab文件。

1. 获取分区的 UUID(卷的唯一标识符)。

代码语言:bash复制
blkid

输出结果如图:

复制UUID值(例如 xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx)。

2. 编辑/etc/fstab文件

代码语言:bash复制
vi /etc/fstab

3. 在文件末尾添加如下内容,将UUID替换为你实际的分区UUID,并指定挂载点/mnt/data和文件系统类型(如ext4、ntfs等)

代码语言:bash复制
UUID=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx /mnt/data ext4 defaults 0 2

常见挂载选项说明

• defaults:这是一个组合选项,包含一组默认挂载选项,如rw(读写)、relatime(减少inode访问时间更新次数)等。

• 0和2:这些值分别控制是否需要备份和文件系统检查顺序。通常第一个值为 0(不备份),第二个值为1或2(1用于根文件系统,其他文件系统用2)。

6.测试/etc/fstab配置

代码语言:bash复制
mount -a

如果没有错误信息,说明配置正确,分区将在下次系统启动时自动挂载。

0 人点赞