linux硬盘分区(fdisk、lsblk)-------------------基础命令练习(一)

本文介绍了如何使用Linux基础命令fdisk进行硬盘分区操作,包括创建、查看、删除分区的步骤。通过一个实际案例展示了如何在/dev/vdb磁盘上创建三个不同大小的分区:/dev/vdb1、/dev/vdb2和/dev/vdb3,并给出了详细的操作指南。

fdisk磁盘分区命令
n 创建新分区
p 查看
d 删除
w 保存退出
q 不保存退出

  • 案例一要求:.在磁盘 /dev/vdb 上按要求建立分区:

1.采用默认的msdos分区模式;
2.第1个分区 /dev/vdb1 的大小200MiB
3.第2个分区 /dev/vdb2 的大小2000MiB
4.第3个分区 /dev/vdb3 的分区大小为1000Mib

[root@server0 ~]# fdisk /dev/vdb                          #把/dev/vdb进行分区
欢迎使用 fdisk (util-linux 2.23.2)。

更改将停留在内存中,直到您决定将更改写入磁盘。
使用写入命令前请三思。

命令(输入 m 获取帮助):n                                  #n新建分区
Partition type:
   p   primary (0 primary, 0 extended, 4 free)
   e   extended
Select (default p): 
Using default response p
分区号 (1-4,默认 1):                                    #按默认 
起始 扇区 (2048-20971519,默认为 2048):                   #按默认   
将使用默认值 2048
Last 扇区, +扇区 or +size{K,M,G} (2048-20971519,默认为 20971519)+200M       #按要求第一个分区200M
分区 1 已设置为 Linux 类型,大小设为 200 MiB

命令(输入 m 获取帮助):n                             #新建第2个分区
Partition type:
   p   primary (1 primary, 0 extended, 3 free)
   e   extended
Select (default p): 
Using default response p
分区号 (2-4,默认 2):                               #按默认 
起始 扇区 (411648-20971519,默认为 411648):         #按默认     
将使用默认值 411648
Last 扇区, +扇区 or +size{K,M,G} (411648-20971519,默认为 20971519)+2000M          #按要求第二个分区2000M
分区 2 已设置为 Linux 类型,大小设为 2 GiB

命令(输入 m 获取帮助):n                                                  #新建第3个分区
Partition type:
   p   primary (2 primary, 0 extended, 2 free)
   e   extended
Select (default p): 
Using default response p
分区号 (3,4,默认 3):                                               #按默认
起始 扇区 (4507648-20971519,默认为 4507648):                        #按默认
将使用默认值 4507648
Last 扇区, +扇区 or +size{K,M,G} (4507648-20971519,默认为 20971519)+1000M        #按要求第三个分区 1000M

分区 3 已设置为 Linux 类型,大小设为 1000 MiB

命令(输入 m 获取帮助):p                                              #查看分区

磁盘 /dev/vdb:10.7 GB, 10737418240 字节,20971520 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理)512 字节 / 512 字节
I/O 大小(最小/最佳)512 字节 / 512 字节
磁盘标签类型:dos
磁盘标识符:0x2a9888aa

   设备 Boot      Start         End      Blocks   Id  System
/dev/vdb1            2048      411647      204800   83  Linux
/dev/vdb2          411648     4507647     2048000   83  Linux
/dev/vdb3         4507648     6555647     1024000   83  Linux

命令(输入 m 获取帮助):w                                                #保存退出
The partition table has been altered!

Calling ioctl() to re-read partition table.
正在同步磁盘。
[root@server0 ~]# lsblk                                             #查看分区
NAME   MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
vda    253:0    0   10G  0 disk 
└─vda1 253:1    0   10G  0 part /
vdb    253:16   0   10G  0 disk 
├─vdb1 253:17   0  200M  0 part 
├─vdb2 253:18   0    2G  0 part 
└─vdb3 253:19   0 1000M  0 part 
[root@server0 ~]# partprobe /dev/vdb                      #刷新分区
[root@server0 ~]# reboot                                  #重启一次
<think>嗯,用户询问如何在CentOS Stream系统中添加4块20GB的SATA磁盘。这是个关于Linux系统存储管理的具体操作问题。 用户可能正在搭建个需要额外存储空间的环境,比如测试RAID配置、创建存储池或搭建文件服务器。从提问方式看,用户应该具备基础Linux知识,但可能不熟悉磁盘添加流程。 需要分步骤解决几个关键点:物理连接、系统识别、分区格式化挂载使用。引用[3][4]提到过CentOS Stream的配置操作,但关于磁盘管理的具体步骤需要结合通用Linux知识。 首先考虑物理层面:确保SATA磁盘正确连接主板电源。系统启动后,内核应该能通过SATA控制器检测到新磁盘。可以通过dmesg或lsblk命令验证。 然后进入配置阶段:使用fdisk或parted工具分区,建议采用GPT分区表(尤其当磁盘>2TB时)。每块磁盘可以创建单个分区占用全部20GB空间。 接着是文件系统创建,根据用户需求选择ext4/xfs等常用类型。最后通过mount命令挂载到指定目录,并在/etc/fstab添加记录实现开机自动挂载。 用户可能需要知道:是否要配置LVM或RAID?是否需要调整磁盘调度算法?这些进阶操作可以放在后续问题中展开。 安全提示很重要:操作分区表有数据丢失风险,务必确认磁盘设备标识正确。建议在非生产环境先练习。</think>在 CentOS Stream 系统中添加物理 SATA 磁盘需要执行以下步骤: ### 步骤 1: 物理连接磁盘 1. **关机断电**:关闭服务器/计算机并断开电源。 2. **安装磁盘**:将 4 块 20GB SATA 硬盘物理安装到机箱内的空闲 SATA 接口电源接口上。 3. **开机**:重新连接电源并启动系统进入 CentOS Stream。 ### 步骤 2: 识别新磁盘 1. **查看磁盘列表**:使用 `lsblk` 或 `fdisk -l` 命令(需要 root 权限)查看系统识别的所有块设备: ```bash sudo lsblk ``` 或 ```bash sudo fdisk -l ``` 输出结果中应能看到新添加的磁盘,通常命名为 `/dev/sdb`, `/dev/sdc`, `/dev/sdd`, `/dev/sde`(假设 `/dev/sda` 是系统盘)。 ### 步骤 3: 分区磁盘(可选但推荐) > **说明**:虽然可以直接使用整块磁盘创建文件系统或加入 LVM,但创建分区是更规范的做法。 1. **使用 `parted` 或 `fdisk` 创建分区**(以 `/dev/sdb` 为例): ```bash sudo parted /dev/sdb ``` 2. 在 `parted` 交互提示符下操作: ```bash (parted) mklabel gpt # 创建 GPT 分区表(适用于现代系统大容量磁盘) (parted) mkpart primary 0% 100% # 创建个占用整个磁盘的主分区 (parted) set 1 lvm on # 可选:如果打算加入 LVM,设置分区类型为 LVM (parted) print # 确认分区信息 (parted) quit ``` * 对 `/dev/sdc`, `/dev/sdd`, `/dev/sde` 重复以上步骤。 * 使用 `fdisk` 也可以完成类似操作 (`sudo fdisk /dev/sdb`),按提示创建新分区 (`n`),选择默认值,最后写入 (`w`)。 ### 步骤 4: 创建文件系统(格式化) 1. **选择文件系统类型**:常用 `ext4` 或 `xfs`(CentOS/RHEL 默认推荐 `xfs`)。 2. **格式化分区**(以 `/dev/sdb1` 为例,格式化为 `xfs`): ```bash sudo mkfs.xfs /dev/sdb1 ``` * 对 `/dev/sdc1`, `/dev/sdd1`, `/dev/sde1` 重复此命令。 * 如果未创建分区,直接格式化整个磁盘(如 `/dev/sdb`),但不推荐。 ### 步骤 5: 创建挂载点 1. **规划目录**:创建 4 个目录作为挂载点,例如: ```bash sudo mkdir /mnt/disk1 /mnt/disk2 /mnt/disk3 /mnt/disk4 ``` ### 步骤 6: 临时挂载磁盘(测试) 1. **手动挂载**: ```bash sudo mount /dev/sdb1 /mnt/disk1 sudo mount /dev/sdc1 /mnt/disk2 sudo mount /dev/sdd1 /mnt/disk3 sudo mount /dev/sde1 /mnt/disk4 ``` 2. **验证**: ```bash df -hT /mnt/disk* # 查看挂载情况文件系统类型 ls /mnt/disk1 # 应显示为空(lost+found 目录是正常的) ``` ### 步骤 7: 配置永久挂载 (`/etc/fstab`) > **重要**:错误编辑 `/etc/fstab` 可能导致系统无法启动。务必谨慎操作并备份。 1. **获取分区的 UUID**(推荐使用 UUID 而非设备名 `/dev/sdX`,因为设备名可能变化): ```bash sudo blkid ``` 找到对应分区(如 `/dev/sdb1`)的 `UUID` 值。 2. **编辑 `/etc/fstab` 文件**: ```bash sudo vi /etc/fstab ``` 3. **添加挂载条目**(每块磁盘行): ``` UUID=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx /mnt/disk1 xfs defaults 0 0 UUID=yyyyyyyy-yyyy-yyyy-yyyy-yyyyyyyyyyyy /mnt/disk2 xfs defaults 0 0 UUID=zzzzzzzz-zzzz-zzzz-zzzz-zzzzzzzzzzzz /mnt/disk3 xfs defaults 0 0 UUID=aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa /mnt/disk4 xfs defaults 0 0 ``` * 将 `xxxxxxxx-xxxx...` 替换为 `blkid` 命令显示的对应分区的实际 UUID。 * `/mnt/diskX` 替换为你的挂载点路径。 * `xfs` 替换为实际使用的文件系统类型(如 `ext4`)。 * `defaults` 表示使用默认挂载选项(包含 `rw, suid, dev, exec, auto, nouser, async`)。 * 最后两个 `0` 表示 dump 备份工具忽略此分区,且启动时不进行文件系统检查(对于非系统数据盘通常设为 0)。 4. **保存并退出编辑器**。 5. **测试 `fstab` 配置**: ```bash sudo mount -a ``` 如果这条命令没有报错,并且 `df -h` 显示所有分区都已正确挂载,则配置成功。重启系统后也会自动挂载。 ### 替代方案:使用 LVM 管理磁盘 如果需要将 4 块磁盘合并成个大的逻辑卷或配置 RAID,可以使用 LVM: 1. **创建物理卷 (PV)**: ```bash sudo pvcreate /dev/sdb1 /dev/sdc1 /dev/sdd1 /dev/sde1 ``` 2. **创建卷组 (VG)**: ```bash sudo vgcreate my_vg /dev/sdb1 /dev/sdc1 /dev/sdd1 /dev/sde1 ``` 3. **创建逻辑卷 (LV)**: ```bash sudo lvcreate -n my_lv -l 100%FREE my_vg # 使用全部空间创建个 LV ``` 4. **在 LV 上创建文件系统**: ```bash sudo mkfs.xfs /dev/my_vg/my_lv ``` 5. **挂载 LV**:创建挂载点(如 `/mnt/bigdisk`),在 `/etc/fstab` 中使用 LV 设备路径 (`/dev/my_vg/my_lv`) 或 LV 的 UUID 配置永久挂载。 **关键提示**: * **备份重要数据**:操作磁盘分区格式化会**永久删除数据**。 * **确认设备标识符**:务必使用 `lsblk` 或 `fdisk -l` 仔细确认新磁盘的设备标识符(`/dev/sdb`, `/dev/sdc` 等),**切勿错误操作到系统盘**。 * **使用 UUID**:在 `/etc/fstab` 中使用 UUID 比设备名 (`/dev/sdX`) 更可靠,因为设备名可能在重启后改变。 * **LVM 优势**:LVM 提供了更灵活的存储管理(动态扩展、快照、条带化等),是管理多块磁盘的推荐方案。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值