Linux內核升級並實現ntfs讀寫

(本文記錄了kernel-2.4.20-8 下實現了Linux虛擬機對正式主機ntfs硬盤的掛載功能,並實現寫入功能)    

以下資料來自Internet 浩月整理
 

Linux掛載NTFS分區方法

 說明:以下所說的軟件包如果連接失效可以直接將名字在Google中搜索就可以搜到。
目前網上有很多介紹在linux下mount windows
NTFS的文章,說的都是重新編譯內核,加入對NTFS分區的支持.但是對於一個剛剛接觸linux的新手來說,又是何其痛苦的一件事,我給大家介紹一種簡單的方法.

1.首先確定你的linux kernel版本是什麼(Redhat9.0默認的kernel版本是2.4.20-8 )

#> rpm -qa|grep kernel

會顯示類式的如下信息:

kernel-pcmcia-cs-3.1.31-13
kernel-2.4.20-8

這樣,你就看到了你的kernel版本是2.4.20-8

2.然後打開下面這個網址:
http://rpm.pbone.net/index.php3/stat/16/limit/1/dl/40/idka/1705
找到和你的kernel版本對應的kernel-ntfs RPM包,下載.

我用的是Redhat9.0, Kernel版本是2.4.20-8,所以我找的包是kernel-ntfs-2.4.20-20.8.i686.rpm
,下載地址:ftp://ftp.uni-bayreuth.de/pub/linux/drivers/linux-ntfs/kernel-ntfs-2.4.20-20.8.i686.rpm,下載.


3.安裝:

#> rpm -ivh kernel-ntfs-2.4.20-20.8.i686.rpm

4.如果沒有什麼錯誤,你的系統應該已經支持NTFS了,如果報錯,肯定是你找的包與你的Kernel版本不匹配.重新找找下載.

5.mount你的NTFS分區,怎樣mount,不用我說了吧.呵呵
一個rpm下去,rh8掛上ntfs

我的方法(原裝rh8,未升級或編譯內核):
1. 上google.com搜索並下載 kernel-ntfs-2.4.18-14.i686.rpm
2. rpm -ivh kernel-ntfs-2.4.18-14.i686.rpm
3. mkdir /mnt/c
4. mount -t ntfs /dev/hda1 /mnt/c


在下載版本時是需要特別注意的,版本不對是絕對不能mount成功的請先用uname -a 看看你的內核版本以及cpu內核,在針對應的下載rpm

將ntfs模塊放入內核方法  
     
      一、找到編譯內核所需要的.config文件。
      在/usr/src/linux/configs目錄下有若干編譯內核所用的配置。選擇我們想要的配置,將它複製到/usr/src/linux目錄下,改名爲.config。
      cp /usr/src/linux/configs/kernel-2.2.16-i686.config /usr/src/linux/.config


      二、修改.config文件,去掉不用的模塊,加上自己想要的模塊。
      打開.config,有許多XXXX=m的項,這些都是要被編譯爲模塊的項,因爲我們不希望編譯這些模塊,所以要把XXXX=m的項統統去掉。然後再加上我們想要的模塊,將#
      CONFIG_NTFS_FS is not set 改爲CONFIG_NTFS_FS=m 當然,可以用你熟悉各種工具來做這件事。


      三、編譯NTFS模塊。
      在/usr/src/linux目錄下運行命令make modules來編譯我們想要的NTFS模塊。


      四、安裝NTFS模塊。
      編譯後得到的ntfs.o在/usr/src/linux/fs/ntfs目錄下,手動將它複製到正確的目錄下。
      cp /usr/src/linux/fs/ntfs/ntfs.o /lib/modules/2.2.16-22/fs/


      這裏的2.2.16-22是你的linux核心的版本號,請注意。
      注意:千萬不能運行命令make
      modules_install,否則將帶來嚴重的後果,它會刪除你係統中的所有模塊,只安裝剛剛編譯的模塊(ntfs.o)。


      五、載入NTFS模塊.
      運行命令depmod;modprobe ntfs 試着訪問你的NTFS文件系統吧,祝你成功!


      有些模塊依賴於你的系統內核,所以不適用本文所提供的方法。還有些模塊和其他模塊有依賴關係。如果你不熟悉這些依賴關係的話,建議你在第二步去掉不用的模塊選項後,通過make
      menuconfig來加上自己想要的模塊。
      自己編譯NTFS分區的模塊(以2.4.18-3爲例)
      1.用uname -a [查看一下自己用的內核版本.]
      2.用rpm -q kernel-source-2.4.18-3 [查看是否裝了內核源程序.]
      3.假定已經安裝好了源程序,到/usr/src/linux-2.4.18-3/目錄.
      4.用make mrproper [清除多餘的無用模塊.]
      5.用rpm -q –pf '%{ARCH}\n' kernel-2.4.18-3
      [看一下用configs下的哪個ixxx.config文件.(本機爲i686)]
      6.用自己熟悉的編輯器(vi)打開/usr/src/linux-2.4.18-3/configs/kernel-
      2.4.18-3.i686.config查NTFS,將這兩行改爲config NTFS fs=m和config NTFS rw=m保存.
      7.用make config 到NTFS時選m,其餘的默認回車.[有的文章用make menuconfig或make
      xconfig,但我在Redhat7.3下沒有這兩個?]
      8.用自己熟悉的編輯器(vi)打開/usr/src/linux-2.4.18-3/Makefile文件,將EXTRAVERSION =
      -Xcustom改成EXTRAVERSION = -X保存退出.(X爲數字)
      9.用make dep
      10.用make modules SUBDIRS=fs/ntfs(這時ntfs.o已經產生)
      11.用mkdir /lib/modules/2.4.18-3/kernel/fs/ntfs
      12.用cp /usr/src/linux-2.4.18-3/fs/ntfs/ntfs.o 到剛纔建立的目錄.
      13.用chmod 644 /lib/modules/2.4.18-3/kernel/fs/ntfs/ntfs.o
      14.用depmod -a
      15.用vi /etc/fstab加入以下內容
      /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號]

      16.用時用mount /mnt/XXX退出用umount /mnt/XXX

      全自動加載 
      如果是經常進行文件交換,希望一進入Linux就加載特定的分區而且又想把這一分區掛接到固定的目錄的話,

      你可以使用這種方式。 
      用任一文本編輯器打開/ect目錄下的fstab文件,把
      /dev/hda5 /mnt/win-c ntfs umask=0000 defaults,iocharset=cp936 0 0
      /dev/hda3 /mnt/win-c vfat defaults,codepage=936,iocharset=gb2312 0 0

      添加到最後一行後面,保存後退出。以後每次重新啓動系統時都會自動加載。說明:“vfat”表示加載的是FAT32文件系統,如果是“msdos”則是FAT16文件系統,“ntfs”是NT的NTFS文件系統。要是不加umask=0000,就只有root可訪問ntfs的盤了。
mount -o iocharset=cp936 -t ntfs /dev/hdaX /mnt
      支持中文
     mount用法(sakulagi)
      fat32的分區 mount -o codepage=936,iocharset=cp936 /dev/hda7 /mnt/cdrom
      ntfs的分區 mount -o iocharset=cp936 /dev/hda7 /mnt/cdrom
      iso文件 mount -o loop /abc.iso /mnt/cdrom
      軟盤 mount /dev/fd0 /mnt/floppy
      USB閃存 mount /dev/sda1 /mnt/cdrom
      所有/etc/fstab內容 mount -a
      可以指定文件格式"-t 格式", 格式可以爲vfat, ext2, ext3等.

 


安裝與卸載有點不一樣, 比如要 安裝的文件爲 ntfs-1.0.2.rpm
那麼卸載的時候是:

rpm -e ntfs   (說明:由於這一部分做的時候比較的簡單,當時並沒有做很詳細的記錄,大致就是安裝了一個軟件,改了一些文件而已,以上的這部分僅供參考而已,當你做完了這些你就可以成功的掛載ntfs但是你會發現一個問題,無法對ntfs的寫入)

 


  升級linux2.4.20內核到2.6.18 
本文記錄了我在winxp下的vmware5.5.3虛擬機中升級linux2.4.20內核到2.6.18的過程。

主要參考了以下兩篇文章
1、Linux內核升級全過程 手把手教你一次成功(2.4.20-8到2.6.18)
作者:飄揚,
首發地址:http://www.piaoyang.org/blog

飄揚的這篇文章寫的很詳細,只是個別地方還有瑕疵,

本文主要就是以該文爲藍本,修正了原文中的一些錯誤,

並加入了編譯圖標的詳細說明。
2、我自己以前寫的內核編譯過程筆記。

一、安裝linux系統並登陸
1、安裝linux redhat 9,最小安裝,grub啓動,具體步驟略。
2、啓動Linux系統,並用root用戶登錄,進入終端模式下。
以後未加說明時下面帶#號的行都是要輸入的命令行,
且本文提到的所有命令行都在終端裏輸入。
3、查看內核版本
# uname -a
如果屏幕顯示的是2.6.x,說明你的已經是2.6的內核,
也用不着看下文了,該幹什麼幹什麼去吧!
~~~如果顯示的是2.4.x,那恭喜你,闖關通過,趕快進行下一步。

2.1 安裝開發工具包,主要包括
gcc、make、ncurse,依次執行如下命令
#rpm -ivh binutils-2.13.90.0.18-9.i386.rpm
#rpm -ivh cpp-3.2.2-5.i386.rpm
#rpm -ivh glibc-kernheaders-2.4-8.10.i386.rpm
#rpm -ivh glibc-devel-2.3.2-11.9.i386.rpm
#rpm -ivh gcc-3.2.2-5.i386.rpm
#rpm -ivh ncurses-devel-5.3-4.i386.rpm
最後一個ncurse開發庫如果不裝,在編譯module-init-tool時會報錯。

2.2、下載2.6內核源碼和升級工具,包括

(1)2.6內核源碼
下載地址:http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.18.tar.bz2
(2)下載module-init-tools-3.2.tar.bz2
http://www.kernel.org/pub/linux/utils/kernel/module-init-tools/module-init-tools-3.2.tar.bz2
(3)下載mkinitrd-4.1.18-2.i386.rpm
http://ayo.freshrpms.net/fedora/linux/3/i386/RPMS.core/mkinitrd-4.1.18-2.i386.rpm
(4)下載lvm2-2.00.25-1.01.i386.rpm
http://ayo.freshrpms.net/fedora/linux/3/i386/RPMS.core/lvm2-2.00.25-1.01.i386.rpm
(5)下載device-mapper-1.00.19-2.i386.rpm
http://ayo.freshrpms.net/fedora/linux/3/i386/RPMS.core/device-mapper-1.00.19-2.i386.rpm

三、配置內核
3.1 將下載好的內核源碼包和4個升級工具都拷貝到/usr/src文件夾下。步驟略。
3.2 開始解壓新內核,具體操作步驟:
(1)#cd /usr/src 
 (進入到/usr/src目錄下)
(2)#rm –rf linux 
 (刪除linux文件夾。值得一提的是,如果內核先前從未編譯過,則沒有這個文件夾,此命令行可略過)
(3)#tar jvxf linux-2.6.18.tar.bz2  (解壓新內核)
(4)#ln -s linux-2.6.18 linux  (重新生成linux文件夾)
3.3 安裝module-init-tools工具
在/usr/src目錄下,依次執行下列命令:
# tar jvxf module-init-tools-3.2.tar.bz2  (解壓module-init-tools)
# cd module-init-tools-3.2  (由/usr/src目錄進入module-init-tools目錄下)
#./configure --prefix=/     (這裏是指定安裝目錄爲根目錄/)
# make moveold
# make all install
#./generate-modprobe.conf /etc/modprobe.conf 
備註:這一步的輸出文件名modprobe.conf一定要寫對。
我第一次安裝是用tab鍵的自動完成功能寫成了./generate-modprobe.conf /etc/modules.conf,
結果掛了... 
3.4、安裝另外三個升級工具
回到/usr/src目錄下安裝另外三個升級工具,依次執行如下命令:
# cd /usr/src   (回到/usr/src目錄下)
# rpm -ivh --nodeps mkinitrd-4.1.18-2.i386.rpm  (注意,這裏一定要加入--nodeps參數,下同)
# rpm -ivh --nodeps lvm2-2.00.25-1.01.i386.rpm
# rpm -ivh --nodeps device-mapper-1.00.19-2.i386.rpm
如果不更新以上幾個升級包,在後面編譯內核時會提示以下錯誤:
      mkinitrd failed
      make[1]: *** [install] Error 1
      make: *** [install] Error 2
特別提示:
在 make install 時 提示 No Module /bin/true found for kernel 2.6.18
      跟上面博客中常見問題1提到的還不太一樣,自己又在網上搜了一下,原因是一樣的就是工具沒有成功升級。
#rpm -ivh --nodeps mkinitrd-4.1.18-2.i386.rpm 
#rpm -Uvh --nodeps mkinitrd-4.1.18-2.i386.rpm    ------據說只執行上面一句不能完成安裝,還要升級一下。
#rpm -ivh --nodeps lvm2-2.00.25-1.01.i386.rpm
#rpm -Uvh --nodeps lvm2-2.00.25-1.01.i386.rpm   ------據說只執行上面一句不能完成安裝,還要升級一下。
這樣,再次make install就ok了。
     
3.5、配置內核選項。有點繁瑣,~~希望一次成功哦~~。
# cd linux-2.6.18  (進入到/usr/src/linux-2.6.18目錄下)
# make mrproper  (該命令可確保源代碼目錄下沒有不正確的.o文件)
# make menuconfig (配置內核各選項,具體說明見下)
3.6 內核選項說明
執行make menuconfig會出現一個圖形界面,列出了所有的內核配置選項,
有的選項下還有子選項,你可以用方向鍵來選擇,用Y鍵來確定。
經過多次試驗,大多數選項默認就行,以下幾個選項必須選擇
(請認真核對下面每一個選項,否則編譯很有可能前功盡棄):
(1)Loadable Module support選項中,選上“Module unloading”
   和“Automatic kernel module loading”這兩項;
(2)Device Drivers--->Block Devices中選上“Loopback device support”;
   Device Drivers--->Multi-device support(RAID and LVM)處要選上“device mapper  support”;
   Device Drivers--->Graphics support,一定要選上“ Support for frame buffer devices”;
   Device Drivers  --->USB support  --->選上“USB Mass Storage support”
   (如果是在實環境中,想要更多USB支持,就全選吧。我的是在虛擬機中,用不着了)
   Device Drivers  --->Network device support
     --->Ethernet (10 or 100Mbit) 
     ---><*>  AMD PCnet32 PCI support;
(3)File system選項中,以下9個選項是關於ext2和ext3文件系統配置,全部選上
           Second extended fs support
           Ext2 extended attributes
           Ext2 POSIX Access Control Lists
           Ext2 Security Labels
           Ext3 journalling file system support
           Ext3 extended attributes
           Ext3 POSIX Access Control Lists
           Ext3 Security Labels
           JBB (ext3) debugging support
(4)ile system--->DOS/FAT/NT Filesystems
             --->“NTFS file system support”;也要選上
注意:
       ext2和ext3文件系統配置很重要,也是必需的,
       如果不把對Ext3、Ext2文件的支持直接編譯進內核,
       在你reboot時機器就會當掉,出現如下錯誤信息:
       kernel panic : no init found ,try passing init = option to kernel.....
或者是:
       VFS:Cannot open root device "hdxy" or unknow-block(0,0)
       Please append a correct "root=" boot option
       kernel panic:VFS:Unable to mount root fs on unknown-block(0,0)
或者是:
       mount: error 19 mounting ext3
       pivotroot: pivot_root(/sysroot,/sysroot/initrd) failed: 2
       umount /initrd/proc fail: 2
       Freeing unused kernel memory: 244k freed
       Kernel panic – not syncing: No init found. Try passing init = option to kernel
(某人的機器就是在重啓之後出現第三種錯誤,進不去系統,鬱悶死,只好重裝了~~~
如果依照本文做完所有步驟,當你重啓Linux系統後,若不幸進不去2.6.18內核,
你會發現你的出錯信息就是上面三種了~~~哈!)
(5)如果你在vmware下編譯內核,硬盤用的是scsi的,以下三個選項必選:
   Device Drivers ---><*>SCSI device support  (此項不選的話,下面兩項就選擇不上)
   Device Drivers ---><*>SCSI device support ---><*>SCSI disk support
   Device Drivers---><*>SCSI device support--->SCSI low-level drivers ---><*>; BusLogic SCSI support
                
3.7選項配置圖標的說明:
(1)選項的配置方法:
  按Y,表示以build-in的方式包含,也就是把選項集成到內核裏.
  對應的圖標爲[*]或<*>,
  按N,表示不包含。對應的圖標爲[ ]或< >
  按M,表示以模塊的形式包含,對應的圖標爲<M>. 注意不是所有的選項都可以用模塊形式加載的

(2)選項的狀態圖標 
 每個選項設完之後會顯示一個狀態圖標,只能是下面5種之一
 [*] - built-in表示這個選項被集成在內核裏了
 [ ] - excluded 表示這個選項被內核排除了
 <M> - module 表示這個選項以模塊的形式放在內核裏,
  用戶用到這個選項的時候要執行insmod命令.
  要注意不是所有的選項都可以以模塊的形式加載的。
  所以當你按了m鍵,圖標仍然是[*]而不是<M>時,就要
  明白這個選項只能要麼集成在內核裏,要麼被內核排除。
 < > - module capable,表示這個選項雖然被排除了,但
  可以以模塊的形式被重新加載,比如,一個圖標爲<M>的
  選項,按N鍵以後狀態就會變成< >.
 <*> - 這個圖標幫助沒寫,當實際上會出現,比如,按某個選項狀態爲<M>
    或者< >時,按Y鍵,圖標就會變成這個,意思和[*] 一樣,把可以用模塊
    加載的選項變成build-in方式加載。
   
(3)歸納一下就是: 括號裏如果爲空白,則該選項未被加載,想使用該選項時必須重新編譯內核;
   如果括號裏是*,是以build-in的方式加載;
   如果中間是m(此時只能是尖括號),就是以模塊的形式動態加載.想使用時用insmod載入。不必重新編譯內核

四、編譯工作
OK,繁雜的配置工作完成了,至此,編譯前的準備工作都做好了!
4.1、開始編譯啦……
在/usr/src/linux-2.6.18目錄下,執行以下命令即可編譯。
# make dep  (建立編譯時所需的從屬文件。注意:如果內核從未編譯過,此步可跳過)
# make clean  (清除內核編譯的目標文件。注意:如果內核從未編譯過,此步可跳過)
# make bzImage  (注意大小寫。這一步纔是真正編譯內核,也就是編譯built-in的東西)
     這一步時間較長,我的機器是1個小時左右。
     內核編譯成功後,會在/usr/src/linux/arch/i386/boot目錄中生成一個新內核的映像文件bzImage。
     如果用 make  zImage編譯,內核很大的話,系統會提示你使用make   bzImage命令來編譯,
     所以直接用make bzImage來編譯。
# make modules  (編譯可加載模塊)
  這一步時間也不短,我的機器用了半個小時
# make modules_install  (安裝可加載模塊)
  安裝成功後,系統會在/lib/modules目錄下生成一個2.6.18子目錄,裏面存放着新內核的所有可加載模塊。
#make (這一步也要進行,不然執行下面的make install時會報錯)
#make install  (安裝新內核)
注意:
     make install的時候可能會出現如下錯誤信息:
     No module BusLogic found for kernel 2.4.12
     mkinitrd failed
此問題一般只出現在SCSI硬盤+VMWARE+REDHAT架構中,
因爲BusLogic被編譯進了內核而不是一個module的形式
(2.4內核的Buslogic模塊即使靜態編譯進內核也不行)。
解決方式是直接將BusLogic.o文件複製過去:
#cp /usr/src/linux-2.6.18/drivers/scsi/BusLogic.o  /lib/modules/2.6.18/kernel/drivers/scsi
不過別忘記,複製過後再執行一下make install。
這一步若卡住了,下面的都無法進行
五、啓動新內核
5.1、將新內核和System.map文件拷貝到/boot目錄下,依次執行以下命令:    
# cp  /usr/src/linux-2.6.18/arch/i386/boot/bzImage   /boot/vmlinuz-2.6.18    
# cp  /usr/src/linux-2.6.18/System.map   /boot/System.map-2.6.18    
# cd  /boot  (進入boot目錄)
# rm –rf  System.map  (刪除原來的連接)    
# ln –s System.map-2.6.18  System.map   (重新建立連接)    
5.2、修改Grub啓動管理器
如果沒有錯誤的話, 下面開始修改grub配置文件
在/boot目錄下,執行以下命令:
# new-kernel-pkg --mkinitrd --depmod --install 2.6.18
(這時候你的/boot下會生成一個initrd-2.4.18.img,並且你的grub.conf文件也作了相應更改,說明:這個下面說要修改爲root=/dev/hda2,我在這樣修改後並沒有成功於是我將這個grub.conf恢復到自動生成的狀態,注意了grub.conf文件修改是最好保留原來的那個引導,因爲錯誤了還可以比較容易的再次進入系統,否則失敗了要再次進到系統,要用其他的方式重寫引導,或者重裝系統了)
# df 
(查看根目錄在那個分區,下一步要用到。注意,這裏根分區不時boot的那個50M的分區,
而一般是你最大的那個分區,也就是“/”對應的物理設備名,千萬不要搞錯哦。我的爲 /dev/hda2)
# vi /grub/grub.conf 
進入grub.conf文件,找到如下信息:
default=1
timeout=10
splashimage=(hd0,0)/grub/splash.xpm.gz
title Red Hat Linux (2.6.18)
        root (hd0,0)
        kernel /vmlinuz-2.6.18 ro root= LABEL=/
        initrd /initrd-2.6.18.img
做兩處修改:
(1) 將default=1改爲default=0(不改的話也可以,只不過重啓之後會默認進入2.4內核)
(2) 將kernel行的“LABEL=/”換成根目錄所對應的設備名(上一步用df查看的就是)
此步很重要,修改錯誤將可能導致進不去系統,我把我修改後的grub.conf文件列出來,不明之處,可以對照修改:
default=0
timeout=10
splashimage=(hd0,0)/grub/splash.xpm.gz
title Red Hat Linux (2.6.18)
        root (hd0,0)
        kernel /vmlinuz-2.6.18 ro root=/dev/hda2
        initrd /initrd-2.6.18.img
title Red Hat Linux (2.4.20-8)
        root (hd0,0)
        kernel /vmlinuz-2.4.20-8 ro root=LABEL=/
        initrd /initrd-2.4.20-8.img

(下面是我虛擬機上面的grub.conf文件
default=0
timeout=10
splashimage=(hd0,0)/grub/splash.xpm.gz

title Red Hat Linux (2.6.18)
        root (hd0,0)
        kernel /vmlinuz-2.6.18 ro root=LABEL=/ hdc=ide-scsi
        initrd /initrd-2.6.18.img
title Red Hat Linux (2.4.20-8)
        root (hd0,0)
        kernel /vmlinuz-2.4.20-8 ro root=LABEL=/ hdc=ide-scsi
        initrd /initrd-2.4.20-8.img

5.3,趕快重啓,看看升級後的2.6內核吧,OK,大功告成

 

 

 


其實升級(2.6.18)的目的主要是實現對ntfs的寫入,按照上面的方法做完之後仍然沒有實現對ntfs的寫入,或許爲下面的寫入工作提供了前提環境?? 不知道沒有升級內核(2.4.20)是否一樣可以進行下面的工作?(這個沒有實驗)。下面就在這個的基礎上來實現對ntfs的寫入工作,這個內核升級搞了一天,問題就是升級的那幾個工具沒有升級好,要注意!!!

寫入ntfs分區(安裝NTFS-3G驅動) 
 

   前面,我安裝雙系統的時候,就確定用D盤來做爲Windows與Linux共同使用的分區,而D盤是NTFS格式的分區(如果D盤爲FAT32格式的分區,直接就可以掛載使用了),訪問NTFS格式的分區,我就知道2種:

   第1種,使內核支持NTFS格式分區,只能讀,不能寫(這裏就不說了)。

   第2種,使用NTFS-3G掛載NTFS格式分區,既能讀又能寫。

   網上說這個NTFS-3G還不是很穩定,但我用了一段時間,感覺還不錯,好像沒什麼問題,下面就是安裝NTFS-3G驅動過程:

   首先,要安裝NTFS-3G驅動,需要先安裝基本的Linux開發工具(源代碼包安裝),而NTFS-3G還依賴FUSE的支持,所以先解壓安裝FUSE吧:

# tar -xvzf fuse-2.6.0.tar.gz
# cd fuse-2.6.0
# ./configure && make && make install

   然後,解壓安裝NTFS-3G驅動了:

# tar -xvzf ntfs-3g-1.0.tgz
# cd ntfs-3g-1.0
# ./configure && make && make install

   注意,如果您看到下面消息:

checking kernel source directory... Not found
configure: error:
*** Please specify the location of the kernel source with
*** the '--with-kernel=SRCDIR' option
configure: error: ./configure failed for kernel

   則需要安裝相應版本的kernel-devel軟件包:

# mount -t vfat /dev/hda3 /mnt/fat32/
# mount -t iso9660 -o loop /mnt/fat32/CentOS-5.1-i386-bin-DVD.iso /mnt/iso/
# rpm -ivh /mnt/iso/CentOS/kernel-devel-2.6.18-53.el5.i686.rpm
# umount /mnt/iso/
# umount /mnt/fat32/

   上面的操作,因爲我的CentOS安裝光盤的鏡像ISO就在hda3分區中,所以直接使用現成的了,呵呵。

   這樣就算安裝完成了,現在來掛載NTFS格式分區吧(可讀寫操作),如下:

# mount -t ntfs-3g /dev/hda5 /mnt/ntfs/

# ntfs-3g /dev/hda5 /mnt/ntfs/

   卸載分區,如下(卸載分區操作還是沒變的):

# umount /dev/hda5

# umount /mnt/ntfs/

   更多的選項和例子可以參考手冊:

$ man ntfs-3g

 

 
 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章