如何在Linux上将Ext2或Ext3文件系统迁移到Ext4

在笔记本电脑上的Linux shell窗口Fatmawati Achmad Zaenuri / Shutterstock.com

知道你应该升级你的Linux文件系统,但不能面对恶化吗?以下是怎样在没有完全重新安装的剧变的情况下将ext2和ext3转换为ext4。

Linux文件系统

如果你很有礼貌,那你就可以调用ext3文件系统,就像它在2001年那样推出。至于可怜的旧版本ext2,那个文件系统来自于1993年,除了古代以外,没有其它的文字。在计算机方面,ext3是古董。而ext2则是考古发现。

Linux世界中的现代文件系统是2008年发布的ext4。它更快,更不容易碎片化,能够处理更大的文件系统 – 更大的文件 – 它有更准确的文件日期戳,我们提到它更快吗?快得多。

好的,我已售完了 – 让我们这样做

让我们考虑一下。实际上,您可能不想升级文件系统。

升级整个Linux系统更有意义。通过升级,我们的意思是进行一些数据备份,擦除系统,重新安装现代发行版并恢复数据。去完整刷新。通过更新的软件以及干净,最新和新安装的文件系统,获得现代Linux发行版的优势。

如果你不能在你的硬件上运行现代Linux,即使是像Lubuntu,LinuxLite或CrunchBang ++这样的轻量级发行版之一,而且你必须坚持使用你所拥有的Linux,还有一些警告。

要将文件系统升级到ext4,必须使用内核版本2.6.28或更高版本。因此,如果您没有该版本的内核或更高版本,则必须先升级内核。

警告:如果不满足内核版本要求,甚至不要考虑尝试这个。你最终会得到一台无法启动的电脑。在继续之前检查您正在使用的内核版本。

确保您拥有当前使用的Linux版本的安装盘并保持待机状态。升级文件系统并非没有危险。

备份是您的安全网。在您执行任何操作之前,请将几个数据备份到不同的备份介质,并确保您拥有旧的Linux安装磁盘。如果出现严重错误,您可以重新安装旧的Linux并恢复数据。

您还需要一个现代Linux发行版的当前Live CD / DVD来执行文件系统升级。因此,请确保您也有其中一个。

顺便提一下,本文是在2009年4月发布的Ubuntu Jaunty Jackalope的安装上进行研究的。它使用ext3作为文件系统。

和我们在一起?

约翰韦恩说勇气很吓人,但仍然感到悲伤。我很佩服你的胆量。

我们要做的第一件事是检查内核版本 UNAME。该 UNAME 命令可以显示不同类型的系统信息。

在旧的Linux计算机上打开终端窗口并键入以下命令。类型 UNAME , 空间, -r,然后按Enter键。

uname -r

uname -r在终端窗口中。

这台计算机上的Linux版本使用的是内核版本2.6.28-11,因此我们已满足内核版本要求。

说真的,如果你还没有达到这个要求,现在就停下来。足够接近是不够的。您必须达到或超过此内核版本号。

现在我们将检查磁盘标识符 BLKID,用于标识系统上的块设备。

BLKID

在终端窗口blkid

该系统有一个单独的硬盘驱动器(sda),其上有一个文件系统(sda1),安装在/ dev / sda1。这是一个ext3文件系统。这是我们要转换的文件系统。

还有一个名为swap的文件系统,但我们并不感兴趣。

使用Live CD重新启动

插入Live CD并重新启动计算机。您可能需要在重新启动期间按一个键以使计算机从CD启动。按下的键将在启动过程的早期阶段显示。快点 – 机会之窗不会持续很长时间。如果您错过了,请重新启动并重试。

引导进入Live CD环境后,请确保不会意外启动安装。花点时间阅读您提供的选项,如果有一个类似于“尝试DistributionName”的选项,请选择该选项。

成为根

打开终端窗口并键入以下命令。这有效地使您成为root用户并且意味着您不需要键入 须藤 在每个命令面前。

sudo bash

sudo bash在终端窗口

请注意,命令提示符已更改。你是根。小心翼翼。

识别文件系统

我们需要再次识别文件系统,以了解它们在这个Linux实例中的显示方式。

fdisk -l

终端窗口中的fdisk -l

你会看到一些类似于以下的输出。

在终端窗口中从fdisk输出

我们之前确定为sda1的文件系统已经被Live CD Linux发现并识别。这是第一个迷你里程碑。

第二个是转换文件系统。

转换文件系统

这里列出了两个命令,一个用于从ext2转换为ext4,另一个用于从ext3转换为ext4。确保你使用合适的一个!

要将ext2转换为ext4,请使用以下命令:

tune2fs -O extents,uninit_bg,dir_index,has_journal / dev / sda1

要将ext3转换为ext4,请使用以下命令:

tune2fs -O extents,uninit_bg,dir_index / dev / sda1

在终端窗口中调整2个-O范围,uninit_bg,dir_index / dev / sda1

由于似乎没有发生太多事情,因此略显平庸。您将返回到命令提示符。如果你看到一些输出,它可能会是错误消息。所以这里没有新闻是好消息。

检查文件系统

即使没有标记错误,也要彻底检查整个文件系统是否存在问题。我们将使用一个名为的命令 e2fsck的。这是一个用于检查文件系统完整性的工具。它还可以尝试修复它找到的任何问题。该 e2fsck的 工具与ext2,ext3和ext4文件系统一起使用。

-p (preen)选项导致e2fsck尝试修复错误和 -F (强制)选项原因 e2fsck的 检查文件系统,即使文件系统看起来很干净。

e2fsck -pf / dev / sda1

终端窗口中的e2fsck -pf / dev / sda1

没有报告错误。我们现在可以尝试挂载文件系统。

安装FIlesystem

我们需要调整文件系统表(fstab)和grub引导程序以使用转换后的文件系统。为此,我们必须挂载文件系统。我们将它挂载在/ mnt上。我们之前将文件系统识别为sda1,因此我们的命令是:

mount -t ext4 / dev / sda1 / mnt

在终端窗口中挂载-t ext4 / dev / sda1 / mnt

现在它已经安装,我们应该能够列出文件系统。我们来检查一下。文件系统的根目录将位于挂载点/ mnt。

ls / mnt

在终端窗口中挂载-t ext4 / dev / sda1 / mnt

这令人鼓舞。看起来我们期待它。

有关: 怎样从Linux终端安装和卸载存储设备

编辑fstab

我们需要编辑fstab文件并将ext3(或ext2,如果这是你转换的文件系统)的任何引用更改为ext4。

此示例中使用的Live CD具有 纳米 编辑就可以了。这是一个简单的小编辑器,所以我们将使用它。如果 纳米 在Live CD上没有可用的CD上的Linux发行版将捆绑另一个编辑器。

nano / mnt / etc / fstab

终端窗口中的nano / mnt / etc / fstab

纳米 编辑窗口将出现。您需要查找字符串“ext3”或“ext2”的出现并将其更改为“ext4”。在这个例子中,有一次出现ext3,它被突出显示。

带有ext3的纳米窗口突出显示

ext3被ext4取代。

带有ext4的纳米窗口突出显示

您需要保存文件并退出编辑器。在 纳米 Ctrl + O将保存文件,Ctrl + X将关闭编辑器。

升级grub

因为我们已经在/ mnt上安装了sda1文件系统,所以文件系统中目录的路径实际上已经比平常更深一层了。这就是为什么我们提供给nano的路径是/ mnt / etc / fstab而不是通常的/ etc / fstab。

因为grub希望在某些地方找到东西,所以我们需要让文件系统看起来好像是正常挂载的。我们需要文件系统的根位于/而不是/ mnt。 chroot命令允许我们运行命令shell并指定我们希望使用的根点。

我们使用的命令是:

chroot / mnt

chroot / mnt在终端窗口中

请注意,命令提示符已更改。

我们现在可以发布了 更新GRUB 命令让grub读取fstab文件并重新配置自己。

更新GRUB

在终端窗口中更新grub

一旦grub重新配置,我们需要在硬盘上安装一个新的grub实例。请注意,这是硬盘驱动器sda,而不是文件系统sda1。不要包含“1”,只需键入“sda”即可。

grub-install / dev / sda

grub-install / dev / sda在终端窗口中

重新启动Linux

重新启动系统并删除Live CD。系统重新启动后,打开终端窗口,然后输入以下命令:

BLKID

在终端窗口blkid

我们可以看到,文件系统现在是一个ext4文件系统。

本文研究的机器需要很长时间才能重新启动(超过十分钟),我们认为它出了问题并且它永远不会重新启动。

也许是因为它是虚拟机,或者可能是在首次启动时发生了一些文件系统转换。无论哪种方式,耐心都赢了,它最终重新浮出水面。如果你的机器做了类似的事情,请等待。一切都可能不会丢失。

随后的重新启动与正常情况一样快。

相反升级你的Linux

好吧,我们到了那里。但是在现代文件系统上使用旧的Linux版本仍然会留下非标准的混合体。

如果迁移到新的文件系统对您来说很重要,并且您的硬件可以接受它,那么迁移到当前的Linux发行版是最佳选择。您将享受到这样做带来的所有其他安全和软件优势。

尽管如此,如果没有别的东西 – 有时我们没有我们希望的选项 – 这些步骤将允许您升级文件系统。

body #primary .entry-content ul#nextuplist list-style-type:none; margin-left:0px; padding-left:0px;
body #primary .entry-content ul#nextuplist li a text-decoration:none; color:#1d55a9;

请阅读下一步

  • > Steam不支持Ubuntu 19.10和未来版本
  • >怎样使您的哑窗空调智能化
  • >微软的新Windows终端现已推出
  • >怎样在Google地图上报告虚假商家信息
  • >盗版怎样使法律流媒体服务更好
本文机器自动生成,不保证语句完整通顺和表达准确,亦不对内容真实有效性负责,请读者知悉。