在 Linux 系统中新建磁盘(如 `/dev/sda`)通常涉及物理磁盘的初始化和逻辑配置。以下是详细步骤和相关知识扩展:
1. 确认磁盘识别
首先需确认系统是否已检测到磁盘:
bash
lsblk -l # 列出所有块设备(包括未挂载的磁盘)
fdisk -l # 查看磁盘分区信息
dmesg | grep sda # 检查内核日志中关于sda的记录
若磁盘未显示,可能需检查硬件连接(如 SATA/USB 接口)或驱动支持。
2. 分区表创建
使用分区工具(如 `fdisk` 或 `parted`)创建分区表:
bash
fdisk /dev/sda # 交互式分区工具
输入 `n` 创建新分区,按提示设置分区类型(主分区/扩展分区)、起始扇区和大小。
输入 `t` 可更改分区类型(如 Linux 默认 `83` 或交换分区 `82`)。
使用 `g` 创建 GPT 分区表(适用于大容量磁盘或 UEFI 系统),或用 `o` 创建传统 MBR 分区表。
3. 格式化分区
分区后需格式化文件系统:
bash
mkfs.ext4 /dev/sda1 # 格式化为 ext4 文件系统
mkfs.xfs /dev/sda2 # 或格式化为 XFS
mkswap /dev/sda3 # 若为交换分区
Ext4:适用于通用场景,支持日志功能。
XFS:适合大文件和高并发读写。
Btrfs:支持快照和动态卷管理(需 `mkfs.btrfs`)。
4. 挂载磁盘
临时挂载到目录:
bash
mount /dev/sda1 /mnt/data # 挂载到/mnt/data
永久挂载需编辑 `/etc/fstab`,添加如下行:
bash
/dev/sda1 /mnt/data ext4 defaults 0 2
使用 `blkid` 获取分区的 UUID,替代 `/dev/sda1` 更稳定(避免设备号变动)。
最后字段 `0`(不备份)和 `2`(非根分区需检查顺序)是 `fsck` 相关设置。
5. 权限与所有权
设置挂载点的所有者:
bash
chown user:group /mnt/data # 指定用户和组
chmod 755 /mnt/data # 设置权限
6. 扩展知识
LVM 管理:若需灵活调整分区大小,可初始化磁盘为物理卷(PV)并加入卷组(VG):
bash
pvcreate /dev/sda # 创建物理卷
vgcreate vg_data /dev/sda # 创建卷组
lvcreate -L 100G -n lv_data vg_data # 创建逻辑卷
多磁盘阵列:通过 `mdadm` 配置 RAID(如 RAID 1 冗余)提升可靠性。
SSD 优化:启用 TRIM(`fstrim`)并设置 `discard` 挂载选项延长寿命。
7. 验证与监控
`df -Th`:查看已挂载文件系统及类型。
`lsblk -f`:显示分区和文件系统详细信息。
监控 I/O 性能:`iostat -x 1` 或 `iotop`。