详解Linux 虚拟机根分区磁盘扩充空间记录

详解Linux 虚拟机根分区磁盘扩充空间记录

当我们的Linux虚拟机的根分区磁盘空间不足时,我们需要进行扩充。下面是一份详细的攻略,让您轻松处理这个问题。

1. 查看当前磁盘空间使用情况

在进行磁盘扩充之前,我们需要确保知道当前的磁盘使用情况。通过如下的命令可以查看根分区的磁盘使用情况。

df -h

运行命令后,会显示所有分区的磁盘使用情况。其中,包括我们要扩充的根分区。

2. 创建一个新的虚拟硬盘

在我们扩充根分区磁盘之前,我们需要先创建一个新的虚拟硬盘。可以通过如下的步骤创建一个10G的虚拟硬盘。

  1. 在虚拟机的控制台中选择“添加硬盘”。
  2. 点击“新硬盘”。
  3. 选择硬盘大小,例如10G。
  4. 为硬盘命名,并选择存储位置。
  5. 点击“完成”。

3. 将新的虚拟硬盘挂载到虚拟机上

现在我们已经成功创建了新的虚拟硬盘,需要将其挂载到虚拟机上。

  1. 运行如下命令,查看新硬盘所在的设备名称。

fdisk -l

运行命令后,会将所有的磁盘设备列出并显示磁盘大小等信息。找到我们刚才创建的新的硬盘所在的设备名称,例如 /dev/sdb

  1. 运行如下的命令,将新硬盘挂载到 /mnt 目录下。

mkdir /mnt/newdisk
mount /dev/sdb /mnt/newdisk

4. 复制根分区到新的虚拟硬盘

现在,我们需要将根分区中的所有数据复制到新的虚拟硬盘中。

  1. 运行如下命令,将根分区上的所有数据复制到新的虚拟硬盘。

cp -ax / /mnt/newdisk

  1. 等待复制过程完成。可能需要花费一些时间。

5. 更新 /etc/fstab 文件

现在,我们需要更新 /etc/fstab 文件,以便将新的虚拟硬盘作为根分区。

  1. 运行如下命令,获取新硬盘的UUID。

blkid /dev/sdb1

运行命令后,会显示新硬盘的UUID。例如:

/dev/sdb1: UUID="8eddc834-0949-48e2-86a5-ea8b0a2cd28e" TYPE="ext4" PARTUUID="231ff22d-01"

  1. 编辑 /etc/fstab 文件,并将根分区的设备名称和 UUID 更新为新的虚拟硬盘。

nano /etc/fstab

找到类似下面的行:

/dev/sda1 / ext4 defaults 0 1

将其中的 /dev/sda1 和 UUID 更新为新的虚拟硬盘。

UUID=8eddc834-0949-48e2-86a5-ea8b0a2cd28e / ext4 defaults 0 1

保存并退出。

6. 重新启动虚拟机并验证

现在,我们重新启动虚拟机,以验证磁盘扩展是否成功。

  1. 运行如下的命令:

shutdown -r now

这将立即重新启动虚拟机。

  1. 运行如下命令,检查根分区的磁盘使用情况。

df -h /

这将只显示根分区的磁盘使用情况。确保空间已经扩充。

示例

例如,我们的虚拟机中有一个名为 /dev/sda1 的根分区,其已满。我们需要将其扩充到 20G。

  1. 检查磁盘使用情况。

df -h

输出结果类似:

Filesystem Size Used Avail Use% Mounted on
/dev/sda1 10G 10G 0G 100% /

  1. 创建一个大小为20G的硬盘,并将其挂载到 /mnt/newdisk 目录下。

  2. 对新挂载的硬盘格式化并分区。

fdisk /dev/sdb
mkfs.ext4 /dev/sdb1

  1. 将根分区复制到新的虚拟硬盘中。

cp -ax / /mnt/newdisk

  1. 更新 /etc/fstab 文件,以便将新硬盘作为根分区。

blkid /dev/sdb1
UUID=8eddc834-0949-48e2-86a5-ea8b0a2cd28e / ext4 defaults 0 1

  1. 重新启动虚拟机并验证磁盘扩展是否成功。

shutdown -r now
df -h /

输出结果类似:

Filesystem Size Used Avail Use% Mounted on
/dev/sdb1 20G 10G 10G 50% /

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:详解Linux 虚拟机根分区磁盘扩充空间记录 - Python技术站

(0)
上一篇 2023年5月24日
下一篇 2023年5月24日

相关文章

  • VMware Workstation Pro下CentOS 7 64位服务器安装教程

    VMware Workstation Pro下CentOS 7 64位服务器安装教程 简介 VMware Workstation Pro是一款常用的虚拟机软件,可以在同一台电脑上运行多个操作系统。本教程将详细讲解如何在VMware Workstation Pro下安装CentOS 7 64位服务器。 步骤 首先,需要下载CentOS 7的ISO镜像文件。可以…

    Linux 2023年5月24日
    00
  • MQTT协议介绍

    一:MQTT 1、MQTT协议说明 ( Message Queuing Telemetry Transport)消息队列传输探测,一种基于发布/订阅模式的轻量级消息传输协议 2、MQTT协议来源 在1999年的时候,Andy Stanford-Clark和 Arlen Nipper需要一种通过卫星连接原油管道数据采集监控系统的协议,以最大限度地减少电池损耗和…

    Linux 2023年4月18日
    00
  • UDP内核发包流程

    背景 工作中遇到客户反馈,上层应用UDP固定间隔100ms发包,但本地tcpdump抓包存在波动,有的数据包之间间隔107ms甚至更多,以此重新梳理了下udp的发送流程。 udp发包流程 udp_sendmsg UDP corking 是一项优化技术,允许内核将多次数据累积成单个数据报发送。在用户程序中有两种方法可以启用此选项: 使用 setsockopt …

    Linux 2023年5月8日
    00
  • CentOS7下从零开始安装ethereum/以太坊

    下面我将为您提供“CentOS7下从零开始安装ethereum/以太坊”的完整攻略。请您耐心阅读下面的文章。 硬件与软件需求 在安装 Ethereum 前,您需要具备以下硬件配置: CPU:Intel 4 核心或更高; 内存:8GB RAM 或更高; 存储:至少 100GB 可用存储空间。 同时,您的操作系统需要是 CentOS 7.x 的最新版本,并已经安…

    Linux 2023年5月14日
    00
  • Centos 6.5 服务器优化配置备忘(一些基础优化和安全设置)

    一、关闭不必要服务和卸载不必要软件 在Centos6.5服务器中,为了避免不必要的安全风险,我们需要关闭一些不必要的服务和卸载一些不必要的软件。可以通过执行以下命令来实现: # 关闭http服务 $ service httpd stop $ chkconfig httpd off # 卸载不必要软件 $ yum remove -y sendmail xine…

    Linux 2023年5月14日
    00
  • Linux和Windows环境下安装Nginx

    windows环境下安装Nginx 安装 Nginx 的下载地址如下: http://nginx.org/en/download.html 选择时尽量选择 Stable 稳定版本,点击对应版本下载即可。 之后将安装包解压,解压后可以看到 Nginx 的目录结构: 启动 Nginx 进入安装目录,打开 cmd 命令行,执行命令: start nginx   启…

    Linux 2023年4月13日
    00
  • 在阿里云中编译Linux4.5.0内核 – Ubuntu内核编译教程

    实验环境:Ubnuntu 64位(推荐使用14.04)+Xshell   阿里云现在提供的云服务器很好用的,用来编译内核性能也不错。本文介绍最基本的内核编译方法,为了方便,所有操作均在root用户下进行。 如果不是root用户可以使用su命令切换到root用户。   注:使用xshell的时候最好把这一项给关闭了(工具——选项——高级)     一、环境准备…

    Linux 2023年4月13日
    00
  • [Linux] SSH隧道本地端口转发访问远程服务中的数据库

    当我的本地没有安装任何数据库服务的时候,可以直接通过我本地的端口访问远程机器上的数据库服务,实现这样的效果就可以使用本地转发功能 实际测试本地端口转发,把本地的9006端口转发给远程服务器的115.159.28.111的3306端口,当然需要输入远程机器的用户名和密码 ssh -L 9006:115.159.28.111:3306 ubuntu@115.15…

    Linux 2023年4月13日
    00
合作推广
合作推广
分享本页
返回顶部