a我考网

 找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 133|回复: 1

[考试试题] 红帽认证:Linux操作系统的NTFS和内核的解析

[复制链接]
发表于 2012-8-4 12:10:41 | 显示全部楼层 |阅读模式
当你安装完Linux系统,并且已经启动,恭喜你!如果你的硬盘上还安装了WinNT/2000系统,你试图去访问另一个NTFS分区时却遇到了麻烦。因为你所用的Linux系统没有已编译的支持NTFS文件系统的模块。怎么办?也许你会运行make menuconfig,重新定制你需要的所有模块,接着运行make modeules;make modeules_install来安装。这样不仅繁琐、费时,还可能会出现问题。或者因为编译内核对你有些棘手,太多的选择让你手足无措,你根本没有太好的方法。本文给你提供一个简单的方法,你可以轻松地去编译你所需要的支持NTFS系统的模块(ntfs.o)。以此为例,但愿对你编译其他模块有所帮助。   写此文时我用的系统是Red Hat Linux release 7.0 (Guinness) Kernel 2.2.16-22 on an i686。从一个新安装的系统开始,我们一起去编译一个自己想要的支持NTFS文件系统模块。7 @! S9 k- q6 V
  一、找到编译内核所需要的.config文件
, i6 @. }9 \, Q  在/usr/src/linux/configs目录下有若干编译内核所用的配置。选择我们想要的配置,将它复制到/usr/src/linux目录下,改名为.config。3 m' |* k4 j4 L7 A2 o6 E

8 ?5 N' Z7 N6 L8 D4 t6 | , |+ m% i7 y9 X# X
  二、修改.config文件,去掉不用的模块,加上自己想要的模块- m/ Z. v, ^4 W- Y: l# w4 a4 K

! A+ U# x# ]: ^& G' t  打开.config,有许多XXXX=m的项,这些都是要被编译为模块的项,因为我们不希望编译这些模块,所以要把XXXX=m的项统统去掉。然后再加上我们想要的模块,将# CONFIG_NTFS_FS is not set 改为CONFIG_NTFS_FS=m 当然,可以用你熟悉各种工具来做这件事。
回复

使用道具 举报

 楼主| 发表于 2012-8-4 12:10:42 | 显示全部楼层

红帽认证:Linux操作系统的NTFS和内核的解析

</p>  三、编译NTFS模块4 U1 L: w. _& h: ~
在/usr/src/linux目录下运行命令make modules来编译我们想要的NTFS模块。
2 N7 Y7 a# X( G, A( Y& L" P$ I  P( d3 B  四、安装NTFS模块
) A0 D1 `% L  O# Q  编译后得到的ntfs.o在/usr/src/linux/fs/ntfs目录下,手动将它复制到正确的目录下。2 {6 ]1 P' o0 r0 h8 B% s/ M* l4 {
! |  `2 f2 g  ?  f' Z

( F$ u! _( T$ Y5 W  注意:千万不能运行命令make modules_install,否则将带来严重的后果,它会删除你系统中的所有模块,只安装刚刚编译的模块(ntfs.o)。
/ u; _; j5 ]( }. z, p; ^  五、载入NTFS模块# @; i; T9 K: ^+ q. m
  运行命令depmod;modprobe ntfs 试着访问你的NTFS文件系统吧,祝你成功!* h# t; K) U- t2 f. G
  有些模块依赖于你的系统内核,所以不适用本文所提供的方法。还有些模块和其他模块有依赖关系。如果你不熟悉这些依赖关系的话,建议你在第二步去掉不用的模块选项后,通过make menuconfig来加上自己想要的模块。! P1 ?) m. p# i; h: D' g* p# {
  我用此方法用了三分钟编译了支持NTFS文件系统的模块,你呢?
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|Woexam.Com ( 湘ICP备18023104号 )

GMT+8, 2024-5-18 15:25 , Processed in 2.003091 second(s), 23 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表