首页 » 技术 » 正文

linux 扩展硬盘

眉心 2024-09-21 技术 52 views 0

扫一扫用手机浏览

文章目录 [+]

在Linux系统中,扩展VPS硬盘的方法主要有两种:通过磁盘分区和文件系统扩容,以及通过LVM(逻辑卷管理)进行扩容,下面将详细介绍这两种方法的操作步骤和技术原理。

一、通过磁盘分区和文件系统扩容

1. 登录到VPS的命令行界面,可以使用SSH工具,如PuTTY或者Xshell,输入用户名和密码进行登录。

2. 使用`fdisk -l`命令查看当前磁盘分区情况,如果需要扩展的硬盘已经存在,可以看到类似如下的输出:

   Disk /dev/vda: 8589 MB, 8589934592 bytes
   255 heads, 63 sectors/track, 1044 cylinders
   Units = cylinders of 16065 * 512 = 8225280 bytes
   Sector size (logical/physical): 512 bytes / 512 bytes
   I/O size (minimum/optimal): 512 bytes / 512 bytes
   Disk identifier: 0x000d7a3b

   Disk /dev/vdb: 1073741824 MB, 1073741824000 bytes
   255 heads, 63 sectors/track, 131072 cylinders
   Units = cylinders of 16065 * 512 = 8225280 bytes
   Sector size (logical/physical): 512 bytes / 512 bytes
   I/O size (minimum/optimal): 512 bytes / 512 bytes
   Disk identifier: 0x000d7a3c
   

3. 如果需要扩展的硬盘还没有分区,可以使用`fdisk /dev/vdb`命令对硬盘进行分区,按照提示操作,可以创建一个新的分区。

4. 使用`mkfs -t ext4 /dev/vdb1`命令为新创建的分区创建一个ext4文件系统,`/dev/vdb1`是新创建的分区设备文件。

5. 使用`mount /dev/vdb1 /mnt`命令将新创建的分区挂载到一个目录,如`/mnt`。

6. 如果需要将新分区的文件系统扩展到整个硬盘,可以使用`resize2fs /dev/vdb1`命令,这将检查并调整文件系统的大小,使其与硬盘大小匹配。

7. 现在可以将原硬盘上的数据迁移到新硬盘上,可以使用`rsync -avz --progress /source_dir /destination_dir`命令进行数据迁移,`/source_dir`是原硬盘上的目录,`/destination_dir`是新硬盘上的目录。

8. 使用`umount /mnt`命令卸载新硬盘,然后使用`partprobe`命令让内核重新读取分区表信息,硬盘扩展完成。

二、通过LVM进行扩容

2. 使用`pvdisplay`命令查看当前PV(物理卷)情况,如果需要扩展的硬盘已经存在,可以看到类似如下的输出:

   --- Physical volume ---
   PV Name               /dev/vda2
   VG Name               ubuntu-vg
   PV Size               <498.00 GiB / not usable 3.00 MiB>
   Allocatable           yes (but full)
   PE Size               4.00 MiB
   Total PE              1280039
   Free PE               0
   Allocated PE          1280039
   PV UUID               yIZUjT-QKnJM-qRgDh-wWfNk-CJbEo-HsFKnGK
   

3. 如果需要扩展的硬盘还没有被添加到LVM中,可以使用`pvcreate /dev/vdb`命令将其转换为物理卷,`/dev/vdb`是需要扩展的硬盘设备文件。

4. 使用`vgextend ubuntu-vg /dev/vdb`命令将新创建的物理卷添加到现有的卷组中,`ubuntu-vg`是现有的卷组名称,`/dev/vdb`是新创建的物理卷设备文件。

5. 现在可以使用`lvdisplay`命令查看当前LV(逻辑卷)情况,如果需要扩展的逻辑卷已经存在,可以看到类似如下的输出:

   --- Logical volume ---
   LV Name                /dev/ubuntu-vg/root
   LV UUID                yIZUjT-QKnJM-qRgDh-wWfNk-CJbEo-HsFKnGK-0rAiZO-RgDh-wWfNk-CJbEo-HsFKnGK-0rAiZO-RgDh-wWfNk-CJbEo-HsFKnGK-0rAiZO-RgDh-wWfNk-CJbEo-HsFKnGK-0rAiZO-RgDh-wWfNk-CJbEo-HsFKnGK-0rAiZO-RgDh-wWfNk-CJbEo-HsFKnGK-0rAiZO-RgDh-wWfNk-CJbEo-HsFKnGK-0rAiZO-RgDh-wWfNk-CJbEo-HsFKnGK-0rAiZO-RgDh-wWfNk-CJbEo-HsFKnGK-0rAiZO-RgDh-wWfNk-CJbEo-HsFKnGK-0rAiZO-RgDh-wWfNk-CJbEo-HsFKnGK-0rAiZO-RgDh-wWfNk-CJbEo-HsFKnGK-0rAiZO-RgDh-wWfNk-CJbEo-HsFKnGK-0rAiZO-RgDh-wWfNk-CJbEoHsFKnGK-----------------------------------------------------------------------------------------------------------------
brw-rw----T                 <unknown> BUS            NODE    TYPE       DISC    SIZE       ROTATION     STATUS      PHY SIG      DEV         SIZE       PEER DEVICE PRI ORIG_NAME
   /dev/ubuntu-vg/swap        lvm2 [SWAP]    498.00 GiB                                                                                                   /dev/ubuntu-vg/swap lvm2 swap swap    sw              498.00 GiB                                (none)
   

6. 如果需要扩展的逻辑卷已经存在并且有足够的可用空间,可以直接使用`lvextend -l +100%FREE /dev/ubuntu-vg/root`命令进行扩容,`+100%FREE`表示将逻辑卷扩展到所有可用空间,`/dev/ubuntu-vg/root`是需要扩展的逻辑卷设备文件。

相关推荐

如何避免数据丢失及应对措施问题

数据丢失是每个企业和个人都可能面临的问题,无论是因为硬件故障、软件崩溃、病毒攻击还是人为错误,都可能导致重要数据的丢失,了解如何避...

cdn2 2024-09-20 阅读67 评论0

linux系统权限命令

在Linux系统中,权限管理是至关重要的一环,它确保了系统的安全性和稳定性,防止了未经授权的用户对系统资源的访问,本文将深入探讨L...

运维教程 2024-09-20 阅读34 评论0

linux swapper

在Linux操作系统中,内存管理是一个重要的环节,为了提高系统的性能和稳定性,Linux采用了一种称为“虚拟内存”的技术,即在物理...

运维教程 2024-09-20 阅读31 评论0