centos 6下自己编译linux内核,完了创建initrd文件,依据以前的的经验mkinitrd

#mkinitrd -v ../initramfs-3.0.32.img 3.0.32

但是输出的消息却与以前的版本不太一样,好像打包进去了很多模块,生成花费时间也很长,完成后,看initramfs文件有100多M,OMG,这么大的文件

/boot目录可放不下(/boot挂在单独的分区下,该分区只有100M大小)。

经过N久的折腾,才发现原来redhat/centos6不再使用原来的mkinitrd,而是使用dracut代替了,mkinitrd实际上只是调用dracut的功能。研究dracut才弄明白,如果只是生成用于grub引导本地硬盘上的linux,需要使用一个参数--hostonly ,这样dracut就不会把过多不必要的模块加载到initramfs.img里,如下

dracut -f -v --hostonly -k '/lib/modules/3.0.32' ../initramfs-3.0.32.img 3.0.32

这是通过查阅kernel 编译安装的 make install 使用是执行的以下脚本实现的:

sh /path/to/kernel-source/linux-3.0.32/arch/x86/boot/install.sh

3.0.32 arch/x86/boot/bzImage System.map "/boot"

查阅arch/x86/boot/install.sh 文件, 它调用/sbin/installkernel

,然后是/sbin/new-kernel-pkg ,接着是/sbin/dracut

通过分析 /sbin/new-kernel-pkg ,其中290行有如下代码

if [ -n "$dracut" ]; then

tool="/sbin/dracut $dracuthostonly -f $initrdfile $version"

else

tool="/sbin/mkinitrd --allow-missing -f $initrdfile $version"

fi

其中变量$dracuthostonly的值是 -H ,在dracut参数里与 --hostonly 同义。

问题至此得解。

linux dracut命令,redhat/centos 6 linux 使用 dracut 生成initramfs[转]相关推荐

  1. linux dd命令制作软盘,制作Linux启动软盘的四种方法

    Linux的启动软盘有boot盘和boot/root盘之分,所谓的boot盘只能用来启动已经安装在硬盘上的Linux系统,而boot/root盘本身就是一个迷你Linux系统.Linux启动软盘是系统 ...

  2. linux常用命令 打开文件,【Linux】常用命令 lsof查看打开的文件

    Linux系统把软硬件都抽象成文件,所以通过文件可以追踪到很多重要信息,如读取的配置文件.打开的端口等. 下面是常见的用法: 默认测试文件名为text.txt 1,显示打开text.txt的进程: l ...

  3. linux dig命令_如何在Linux上使用dig命令

    linux dig命令 Fatmawati Achmad Zaenuri/ShutterstockFatmawati Achmad Zaenuri / Shutterstock The Linux d ...

  4. linux常用命令_干货:Linux常用命令全称及讲解

    从事IT行业的很多人都会使用Linux常用命令,但是知道这些常用命令全称的人并不多,让我们来看看这些常用命令对应的全称吧!小编精心整理了一下,毕竟常用命令比较多,如果没有你常用的还望海涵,可以评论区补 ...

  5. linux使进程不依赖终端,Linux nohup命令应用简介--让Linux的进程不受终端影响

    nohup命令应用简介--让Linux的进程不受终端影响 by:授客 QQ:1033553122 #开启ping进程 [root@localhost ~]# ping localhost & ...

  6. linux uniq命令_如何在Linux上使用uniq命令

    linux uniq命令 Fatmawati Achmad Zaenuri/ShutterstockFatmawati Achmad Zaenuri / Shutterstock The Linux ...

  7. linux中split函数用法,Linux csplit 命令用法详解-Linux命令大全(手册)

    csplit Linux csplit命令用于分割文件. 将文件依照指定的范本样式予以切割后,分别保存成名称为xx00,xx01,xx02-的文件.若给予的文件名称为"-",则cs ...

  8. linux grep命令例子,详解linux grep命令

    本文介绍了linux grep命令,具体如下: 1.作用 Linux系统中grep命令是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹 配的行打印出来.grep全称是Global Regu ...

  9. linux chmod命令数字,菜鸟学Linux命令:chmod命令和数字文件权限

    chmod是一条在Unix系统中用于控制用户对文件的权限的命令(change mode单词前缀的组合)和函数. 只有文件所有者和超级用户可以修改文件或目录的权限.可以使用绝对模式,符号模式指定文件的权 ...

最新文章

  1. Grub及内核的简单介绍安装
  2. s5pv210启动debian出错提示bash: cannot set terminal process group (-1): Inappropriate ioctl for device...
  3. 网页制作中最有用的免费Ajax和JavaScript代码库
  4. mysql5.6 in走索引吗_MySQL5.6 单列、多列索引以及IN语句的优化(翻译)
  5. 关于focus的概念
  6. ELK下elasticsearch 性能调优
  7. Spring 的 ApplicationEvent and ApplicationListener
  8. LeetCode OJ:Linked List Cycle(链表循环)
  9. iqoo支持typec耳机吗_JEET ONE蓝牙耳机:颜值在线的实力派
  10. Andriod获取本机ip地址
  11. DC综合各种lib library的解释
  12. MacPro安装运行Win10虚拟机 (Parallels Desktop)
  13. LVS的NAT、TUNNEL、Full-NAT模式
  14. 一天一个机器学习小知识——Lasso、Ridge以及ElasticNet
  15. 【亲测】独家更新CcPay多商户码支付系统,码支付易支付+个人支付宝微信二维码收款app监控+搭建教程
  16. java全栈系列之JavaSE-面向对象(继承详解)035
  17. 已知顺序表中元素值递增有序。 用算法实现将元素x查到表中适当的位置上,以保持顺序表的有序性。
  18. 鸿蒙系统与麒麟os,华为鸿蒙系统改名为麒麟OS
  19. 有一只兔子,从出生后第3个月起每个月都生一只兔子,小兔子长到第三个月后每个月又生一只兔子,假如兔 子都不死,问每个月的兔子总数为多少?
  20. 老虎证券开放api期货合约建立

热门文章

  1. 《设备历险》之Windows中外接硬盘速度不正常
  2. 2017 CCBN:迪普科技聚焦融合 让广电网络更简单·智能·安全
  3. IntelliJ IDEA 常用配置
  4. Spring Boot Tomcat 配置【数安时代 GDCA】SSL证书安装
  5. html5风车转圈,HTML5 风车特效
  6. C语言 scpi命令解释器,SCPI命令解释器的实现
  7. 国密SM2算法加解密文件
  8. 判断完全二叉树及求二叉树深度完整代码
  9. 汇正财经:揭秘维权退费黑产,远离维权陷阱
  10. 诗经 -小雅 - 鱼丽