解压Ubuntu的initrd.img的方法
- Ubuntu的initrd.img可以在/boot中找到,通常文件名后面还跟有很长的一串版本号。
- 为了保险起见,不直接操作原文件,而是把它复制到自己的家目(home)录中。如果你是用root帐号登录的,家目录就在/root中,如果是用wsxx登录的,家目录一般就在/home/wsxx中,通常登录之后自动就到了家目中。我们把initrd.img复制但家目中进行解压:cp /boot/initrd.img-2.6.15-ubuntu-r6 ./initrd.img.gz
- 上面这个命令把/boot区中的文件复制到当前目录,并更名为initrd.img.gz。一方面改成短文件名好一点好操作,另一方面加上gz的后缀更清楚表明它原本就是一个gzip压缩出来的文件。
http://www.ccthere.com/article/825480
- 然后解压:
- gunzip initrd.img.gz
- 也可以:
http://www.ccthere.com/article/825480
- gzip -d initrd.img.gz
- 两者结果是相同的,都是在当前目录得到一个解压后的initrd.img,原来的initrd.img.gz被删除掉了(这也许是linux整洁的优点)。
- 现在这个更大的initrd.img要用cpio解开,成为一系列目录和文件。为了不与当前目录中现有的文件搞混,我们有必要新建一个目录,把initrd.img解压到新目录中去。将来把里面的文件修改好之后,还要把所有的目录文件再打包起来:http://www.ccthere.com/article/825480
- mkdir initrd #建立目录 cd initrd #进入目录
- cpio -i -d < ../initrd.img #解开上层目录中的initrd.img http://www.ccthere.com/article/825480
- 因为已经进入到initrd中,../initrd.img表示上层目录中的initrd.img。
- 现在就可以看到initrd中各目录中有很多新的目录和文件了。在这里我们可以窥视到ubuntu是如何装配起来的。可以对其中的内容进行修改了。
http://www.ccthere.com/article/825480
## 修改文本文件没有什么好多说的了。 - 修改之后,就是压缩回去,用它来启动,检验是否可以正常启动,是否达到预期的修改目的。先用cpio打包:
http://www.ccthere.com/article/825480
- find . | cpio -o -H newc > ../myinitrd.img #打包当前目录中的所有目录和文件,到上层目录中的myinitrd.img
- cd .. #回到上层目录
- gzip -9 myinitrd.img #gzip的最高级压缩
http://www.ccthere.com/article/825480
- 得到的myinitrd.img.gz就是新的Ubuntu启动文件了。
- 做到这里,要有必要停下来看看一看,比较一下重新压缩之后的文件,是否和原来的initrd.img.gz差不多大小?都应该是4M多的文件。如果文件大小相差太多,可能就有问题。我用Ubuntu文件解压后在压缩回来,用不同的文件名,最后比较,大小完全一致,心里就踏实了。
http://www.ccthere.com/article/825480
- 再用Gentoo的initramfs文件进行同样方法的操作,2M多的文件解压再压缩回来,只剩下不到1K了。
转载于:https://www.cnblogs.com/meilong/p/10352523.html
解压Ubuntu的initrd.img的方法相关推荐
- python 图像压缩后前端解压_Python在后台自动解压各种压缩文件的实现方法
1.需求描述 编写一个 Python 程序,每次下载压缩包形式的文件后,自动将内部文件解压到当前文件夹后将压缩包删除,通过本案例可以学到的知识点: os 模块综合应用 glob 模块综合应用 利用 g ...
- python打包出现乱码_python解压zip包中文乱码解决方法
乱码得原因: 由于ZipFile模块导出遇到中文解码不对,windows上会出现,linux是否会出现不知道没测试过. 解决方式: 1. 搞个文件名引射表(不太方便,少量文件夹套用时候还可以) 2. ...
- php tar.gz文件,PHP解压tar.gz格式文件的方法,_PHP教程
PHP解压tar.gz格式文件的方法, 本文实例讲述了PHP解压tar.gz格式文件的方法.分享给大家供大家参考,具体如下: 1.运用php自带压缩与归档扩展(phar) $phar = new Ph ...
- php 判断是rar或是zip文件,PHP解压zip和rar文件的方法介绍
PHP解压zip和rar文件的方法介绍?实例代码举例php语言如何解压文件.php开发经常会遇到解压zip和rar文件,以下方法供大家参考,判断文件是zip类型的还是rar类型,调用相关组件执行解压缩 ...
- tar解压单个文件到特定目录_Linux解压文件到指定目录的方法
本文介绍了Linux解压文件到指定目录的方法,分享给大家,具体如下: tar在Linux上是常用的打包.压缩.加压缩工具,他的参数很多,折里仅仅列举常用的压缩与解压缩参数 参数: -c :create ...
- 解压并修改initrd再重新压缩的过程
首先新建一个文件夹作为工作区mkdir -/work然后将系统的initrd文件拷贝过来cd ~/workcp /boot/initrd.img-4.9.0-3-amd64 ./这个文件是个压缩文件, ...
- Linux解压rar压缩文件的详细方法
1.下载软件包 下载linux版本的rar软件,进入以下网址下载: https://www.rarlab.com/download.htm 可以手动下载此文件,也可以通过直链下载到服务器.在服务器上执 ...
- 解压hotfile下载下来大文件方法(for Atlassian)
Atlassian.Crowd.v2.1.0.Incl.Keygen.and.Patch-iNViSiBLE.th3scene.com.rar 就拿这个crowd的文件来举例,将他解压到本地目录 D ...
- 在AI Studio终端解压.tar格式的数据集的方法
鼠标右键单击待解压的数据集(已经上传到data//VOCtrainval_11-May-2012文件夹里,VOCtrainval_11-May-2012是我自己重命名过的文件夹,原本文件夹名字是dat ...
最新文章
- 设计模式 之 建造者
- Linux设置默认Python版本
- mysql 基于语句的复制_MySQL 复制 - 性能与扩展性的基石 1:概述及其原理
- /usr/lib/libstdc++.so.6: version `GLIBCXX_3.4.15' not found错误的解决
- 泰山行宫碧霞元君祠_临清市泰山行宫碧霞元君祠5月4号(农历三月三十日)举行大型泰山奶奶接驾法会...
- flink streamGraph生成jobGraph
- 模拟——生活大爆炸版石头剪刀布(洛谷 P1328)
- MySQL安装过程中出现的vcruntime140.dll缺失
- pytorch学习笔记(二十七):Batch-Norm
- CentOS禁用root用户远程登录
- python如何收集数据库_利用Python操作mysql数据库
- 注册 aspnet_regiis
- 在moss上自己总结了点小经验。。高手可以飘过
- 7-12 求给定精度的简单交错序列部分和 (15 分)
- TextBox的样式改成Lable
- 翻转棋java实现代码及ai_黑白棋中的 AI
- Mac Pycharm导入Pygame教程(超细)
- SpringBoot整合JWT(二)
- Avesta飞秒光纤激光器
- Python:内置函数