内核编译之增加ntfs文件系统

内核编译

内核编译

单内核体系设计,但充分借鉴了微内核设计体系的优点,为内核引入模块化机制。

内核组成部分:

    Kernel,内核核心,一般为bzImage,通常在/boot目录下,名称为vmlinuz-WERSION-

RELEASE;

    Kernel object内核对象,一般放置于/lib/modules/VERSION-RELEASE/

    [  ]:N    功能模块不编译到现有内核。

    [M]:M    生成模块放置于/lib/modules/VERSION-RELEASE/

    [* ]: Y     打入内核

    辅助文件:ramdisk

              Initrd

              Initramfs  

内核版本

Uname命令:

    Uname  – print system information

    Uname

            – n:显示节点名称

            -r :显示版本信息VERSION-RELEASE

            -a :显示所有信息

 

内核模块命令

    lsmod命令

    显示有核心已经装载的内核模块

    显示的内容来自于:/proc/modules文件

modinfo命令

        显示详细的描述信息

        modinfo

            -n  只显示模块文件路径

            -p  显示模块参数

            -a  author作者信息

            -d  description 描述信息

            -l   license许可证

        lsmod | grep xfs modinfo xfs

内核模块管理

modprobe命令

    装载或卸载内核模块

    modprobe  [-C  config-file] [modulename] [module parame-ter……]

    配置文件:/etc/modprobe.conf

    /etc/modprobe.d/*.conf

    modprobe [-r] modulename

depmod命令

    内核模块依赖关系文件及系统信息映射文件的生成工具

 

 

装载或卸载内核模块

insmod命令:指定模块文件,不自动解决依赖模块

    insmod  [filename] [module options….]  安装模块

    Insmod  `modinfo  -n  exportfs` 查看模块文件路径

    Insmod  `modinfo  -n  xfs`

rmmod  删除模块

    rmmod  [modulename]

    rmmod  xfs

        rmmod  exportfs

编译安装ntfs示例

1、安装开发包组

    Yum  groupinstall Development Tools

    Yum  groupinstall server  platform  Development

    Yum  install  ncures

        linux-3.18.41.tar.xz内核包拷入一个现成的Linux操作系统

        tar -xvf  linux-3.18.41.tar.xz  -C  /usr/src  解压到源码存放路径

        将内核解压完成后进入/usr/src目录会生成一个linux-3.18..41的目录

    2、进入linux-3.18..41目录,注意:后续操作都将在该目录下进行。

        参考/boot/config-3.10.0-327.e17.x86_64文件,该文件记录了当前系统在编译安装时

它启用了哪些模块,每一行代表了一个模块

                    =y  代表已经打入核心

                        未设置代表没有编译到内核中

                    =m 代表内核模块

blob.png 

    可以将该文件作为一个模板在它的基础之上增加一个ntfs的功能,其他的内容不动,

避免因对硬件不了解而出错。

 

    3、将/boot/config-3.10.0-327.e17.x86_64 复制到/usr/src/linux-3.18.41目录中且必须命

名成 . config 的隐藏文件 :cp  /boot/config-3.10.0-327.e17.x86_64  .config

       因为编译程序只认 . config文件,通过它来展现模块菜单

4make  menuconfig 进入内核编译模式

    按下图步骤开始操作

blob.png 

blob.png 

    添加内核版本号

blob.png 

 

 

 

    文件系统类型

blob.png 

    按空格选择是否模块化或打入内核

blob.png 

exit 退出保存

 

5、执行命令make  -j  cpu核心数  开始执行编译

           egmake  -j  2  编译之前查看一下

6、等待一个漫长的编译过程

7、编译完成后执行命令:

    make  modules_install  添加模块驱动

    make  install

8、reboot  用新内核启动

9、执行命令 locate  ntfs.ko  查看ntfs是否编入内核,注意在使用locate命令时,先

       使用命令updatedb更新一下数据库。

blob.png 

 

原创文章,作者:zzd,如若转载,请注明出处:http://www.178linux.com/45954

(0)
zzdzzd
上一篇 2016-09-13
下一篇 2016-09-13

相关推荐

  • PHP异常处理详解

    PHP异常处理详解          异常处理(又称为错误处理)功能提供了处理程序运行时出现的错误或异常情况的方法。   异常处理通常是防止未知错误产生所采取的处理措施。异常处理的好处是你不用再绞尽脑汁去考虑各种错误,这为处理某一类错误提供了一个很有效的方法,使编程效率大大提高。当异常被触发时,通常会发生:&…

    Linux干货 2015-06-02
  • 自定义命令提示符

     命令提示符的格式放在变量PS1中         命令提示符特殊字符定义             \u  当前用户      &…

    Linux干货 2017-05-02
  • linux程序包管理

         首先linux软件程序包和windows中的程序包是不兼容的,所以要在linux上使用windows上的程序,需要使用虚拟化工具。 库级别的虚拟化:     linux : WinE     windows: Cywin 而程序开发语言有多…

    Linux干货 2016-08-24
  • 条件选择if 条件判断case 文件查找 find locate 以及压缩和解压缩工具

    1 shell脚本编程之 条件选择if 条件判断case  2 文件查找 find locate 以及压缩和解压缩工具 过程式编程语言:  顺序执行  选择执行  循环执行 条件选择之 if语句 选择执行:   注意:if语句可嵌套    单分支 if 判断条件:then 条件为真的分…

    Linux干货 2016-08-15
  • yum前端工具与源码编译安装

    概述:本章内容重要讲解yum(rpm前端工具)和rpm源码编译安装,前者可以有效的解决软件安装过程中存在的依赖关系,从而提升我们使用系统的效率;后者是我们进阶Linux系统,了解程序包安装的过程本质 1、YUM: Yellowdog Update Modifier   Yum(全称为 Yellow dog Updater, Modified)是一个…

    Linux干货 2016-08-29
  • 逻辑卷管理

    1.相关命令:lsblk、fdisk、gdisk、parted、mkfs、mke2fs、blkid、e2label、findfs、tune2fs、dumpe2fs、fsck、e2fsck、mount、swapon、swapoff、mkisofs、wodim、free、df、du、dd。 2.列出块设备:lsblk    &nbs…

    Linux干货 2016-09-01