TranslateProject/sources/tech/20190321 How to add new disk in Linux.md

151 lines
5.8 KiB
Markdown
Raw Normal View History

[#]: collector: (lujun9972)
[#]: translator: ( )
[#]: reviewer: ( )
[#]: publisher: ( )
[#]: url: ( )
[#]: 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/)
校对:[校对者ID](https://github.com/校对者ID)
本文由 [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/