我们已经准备好了,你呢?

2024我们与您携手共赢,为您的企业形象保驾护航!

img 文件是一种常见的磁盘映像文件格式,可以包含一个或多个文件系统。img 文件可用于创建、备份或恢复操作系统或其他数据。在 中,可以使用一些简单的命令来操作 img 文件,例如挂载、卸载、修改和扩展。本文将介绍如何在 中进行这些操作,并给出一些示例。

为什么要做这些事呢?因为我准备解压一个现有的.img文件,并且想通过挂载的方式在这个基础上增加,删除或者修改一些文件或者内容。

本文主要记录一下img如何解包和打包的一些坑(给有同样想法的人打气),好像只有linux才能挂载img,但是无法修改,需要pro。

更新

前面的调试记录都完好无损,这里想说明一下,调试是一个过程,怕这篇文章误导一些朋友。

最新调试思路:Linux(26)根据已有的.img对源代码进行1:1还原

可以实现,需要脚本的话私信我吧。

挂载和卸载 img 文件

挂载 img 文件是将其作为虚拟磁盘设备连接到系统,以便可以访问其所包含的文件系统中的文件;卸载 img 文件是将其与系统断开连接,从而释放其所占用的资源。

首先需要创建一个挂载点,然后使用 mount 命令将 img 文件挂载到这个挂载点上,之后可以在挂载的文件系统中增加、修改、删除文件,最后使用命令卸载 img 文件即可。

具体步骤如下:

创建挂载点。例如,您可以创建一个名为 mnt 的目录:

mkdir mnt

使用mount命令将img文件挂载到该目录:

sudo mount -o loop ubuntu-rootfs.img mnt #这个文件可以理解为是别人做好的,我想搞现成。

现在,我们可以在 mnt 目录中添加、修改或删除文件。例如,如果我们要添加一个名为 .txt 的文件,我们可以使用以下命令:

echo "This is a new file" > mnt/myfile.txt #只是举例, 我当时是想预置一些文件,安装apt,删除一些内容。

当所有修改完成后,需要使用以下命令卸载img文件:

sudo umount mnt

最后,您可以删除挂载点目录:

rmdir mnt

完成上述步骤后,-.img文件将已经包含您添加的新文件。

注意:执行这些操作需要有相应的权限,如果没有权限,可能需要使用 sudo 命令。

这是最终的结论:文件是预置了,但是问题是刷TM Linux的时候,.img提示分区问题,刷不上去。

查看并扩展img文件的大小

嗯,当时还在预设文件,发现500MB左右的文件预设无法输入。我想如何查看或修改img文件的大小,以便可以向其中添加更多数据。有一些工具可以实现此目的,例如df,dd等。

检查 img 文件的大小

可以使用df命令查看文件系统的磁盘使用情况,挂载img文件后可以运行以下命令:

df /mnt

输出如下所示:

vmhgfs-fuse    1953512444 1729111644 224400800  89% /mnt

此输出告诉您 /mnt 目录(即 img 文件)已使用了 89% 的空间,并且剩余 11% 的空间。此输出中的数字以 1K 块为单位。那么,您大约还有 214GB 的空间???我不知道 Linux 是如何计算的,但应该大约是 220MB。

如果要查看剩余空间的具体值,可以使用 df -h 命令。-h 选项将以可读的格式(例如 KB、MB、GB)显示磁盘使用情况。

注意:执行这些操作需要有相应的权限,如果没有权限,可能需要使用 sudo 命令。

这是最终结论:现在我找到原因了,因为img文件大小大概是3.8G,我们通过mount挂载,实际用了85%左右,还剩下200MB左右,这也是为什么我解压后无法预设500MB文件的原因。

扩大 img 文件的大小

接下来,如果您想向此文件系统添加更多文件,则需要确保有足够的空间。如果空间不足,则可能需要增加 img 文件的大小。这可以使用 dd 命令和命令来完成。

下面是一个示例,将 img 文件的大小增加了 1GB:

使用dd命令增加img文件的大小:

dd if=/dev/zero bs=1M count=1024 >> ubuntu-rootfs.img

使用命令检查文件系统:

e2fsck -f ubuntu-rootfs.img

使用以下命令调整文件系统大小:

resize2fs ubuntu-rootfs.img

上述命令完成后,img 文件的大小应该会增加 1GB。然后,您可以尝试再次挂载 img 文件并添加新文件。

注意:您需要具有适当的权限才能执行这些操作。如果您没有权限,则可能需要使用 sudo 命令。

这是最终的结论:增大了size,生成了,但是刚才发现img文件大小没有变大,其实我们的emmc有64G,这个方法完全不支持,通过增大也无法增大文件,最终的结论是刷不进去。

添加和设置新用户

最后我妥协了,决定重新做一个,于是又重新下载了源码,下面简单记录一下:

在 中,可以使用一些命令来添加和设置新用户,例如 等。添加新用户使我们能够为不同的用途或人员分配不同的权限和资源。设置新用户允许您自定义用户的登录方式、密码、信息等。

添加新用户

在 中,您可以使用命令添加新用户。以下是添加新用户 r58 的命令:

sudo adduser r58

该命令会提示你输入新用户的密码,以及一些可选的用户信息,比如全名、房间号、电话号码等等(不用担心,只要一直按回车键就可以了)。

然后就可以使用该命令将新用户添加到sudo组,以便新用户可以使用sudo命令执行需要管理员权限的操作:

sudo usermod -aG sudo r58

将新用户设置为默认登录用户

至于将 r58 设置为默认登录用户,这取决于您使用的登录管理器。如果您正在使用登录管理器,则可以编辑 /etc/<user>/.conf 文件并将 -user 设置为 r58:

[Seat:*]
autologin-user=r58

如果您使用 gdm,您可以编辑 /etc/gdm3/.conf 文件并将其设置为 r58:

[daemon]
AutomaticLogin=r58

请注意,编辑这些配置文件需要管理员权限,并且可能需要使用 sudo 命令。

修改主机名

主机名是用来标识和区分不同计算机或设备的名称。在 中,您可以使用一些命令来更改主机名,例如 vi 等。

修改主机名

您要更改的是系统的主机名()。您可以使用

命令修改主机名,例如修改主机名为xxx,可以执行以下命令:

hostnamectl set-hostname xxx

然后,你需要编辑 /etc/hosts

.file,将所有对旧主机名的引用更改为新主机名。您可以使用 vi

使用文本编辑器编辑此文件:

vi/etc/hosts

在此文件中,您可能会看到类似如下的一行:

127.0.1.1    localhost

你需要改变这一行

将其改为xxx,然后保存并关闭文件。

/etc/hosts 文件中增加了一行新内容,引用新的主机名 btf。现在,当系统尝试解析主机名 xxx 时,它将被解析为 IP 地址 127.0.1.1,这是一个代表本地机器的特殊 IP 地址。

接下来我们通过脚本卸载环境,然后重新挂载:

系统重新启动后,您可以再次运行该命令来检查主机名是否已更改:

hostname

如果一切顺利的话,该命令应该输出 xxx。

总结

本文介绍了如何操作 中的 img 文件,包括挂载、卸载、修改、扩容。本文还介绍了如何添加和设置新用户,以及如何修改主机名。这些操作可以帮助您更好地管理和使用您的系统。希望本文对您有所帮助。

如果有什么疑问或者建议,欢迎在评论区留言,感谢您的阅读与支持。

二维码
扫一扫在手机端查看

本文链接:https://by928.com/4375.html     转载请注明出处和本文链接!请遵守 《网站协议》
我们凭借多年的网站建设经验,坚持以“帮助中小企业实现网络营销化”为宗旨,累计为4000多家客户提供品质建站服务,得到了客户的一致好评。如果您有网站建设、网站改版、域名注册、主机空间、手机网站建设、网站备案等方面的需求,请立即点击咨询我们或拨打咨询热线: 13761152229,我们会详细为你一一解答你心中的疑难。

项目经理在线

我们已经准备好了,你呢?

2020我们与您携手共赢,为您的企业形象保驾护航!

在线客服
联系方式

热线电话

13761152229

上班时间

周一到周五

公司电话

二维码
微信
线