mirror of
https://github.com/LCTT/TranslateProject.git
synced 2024-12-26 21:30:55 +08:00
137 lines
5.8 KiB
Markdown
137 lines
5.8 KiB
Markdown
[#]: collector: (lujun9972)
|
||
[#]: translator: (luckyele)
|
||
[#]: reviewer: (wxy)
|
||
[#]: publisher: (wxy)
|
||
[#]: url: (https://linux.cn/article-10658-1.html)
|
||
[#]: subject: (How to add new disk in Linux)
|
||
[#]: via: (https://kerneltalks.com/hardware-config/how-to-add-new-disk-in-linux/)
|
||
[#]: author: (kerneltalks https://kerneltalks.com)
|
||
|
||
如何在 Linux 中添加新磁盘
|
||
======
|
||
|
||
> 在 Linux 机器中添加磁盘的逐步过程。
|
||
|
||
![New disk addition in Linux][1]
|
||
|
||
本文将向你介绍在 Linux 机器中添加新磁盘的步骤。将原始磁盘添加到 Linux 机器可能非常依赖于你所拥有的服务器类型,但是一旦将磁盘提供给机器,将其添加到挂载点的过程几乎相同。
|
||
|
||
**目标**:向服务器添加新的 10GB 磁盘,并使用 lvm 和新创建的卷组创建 5GB 装载点。
|
||
|
||
### 向 Linux 机器添加原始磁盘
|
||
|
||
如果你使用的是 AWS EC2 Linux 服务器,可以 [按照以下步骤][2] 添加原始磁盘。如果使用的是 VMware Linux VM,那么需要按照不同的步骤来添加磁盘。如果你正在运行物理机架设备/刀片服务器,那么添加磁盘将是一项物理任务。
|
||
|
||
一旦磁盘物理/虚拟地连接到 Linux 机器上,它将被内核识别,就可以开始了。
|
||
|
||
### 识别 Linux 最新添加的磁盘
|
||
|
||
原始磁盘连接后,需要让内核去 [扫描新磁盘][3]。在新版中,它主要是由内核自动完成。
|
||
|
||
第一件事是在内核中识别新添加的磁盘及其名称。实现这一点的方法有很多,以下作少量列举:
|
||
|
||
* 可以在添加/扫描磁盘前后观察 `lsblk` 输出,以获取新的磁盘名。
|
||
* 检查 `/dev` 文件系统中新创建的磁盘文件。匹配文件和磁盘添加时间的时间戳。
|
||
* 观察 `fdisk-l` 添加/扫描磁盘前后的输出,以获取新的磁盘名。
|
||
|
||
在本示例中,我使用的是 AWS EC2 服务器,向服务器添加了 5GB 磁盘。我的 lsblk 输出如下:
|
||
|
||
```
|
||
[root@kerneltalks ~]# lsblk
|
||
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
|
||
xvda 202:0 0 10G 0 disk
|
||
├─xvda1 202:1 0 1M 0 part
|
||
└─xvda2 202:2 0 10G 0 part /
|
||
xvdf 202:80 0 10G 0 disk
|
||
```
|
||
|
||
可以看到 `xvdf` 是新添加的磁盘。完整路径是 `/dev/xvdf`。
|
||
|
||
### 在 LVM 中添加新磁盘
|
||
|
||
我们这里使用 LVM,因为它是 Linux 平台上广泛使用的非常灵活的卷管理器。确认 lvm 或 lvm2 软件包[已经安装在系统上][4]。如未安装,请 [安装 lvm/lvm2 程序包][5]。
|
||
|
||
现在,我们将在逻辑卷管理器中添加这个原始磁盘,并从中创建 10GB 的挂接点。所用到的命令如下:
|
||
|
||
* [pvcreate][6]
|
||
* [vgcreate][7]
|
||
* [lvcreate][8]
|
||
|
||
如果要将磁盘添加到现有挂接点,并使用其空间来[扩展挂接点][9] ,则 `vgcreate` 应替换为 `vgextend`。
|
||
|
||
会话示例输出如下:
|
||
|
||
```
|
||
[root@kerneltalks ~]# pvcreate /dev/xvdf
|
||
Physical volume "/dev/xvdf" successfully created.
|
||
[root@kerneltalks ~]# vgcreate vgdata /dev/xvdf
|
||
Volume group "vgdata" successfully created
|
||
[root@kerneltalks ~]# lvcreate -L 5G -n lvdata vgdata
|
||
Logical volume "lvdata" created.
|
||
```
|
||
|
||
现在,已完成逻辑卷创建。你需要使用所选的文件系统格式化它,并将其挂载。在这里选择 ext4 文件系统,并使用 `mkfs.ext4` 进行格式化。
|
||
|
||
```
|
||
[root@kerneltalks ~]# mkfs.ext4 /dev/vgdata/lvdata
|
||
mke2fs 1.42.9 (28-Dec-2013)
|
||
Filesystem label=
|
||
OS type: Linux
|
||
Block size=4096 (log=2)
|
||
Fragment size=4096 (log=2)
|
||
Stride=0 blocks, Stripe width=0 blocks
|
||
327680 inodes, 1310720 blocks
|
||
65536 blocks (5.00%) reserved for the super user
|
||
First data block=0
|
||
Maximum filesystem blocks=1342177280
|
||
40 block groups
|
||
32768 blocks per group, 32768 fragments per group
|
||
8192 inodes per group
|
||
Superblock backups stored on blocks:
|
||
32768, 98304, 163840, 229376, 294912, 819200, 884736
|
||
|
||
Allocating group tables: done
|
||
Writing inode tables: done
|
||
Creating journal (32768 blocks): done
|
||
Writing superblocks and filesystem accounting information: done
|
||
```
|
||
|
||
### 在挂载点上从新磁盘挂载卷
|
||
|
||
使用 `mount` 命令,在 `/data` 安装点上安装已创建并格式化的 5GB 逻辑卷。
|
||
|
||
```
|
||
[root@kerneltalks ~]# mount /dev/vgdata/lvdata /data
|
||
[root@kerneltalks ~]# df -Ph /data
|
||
Filesystem Size Used Avail Use% Mounted on
|
||
/dev/mapper/vgdata-lvdata 4.8G 20M 4.6G 1% /data
|
||
```
|
||
|
||
使用 `df` 命令验证挂载点。如上所述,你都完成了!你可以在 [/etc/fstab][10] 中添加一个条目,以便在重新启动时保持此装载。
|
||
|
||
你已将 10GB 磁盘连接到 Linux 计算机,并创建了 5GB 挂载点!
|
||
|
||
--------------------------------------------------------------------------------
|
||
|
||
via: https://kerneltalks.com/hardware-config/how-to-add-new-disk-in-linux/
|
||
|
||
作者:[kerneltalks][a]
|
||
选题:[lujun9972][b]
|
||
译者:[luckyele](https://github.com/luckyele)
|
||
校对:[wxy](https://github.com/wxy)
|
||
|
||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
|
||
|
||
[a]: https://kerneltalks.com
|
||
[b]: https://github.com/lujun9972
|
||
[1]: https://i1.wp.com/kerneltalks.com/wp-content/uploads/2019/03/How-to-add-new-disk-in-Linux.png?ssl=1
|
||
[2]: https://kerneltalks.com/cloud-services/how-to-add-ebs-disk-on-aws-linux-server/
|
||
[3]: https://kerneltalks.com/disk-management/howto-scan-new-lun-disk-linux-hpux/
|
||
[4]: https://kerneltalks.com/tools/check-package-installed-linux/
|
||
[5]: https://kerneltalks.com/tools/package-installation-linux-yum-apt/
|
||
[6]: https://kerneltalks.com/disk-management/lvm-command-tutorials-pvcreate-pvdisplay/
|
||
[7]: https://kerneltalks.com/disk-management/lvm-commands-tutorial-vgcreate-vgdisplay-vgscan/
|
||
[8]: https://kerneltalks.com/disk-management/lvm-commands-tutorial-lvcreate-lvdisplay-lvremove/
|
||
[9]: https://kerneltalks.com/disk-management/extend-file-system-online-lvm/
|
||
[10]: https://kerneltalks.com/config/understanding-etcfstab-file/
|