编译Linux内核4.6.3使其支持NTFS文件系统

编译安装4.6.3内核,并使其支持NTFS文件系统

 

在编译内核之前的虚拟机环境搭建,虚拟机硬盘可用空间不得小于7G,内存需大大于2.5G,

根据个人电脑配置适当调整,可提高效率。

 

一. 下载内核源码包

https://www.kernel.org/

 

 

二.查看虚拟机是否具备编译条件

1)

[[email protected] /]# rpm -q make
make-3.82-21.el7.x86_64
[[email protected] /]# rpm -q gcc
gcc-4.8.5-4.el7.x86_64
[[email protected] /]# rpm -q gcc-c++
gcc-c++-4.8.5-4.el7.x86_64
[[email protected] /]# rpm -q ncurses-devel

未安装软件包 ncurses-devel

 

2)通过查看发现ncurses-devel软件包未安装

安装ncurses-devel软件包

[[email protected] /]#yum - y install ncurses-devel

 

yum命令参数的含义

-y 无交互式,默认yes

 

 

三.上传内核安装包并解压

将下载好的内核安装包上传至虚拟机

1)通过rz命令上传

 

2)可以看出压缩包后缀是xz格式的,所以我们得使用xz工具来解压

 

[[email protected] /]#xz -d linux-4.6.3.tar.xz

 

xz命令参数的含义

-d 解压缩

-k 保留原文件,不加参数的情况解压成功后,原文件会消失

 

3)再次查看,发现还需要再次解压.tar格式的压缩包

 

[[email protected] /]#tar xvf linux-4.6.3.tar

解压过程可能会稍微久点,不过无需着急

 

tar命令参数的含义

-x 解压

-v 显示详细信息,如不想显示上图的详细信息,可不加此参数

-f 表示使用归档

 

4)查看解压后的内核安装包

[[email protected] /]#du -sh linux-4.6.3

 

du命令参数的含义

-s仅显示总大小

-h 以K,M,G为单位,提高信息可读性

 

四.清理缓存数据

在清理缓存数据之前需执行sync更新超级块信息,避免数据丢失

[[email protected] /]# free -m 
              total        used        free      shared  buff/cache   available
Mem:           3937         637        1237          10        2062        2959
Swap:          2047           0        2047
[[email protected] /]# cat /proc/sys/vm/drop_caches 
0
[[email protected] /]# echo 3 >/proc/sys/vm/drop_caches 
[[email protected] /]# cat /proc/sys/vm/drop_caches 
3
[[email protected] /]# free -m
              total        used        free      shared  buff/cache   available
Mem:           3937         593        3146          10         197        3127

Swap:          2047           0        2047

 

#reboot和init6重启也可以清理缓存,根据个人喜好选择

 

五.配置内核编译参数

1)生成内核参数配置.config文件,使其支持NTFS文件系统

[[email protected] /]# cd /linux-4.6.3/
[[email protected] linux-4.6.3]# make menuconfig

          //图形化界面配置内核参数

 

 

在这注意分辨率大小,分辨率大小不对,有可能会启动失败

 

 

可使用“/”查看NTFS参数位置

 

移动到File systems选项后,回车下一步

 

移动到DOS/FAT/NT Filesystems选项后,回车下一步

 

移动到NTFS file system support选项后,按空格会出现NTFS write suppport选项,按空格键使其前面方框显示*号,接着保存(Save)生成配置文件后,退出(Exit)即可。

#tab键切换

 

 

2)验证是否支持NTFS文件系统

[[email protected] linux-4.6.3]# vim .config

可使用“:/NTFS”查找NTFS关键字

 

 

3)同上步骤查看系统自带的内核能否支持NTFS文件系统

[[email protected] linux-4.6.3]# vim /boot/config-3.10.0-327.el7.x86_64

 

上图可看出NTFS这行并未设置

 

4)使其系统自带的内核支持NTFS文件系统(本步骤不做详细解释)

[[email protected] linux-4.6.3]# cp /boot/config-3.10.0-327.el7.x86_64 .config 
cp:是否覆盖".config"? y
[[email protected] linux-4.6.3]# make menuconfig
[[email protected] linux-4.6.3]# vim .config

 

由上图可以看出,系统自带的内核已经支持NTFS文件系统

 

六.编译内核

1)在编译内核之前安装openssl-devel开发包

[[email protected] linux-4.6.3]# yum -y install openssl-devel

2)开始编译内核

[[email protected] linux-4.6.3]# make bzImage -j 4 && make modules -j 4  &&  make modules_install  && make install

上述多条命令的含义

make bzImage -j 4   //生成内核

make modules -j 4   //生成新内核的驱动模块

make modules_install  //安装编译好的内核与模块

make install   //安装新编译的系统内核

-j 4  //采用4线程安装,默认单线程

&&  //代表连接符,当上条命令执行完成接着执行

 

3)由下图可以看出目前已经编译成功

 

4)接着,重启查看, 选择4.6.3,回车进入系统

 

5)查看内核版本

[[email protected] ~]# uname -r

 

 

由上图可以看出,内核4.6.3编译安装成功!


内核默认启动顺序的修改可参照:http://hugyou.blog.51cto.com/11674506/1793094


^_^o~ 努力!

^_^o~ 努力!

^_^o~ 努力!

时间: 2024-08-29 00:48:04

编译Linux内核4.6.3使其支持NTFS文件系统的相关文章

Vs2012在Linux开发中的应用(8): 编译Linux内核

快乐虾 http://blog.csdn.net/lights_joy/ 欢迎转载,但请保留作者信息 在有了UBOOT的编译基础之后,编译Linux内核就简单多了,所不同的只有两个地方,一个是错误信息的转换,另一个是内核需要进行参数配置. 1.1    错误信息转换 UBOOT的错误信息中,文件名是不带路径的,而内核的错误信息中,文件名是带相对路径的,因此我们对转换脚本略做修改: #user code begin classCUBootMake: error=False defBuild(sel

如何解决编译linux内核(解决声卡问题),遭遇fatal error: linux/limits.h: 没有那个文件或目录

最近帮一位上海的朋友搞一块小板,在ubuntu15.04 vivid上已经加载了对应了.ko驱动包 但关键是系统根本就枚举不到该声卡ALC5640,试了OpenSUSE也是一样的结果,看来是内核漏加载了什么模块. 所以准备重新编译Linux内核3.19.3,结果运行: make?menuconfig 得到错误提示: ? ? ? ? local_lim.h:38:26: fatal error: linux/limits.h ? 应该是在linux目录下找不到limits.h文件.有诸多兄弟碰到过

学习重新编译Linux内核

一.实验目的学习重新编译Linux内核,理解.掌握Linux内核和发行版本的区别. 二.实验内容在Linux操作系统环境下重新编译内核.实验主要内容:A. 查找并且下载一份内核源代码,本实验使用最新的Linux内核2.6.36.B. 配置内核.C. 编译内核和模块.D. 配置启动文件.本次实验环境是Linux2.6.35内核的环境下,下载并重新编译内核源代码(2.6.36):然后,配置GNU的启动引导工具grub,成功运行编译成功的内核. 三.主要仪器设备(必填)Linux环境:utuntu10

Ubuntu下载编译Linux内核。

1.安装git工具 2.到官网下载linux内核https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git,这个地址不是很好用 在用下面这个 git clone git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git http://vger.kernel.org/vger-lists.html#linux-kernel这个是讨论Linux驱动的邮件组 3.

自定义配置编译linux内核

1 编译linux内核原因一般情况下,我们是不需要重新去编译linux内核的,但如果你发现你需要修改内核的某个部分或者说你需要的某个模块并没有编译进内核,那里你可以通过重新编译内核来满足你的需求,比如当我们需要用bcache时,但默认bcache是没有编译进内核的,我们可以通过修改编译配置文件,将bcache编译进内核,以下的编译操作均是在Centos7.3平台上进行的演示. 2 编译前准备工作2.1 编译用户身份选择官方是强调编译linux内核是强烈不建议以root身份来进行编译的,因为这样有

1-18 编译安装内核支持ntfs文件系统

大纲: 源码编译Linux内核 使用Linux内核模块 实战:编译一个NTFS内核模块,实现Linux挂载NTFS文件系统并实现读写功能 =================================================================== 一.源码编译Linux内核 通常我们想对内核进行升级时,可通过下载源码包,编译内核的方式,对内核进行升级 源码包的下载地址在:www.kernel.org 我们可以直接在linux系统中直接下载,如下命令: wget http

实例:编译Linux内核3.18.25概要

前提: 将CentOS 7上3.10.0-229.el7.x86_64重新编译一个3.18.25内核 自编译安装,按照自己的硬件平台架构编译,能最适合硬件主机的性能 且按照需要编译模块,可以选择自己需要的包编译 [[email protected] tmp]# uname  -a 一.编译前准备工作 1.宿主机系统 本次编译宿主机:VMware Workstation Pro12 上的CentOS 7.0操作系统 2.开发环境(开发工具,开发库),头文件 [[email protected] y

编译Linux内核

这篇文章的目的是帮助理解如何编译一版Linux内核.熟悉Kconfig KBuild工具.无论是自己修改自己正在使用linux内核还是做嵌入式的交叉编译,都会有一些帮助. 内核编译体系 如果大家接触过一些Linux下的开源软件,就会知道它们使用 autotools 来进行配置及编译.通过执行./config --> make --> make install 命令来编译源代码.Linux内核的编译也需要先配置再编译.配置使用 Kconfig , 编译使用 KBuild , 这两个工具支撑起了L

CentOs下编译linux内核

● centos 7编译高版本内核: linux-3.13.10 过程相对简单: 1. 安装依赖 yum install ncurses-devel 2. 将linux内核解压缩到/usr.src/ 3. make 4. make modules_install 5. make install 6. 重起