Ubuntu 20.04 根目录磁盘扩容(2023 您所在的位置:网站首页 linux如何扩容目录 Ubuntu 20.04 根目录磁盘扩容(2023

Ubuntu 20.04 根目录磁盘扩容(2023

2023-12-09 13:41| 来源: 网络整理| 查看: 265

这篇文章,当时只是对分区扩容的记录。当时技术水平有限,虽然文章内容没什么问题,但今天看来,有必要对其进行更新。

一、原始文章:使用Gparted软件扩容1.1 下载安装GParted1.2 U盘启动Ubuntu扩容1.3 注 二、更新内容2.1 Linux 分区、目录 的概念2.11 从Windows说起2.12 Linux分区的概念 2.2 Linux 分区为什么要扩容2.3 Linux 扩容策略

一、原始文章:使用Gparted软件扩容 1.1 下载安装GParted sudo apt-get install gparted

安装后如图所示:

在这里插入图片描述 双击打开软件瞅瞅(需要输入密码):

我的Linux根目录在sda4sda4右边有个钥匙,表示我现在不能对他进行操作下图中:sda4后面就是sda6了,因为我已经把中间的sda5合并给sda4了。即我原来根目录磁盘大小只有30G 左右,增加之后变成了85G 左右。扩容要求1:只能将待扩容磁盘相邻的空间扩容给他。如下图:我还可以将sda9前后的空间扩展给他。扩容要求2:被扩容的磁盘的状态要为未分配(如下图),操作方式是:在该磁盘上右键、删除、点击菜单栏的绿色对号执行操作。

在这里插入图片描述

1.2 U盘启动Ubuntu扩容

用U盘启动Ubuntu系统,进去之后点击试用系统。

同样打开上面的这个软件(没有的话安装一下就行了)。

在根目录磁盘上右键“调整大小”(可能是英文的注意一下)

将磁盘边界向扩容方向拉就行了(就是下图绿色的那个框框)

点击调整大小

点击菜单栏绿色对号,确定执行更改。

关机,拔出U盘。

像往常一样启动Ubuntu

在这里插入图片描述

1.3 注 没有钥匙图标的磁盘直接就可以扩容,不用试用U盘。扩容的概念大概就是:用另一个系统更改目标系统磁盘大小,因为一个磁盘在运行过程中可能不能执行磁盘大小的更改。同样的,在windows系统中应该也能对Ubuntu根目录磁盘大小进行扩容(猜测,暂时没有实践过)。 二、更新内容 2.1 Linux 分区、目录 的概念 2.11 从Windows说起

你买了一台电脑,电脑里面有一个固态硬盘(SSD)、内存条(RAM)还有ROM。

电脑的ROM(Read-Only Memory,只读存储器)里面存放了一些不可修改的数据和程序,它们在电脑断电后也不会丢失。ROM一般用于存放计算机的基本程序和数据,如BIOS ROM。BIOS ROM是一种固件,它存放了计算机的硬件信息和启动程序,当计算机开机时,它会执行BIOS ROM中的程序,检测硬件设备,加载操作系统。而磁盘,则存放了你的系统、软件、数据等内容,现在电脑的磁盘都是SSD了,同样的,你断电后,这些数据也不会消失。内存条:在你运行软件(首先是操作系统)的时候起作用,它是CPU和磁盘上的数据交换的高速通道。

ROM我们不用管,而内存觉得小则可以换个大的。

只有磁盘,使我们可以自主操作的部分。

一块SSD可能容量是1TB,这些存储区域在物理上是连接在一起的整块区域。但我们可以在逻辑上,把这块硬盘换分为多个区域,每个区域可以有不同的属性,比如不同的文件系统类型(不同的文件系统类型有不同的特点,比如支持的最大文件的大小,是否支持权限管理等等)。

分区之后我们可以更加灵活管理数据,比如用一个分区来安装操作系统,一个分区来安装字节下载的软件,一个分区来存放文稿数据等等。

下图是我电脑在Windows下的可见分区: 在这里插入图片描述

严格来说,应该成为“卷”,当然了,通常情况下可以将它和分区看成是一个概念,我们暂且用分区这个词来描述。当分区的文件系统是NTFS时,才会在上上面的资源管理器中显示,我还有一个用来安装Ubuntu的分区,文件系统是ETX4,就不会在这里显示。

在这里插入图片描述

Windows下的分区通俗易懂。但是到了Linux,可能就会产生疑惑。

Windows下的一个目录可能是这样的:E:\ST\STM32CubeIDE_1.13.0,而到了Linux,则变成了:/root/LinuxC/Algorithm,所有的绝对目录,都是以/开头的。

2.12 Linux分区的概念

Linux 根目录:/

Linux的根目录是文件系统目录结构的顶层,是最顶层的目录,所有的文件和目录都置于根目录“/”之下。

根目录是Linux系统启动时系统第一个载入的分区,所以启动过程中用到的文件应该都放在这个分区中; 其中/etc、/bin、/dev、/lib、/sbin这5个子目录都应该要与根目录连在一起,不可独立成为某个分区。

根目录所在的分区称为根分区(或者启动分区),它是你的固态硬盘上多个分区中的一个。可以在概念上将它理解为Windows的系统盘,但并不完全一样。

Linux多分区与挂载:

和Windows类似,Linux也可以有多个分区,以便提升数据安全性、效率、支持多文件系统、支持多用户等等。

Linux至少应该有2个分区:

/ 分区:这是根分区,存放了Linux系统的核心文件和应用程序,是必须要有的分区。2/boot 分区:这是启动分区,存放了启动程序和内核映像,一般大小为200~500M。这个分区可以单独设置为只读模式,提高安全性

当然了,Linux分区往往不止上面这2个,常用的还有:

/swap:这是交换分区,用于在内存不足时作为虚拟内存使用,一般大小为物理内存的1~2倍。这个分区可以提高系统的性能和稳定性。/home分区:用户分区,存放用户的个人文件和设置的分区。

这些分区都是SSD上的一块一块的存储区域,它们可以在物理上挨着,也可以不挨着。

为了便于管理,可以通过挂载操作,将这些七七八八的分区统一组织起来。

一个分区,可以自行创建多个目录。根分区的顶级目录是/,即根目录,它也是整个Linux系统目录结构的顶级目录。其他分区,通常可以挂载到根目录下的任意目录下,比如直接挂载到/下,或者挂载到/root/下,都是可以的。

挂载只是将分区与目录结构(目录树)进行关联,形成一个逻辑上的、有序的结构,这使得所有的绝对路径都是从根目录开始,而不是从某个分区开始(比如C盘、D盘),方便我们定位和访问文件。

2.2 Linux 分区为什么要扩容

说到这里,你明白你为什么要扩容了吗?仅仅是系统提示你内存不足吗?你为什么需要对根目录(根分区)进行扩容呢?

如上所言,根分区是Linux操作系统所在的分区。按理说不需要太大的空间,问题出在:

安装软件:一般使用apt(Debian类)命令安装软件时,会默认安装在根分区,而经验不足的Linux使用者意识不到这个问题,或者不会修改软件的默认安装位置,或者嫌麻烦(比如我),索性还不如扩容呢。文稿与数据的存放:如果系统的分区不清楚,平常可能随便创建的目录来存放各种文件。结果文件全都存放在根分区,最终导致空间不足。 2.3 Linux 扩容策略

如果你不想管那么多,那么就用我原来讲的Gparted,对根分区进行扩容就完事了。

如果你无法使用前面的方法扩容(可能是不满足一些条件),那么可以试试下面的策略。

(1)修改软件的默认安装位置

如果你有其他分区,可以考虑把软件安装到这里,而不是占用根分区。

使用 apt.conf 文件来设置 Dir 参数,指定软件包的根目录。例如,如果你想将软件包安装到 /opt 目录下,可以在 /etc/apt/apt.conf 文件中添加以下内容:

Dir "/opt";

(2)挂载新的分区

如果你的所有分区都空间不足,可以挂载一个新的分区,来存放数据。这个新的分区,不需要满足Gparted扩容的那些条件,应为这不是给根分区扩容,只是给你的Linux文件系统添加了一个新的存储位置。

假设你有一个不使用的分区,它原来没有被挂载到Linux,它可能位于SSD的任意位置。

可以把原来某个分区格式化,然后挂载,参考步骤:

首先,确定要格式化和挂载的分区的设备名,例如 /dev/vdb1。使用 fdisk -l 或 lsblk -f 命令查看当前的磁盘和分区情况。 比如:这是我的服务器的磁盘列表,有两块磁盘vda和vdb,都被分为了2个分区,我之前已经挂载了,所以最右边显示的有挂载点。 在这里插入图片描述 注意这里不是完整的磁盘名称,可以使用: fdisk -l来查看,比如下图有一个磁盘为:/dev/vdb,它的一个分区是:/dev/vdb1。 在这里插入图片描述

然后,使用 umount /dev/vdb2 命令卸载该分区,如果它已经被挂载了。如果它没有被挂载,可以跳过这一步。 如图,现在已经不显示挂载点了: 在这里插入图片描述

接着,使用 mkfs -t ext4 /dev/vdb2 命令对该分区进行格式化。可以选择不同的文件系统类型,如 ext4,xfs,ntfs 等。这里以 ext4 为例。注意,这一步会删除该分区上的所有数据,所以请在执行之前做好备份。

然后,使用 mkdir /root/data/new 命令创建一个挂载点(就是新建个目录)。可以选择任意一个空的目录作为挂载点,这里以 /root/data/new 为例。

接着,使用 mount /dev/vdb2 /root/data/new 命令将该分区挂载到挂载点。可以使用 df -h 或 lsblk -f 命令查看挂载是否成功。

最后,如果想让该分区在每次开机时自动挂载,使用 vim /etc/fstab 命令编辑 /etc/fstab 文件,添加一行类似于以下的内容:

UUID=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx /root/data/new ext4 defaults 0 0

其中,UUID 是该分区的唯一标识符,可以用 blkid /dev/vdb2 命令查看,前面的fdisk命令也显示了; /root/data/new 是挂载点;ext4 是文件系统类型;defaults 是挂载选项;最后两个数字是用于备份和检查的标志。

在这里插入图片描述 重启后: 在这里插入图片描述



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有