a我考网

 找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 85|回复: 0

[综合辅导] Linux认证之将ntfs模块放入内核的方法

[复制链接]
发表于 2012-8-4 12:07:07 | 显示全部楼层 |阅读模式
Linux认证之将ntfs模块放入内核的方法
% W' D2 f' u4 t一、找到编译内核所需要的.config文件。
' A) |+ p) X" U. v' n9 w在/usr/src/linux/configs目录下有若干编译内核所用的配置。选择我们想要的配置,将它复制到/usr/src/linux目录下,改名为.config。" y' `* v( w( d3 N. M2 v4 \0 M/ Z
cp /usr/src/linux/configs/kernel-2.2.16-i686.config /usr/src/linux/.config) i' L+ l7 s8 q( j: N
二、修改.config文件,去掉不用的模块,加上自己想要的模块。) Q: J- J% j1 S  H# _( |. w& ~* e
打开.config,有许多XXXX=m的项,这些都是要被编译为模块的项,因为我们不希望编译这些模块,所以要把XXXX=m的项统统去掉。然后再加上我们想要的模块,将#
2 o2 J( \# B# N& \  P* XCONFIG_NTFS_FS is not set 改为CONFIG_NTFS_FS=m 当然,可以用你熟悉各种工具来做这件事。
. t3 p# S* P- q  |' m三、编译NTFS模块。) T; H9 ?! T( w0 s8 X# E6 ]
在/usr/src/linux目录下运行命令make modules来编译我们想要的NTFS模块。! Y# t+ r* v" `# T
四、安装NTFS模块。
4 z* Q& i0 |, C- [) P7 D编译后得到的ntfs.o在/usr/src/linux/fs/ntfs目录下,手动将它复制到正确的目录下。& |( i' ]+ C2 r
cp /usr/src/linux/fs/ntfs/ntfs.o /lib/modules/2.2.16-22/fs/
  L' a0 [$ S9 L, ]1 O+ r这里的2.2.16-22是你的linux核心的版本号,请注意。
/ z7 x, ?( x% B* M5 u注意:千万不能运行命令make) b, p2 e) B# a
modules_install,否则将带来严重的后果,它会删除你系统中的所有模块,只安装刚刚编译的模块(ntfs.o)。
5 a' x4 b9 d4 _2 v7 S五、载入NTFS模块。; |; J7 ^3 u1 V* C
运行命令depmod;modprobe ntfs 试着访问你的NTFS文件系统吧,祝你成功!- E( _6 q8 d+ o
有些模块依赖于你的系统内核,所以不适用本文所提供的方法。还有些模块和其他模块有依赖关系。如果你不熟悉这些依赖关系的话,建议你在第二步去掉不用的模块选项后,通过make
* z" a( A  _( `! |menuconfig来加上自己想要的模块。
8 I6 Y- j0 y' F; \2 B: F6 i& u自己编译NTFS分区的模块(以2.4.18-3为例)5 `: A- A) E- W$ C
1.用uname -a [查看一下自己用的内核版本。]& u- V0 b9 _" f) ]
2.用rpm -q kernel-source-2.4.18-3 [查看是否装了内核源程序。]( ]  t' A/ q0 u5 I( b( H7 O
3.假定已经安装好了源程序,到/usr/src/linux-2.4.18-3/目录。
$ V6 g" }4 \! Q$ O9 `' B1 ?1 K' B6 `4.用make mrproper [清除多余的无用模块。]
8 s" @( |5 |0 D- m0 L: Z% q5.用rpm -q –pf ‘%{ARCH}\n’ kernel-2.4.18-3
8 w4 H3 w4 e) K3 c[看一下用configs下的哪个ixxx.config文件。(本机为i686)]. N6 A9 l; B6 F. P
6.用自己熟悉的编辑器(vi)打开/usr/src/linux-2.4.18-3/configs/kernel-
5 s/ \* f( K/ T2.4.18-3.i686.config查NTFS,将这两行改为config NTFS fs=m和config NTFS rw=m保存。
* {# N& Y: H- Y* Z6 v7.用make config 到NTFS时选m,其余的默认回车。[有的文章用make menuconfig或make
6 e9 Z% R+ p8 Q, h: e* [: Xxconfig,但我在Redhat7.3下没有这两个?]* L/ |3 W4 t" Z  o6 M5 t( H- W
8.用自己熟悉的编辑器(vi)打开/usr/src/linux-2.4.18-3/Makefile文件,将EXTRAVERSION =
2 O8 G! R8 w4 r$ y
, d( h7 j, P" _* D* E2 m
* u/ Y( o( s( A/ T3 T+ O8 K-Xcustom改成EXTRAVERSION = -X保存退出。(X为数字)" I1 C/ r1 f) W7 Q) p
9.用make dep
9 d  a' W2 x$ R8 ~: K2 n- M10.用make modules SUBDIRS=fs/ntfs(这时ntfs.o已经产生)
: k9 s6 g8 P& K; [11.用mkdir /lib/modules/2.4.18-3/kernel/fs/ntfs; Q- ~! a, H. u  U& f+ u5 \
12.用cp /usr/src/linux-2.4.18-3/fs/ntfs/ntfs.o 到刚才建立的目录。
7 N- {0 h; g2 t0 B+ o& v2 O$ A13.用chmod 644 /lib/modules/2.4.18-3/kernel/fs/ntfs/ntfs.o8 X# M3 `% l" F3 m# L
14.用depmod -a! c# L+ ^$ @$ P0 x2 t& p; A" s7 @" N$ Z
15.用vi /etc/fstab加入以下内容
4 O/ [6 A% r$ U, H" P/dev/hdxy___/mnt/XXX___ntfs___noauto,user,uid=z,gid=z,umask=007,iocharset=cp936___0_0保存退出。[hdxy,x为IDE号a.b.c.d,y为分区号.XXX为自己起的名字.z为用户和组的ID号]
+ _; U3 P; g8 `/ W8 L16.用时用mount /mnt/XXX退出用umount /mnt/XXX6 s+ S( `' f% l1 _; O& n: N
全自动加载# F& N, K( I) k. N
如果是经常进行文件交换,希望一进入Linux就加载特定的分区而且又想把这一分区挂接到固定的目录的话,
) O  I, n, b  p% _你可以使用这种方式。# f, S1 [4 J  n( m; K
用任一文本编辑器打开/ect目录下的fstab文件,把
  O) `" Q6 `/ i1 \1 K6 O' G4 Q/dev/hda5 /mnt/win-c ntfs umask=0000 defaults,iocharset=cp936 0 0& Z, J- {9 t7 Z9 P- \# ~* t+ ^8 Y. ~
/dev/hda3 /mnt/win-c vfat defaults,codepage=936,iocharset=gb2312 0 02 {; N  K8 I; V* L: q
添加到最后一行后面,保存后退出。以后每次重新启动系统时都会自动加载。说明:“vfat”表示加载的是FAT32文件系统,如果是“msdos”则是FAT16文件系统,“ntfs”是NT的NTFS文件系统。要是不加umask=0000,就只有root可访问ntfs的盘了。1 B$ M5 t5 f% g
mount -o iocharset=cp936 -t ntfs /dev/hdaX /mnt
3 H% Z; f# C  V; |支持中文
, T% f, t/ a9 [6 ~! Gmount用法(sakulagi)9 K+ \! ^0 w0 e5 y
fat32的分区 mount -o codepage=936,iocharset=cp936 /dev/hda7 /mnt/cdrom
( x2 f7 H( H1 q4 T# L9 q$ |3 yntfs的分区 mount -o iocharset=cp936 /dev/hda7 /mnt/cdrom
* g, H+ t& R% j# z' E, C- Jiso文件 mount -o loop /abc.iso /mnt/cdrom
! o0 ]- J" ?! Z. I8 e0 n, V软盘 mount /dev/fd0 /mnt/floppy
0 ^+ e3 G4 n8 }, k1 M, M) y* N4 VUSB闪存 mount /dev/sda1 /mnt/cdrom' [# c$ M' Q5 y! R
所有/etc/fstab内容 mount -a2 l3 q+ D0 t- J' {% C2 O0 A
可以指定文件格式“-t 格式”, 格式可以为vfat, ext2, ext3等。
- s) ~! p. T0 ~安装与卸载有点不一样, 比如要 安装的文件为 ntfs-1.0.2.rpm
6 j' ~  v: e# T/ N( o8 j那么卸载的时候是:
! H; k1 e: c! p% Srpm -e ntfs (说明:由于这一部分做的时候比较的简单,当时并没有做很详细的记录,大致就是安装了一个软件,改了一些文件而已,以上的这部分仅供参考而已,当你做完了这些你就可以成功的挂载ntfs但是你会发现一个问题,无法对ntfs的写入)
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-5-18 01:29 , Processed in 0.341643 second(s), 21 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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