在Fedora core 4.0 加载NTFS和FAT32分区详述
作者:北南南北
来自:LinuxSir.Org
提要:本文主要介绍ntfs文件系统分区及fat32格式分区的挂载方法:简单的说就是让Linux能读取Windows系统下的分区;
++++++++++++++++++++++++++++++++++++
正文:
++++++++++++++++++++++++++++++++++++
一、最基本的几个命令;
1、查看磁盘分区情况的命令fdisk -l ;
比如:
[root@localhost beinan]# /sbin/fdisk -l
Disk /dev/hda: 80.0 GB, 80026361856 bytes
255 heads, 63 sectors/track, 9729 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/hda1 * 1 765 6144831 7 HPFS/NTFS
/dev/hda2 766 2805 16386300 c W95 FAT32 (LBA)
/dev/hda3 2806 7751 39728745 5 Extended
/dev/hda5 2806 3825 8193118+ 83 Linux
/dev/hda6 3826 5100 10241406 83 Linux
/dev/hda7 5101 5198 787153+ 82 Linux swap / Solaris
/dev/hda8 5199 6657 11719386 83 Linux
/dev/hda9 6658 7751 8787523+ 83 Linux
通过上面的我们可以知道 /dev/hda1 是NTFS格式;/dev/hda2是FAT32格式;
2、mount 命令;
就是磁盘分区的挂载命令,如果内核支持的话,mount 命令能挂载几乎所有的文件系统,比如
reiserfs;ext2;ext3;ntfs;fat32;jfs等等;在Linux系统中,我们常用的主要有reiserfs;ext3;
ext3;在Windows系统中,我们主要用的是NTFS;FAT32;FAT等;
mount 挂载磁盘分区的用法:
mount -t 文件格式 -o 选项参数 磁盘分区 挂载点目录名
这样说可能新手不太明白,什么是文件格式,什么是挂载点目录名,我们要把一个分区加载到Linux,是不是得有个存放在地方?比如我们把
/dev/hda1
挂载到/mnt/winc目录中;首先我们要看是不是winc是否存在于/mnt目建录中;如果没有winc,我们必须建一个;当然挂载点目录名是自己随
便起命名的,最好用英文;
例子在后面举了,新手弟兄先知道有这回事就行了;
3、df -lh 磁盘使用情况的命令;这个重要吧;
[root@localhost beinan]# df -lh
Filesystem 容量 已用 可用 已用% 挂载点
/dev/hda8 11G 5.9G 4.5G 57% /
/dev/shm 236M 0 236M 0% /dev/shm
/dev/hda1 5.9G 3.2G 2.7G 55% /mnt/winc
/dev/hda2 16G 8.1G 7.7G 52% /mnt/wind
/dev/hda5 7.9G 5.8G 2.1G 74% /mnt/slack
4、文件和目录的权限;
这个在论坛中,我写过,有时间整理上来;知道umask=000是任何用户都能读写执行的就行了。有些东西慢慢就明白了,多执行几个命令就OK了。
5、内核的版本;
[root@localhost beinan]# uname -a
Linux localhost.localdomain 2.6.11-1.1369_FC4 #1 Thu Jun 2 22:55:56 EDT 2005 i686 i686 i386 GNU/Linux
通过上面得知我目前用的内核的版本是 2.6.11-1.1369_FC4
6.获取root用户的命令是su
[beinan@localhost ~]$ su
Password: 在这里输入您的root密码,即使输入了,也不会显示出来;我们要安装RPM包,要用到root的超级权限;
[root@localhost beinan]#
二、NTFS文件系统的加载;
1、我们要首先确认系统的内核;我们要根据系统的内核版本来下载支持ntfs的内核补丁;
我们在前面已经通过fdisk -l 得知/dev/hda1 是NTFS分区;我们如何加载它呢?在Fedora core 4.0
中,系统默认是不支持NTFS加载的;我们只能安装第三方kernel的ntfs插件或者编内核来实现,相对于编译内核来说,插件是最方便的,也是最简单
的;
[root@localhost beinan]# uname -a
Linux localhost.localdomain 2.6.11-1.1369_FC4 #1 Thu Jun 2 22:55:56 EDT 2005 i686 i686 i386 GNU/Linux
一定要看仔细,是2.6.11-1.1369_FC4,是i686的,没有带smp字样的,smp是支持多处理器的内核,如果您用这样的内核,就要下载相应版本的smp的;
我们到哪去下载呢?
kernel ntfs 项目在 http://linux-ntfs.sourceforge.net
Fedora core 4.0的kernel NTFS的RPM包在:
http://linux-ntfs.sourceforge.net/rpm/fedora4.html
根据上面内核的信息,我们要下载:2.6.11-1.1369_FC4 i686的,下载的应该是:
kernel-module-ntfs-2.6.11-1.1369_FC4-2.1.22-0.rr.6.0.i686.rpm
地址: http://prdownloads.sourceforge.net/linux-ntfs/kernel-module-ntfs-2.6.11-1.1369_FC4-2.1.22-0.rr.6.0.i686.rpm
在这里选一个镜像下载:
安装kernel ntfs模块:
[root@localhost beinan]# rpm -ivh kernel-module-ntfs*
2.判断哪个分区是NTFS格式,加载NTFS分区;
[root@localhost beinan]# /sbin/fdisk -l
Disk /dev/hda: 80.0 GB, 80026361856 bytes
255 heads, 63 sectors/track, 9729 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/hda1 * 1 765 6144831 7 HPFS/NTFS
/dev/hda2 766 2805 16386300 c W95 FAT32 (LBA)
/dev/hda3 2806 7751 39728745 5 Extended
/dev/hda5 2806 3825 8193118+ 83 Linux
/dev/hda6 3826 5100 10241406 83 Linux
/dev/hda7 5101 5198 787153+ 82 Linux swap / Solaris
/dev/hda8 5199 6657 11719386 83 Linux
/dev/hda9 6658 7751 8787523+ 83 Linux
我们已经把kernel ntfs的模式安装好了,现在进入NTFS的分区的加载过程;通过上面的查看,我们知道/dev/hda1是NTFS格式的;
1]我们要建一个挂载点的目录,比如是在/mnt/目录下建一个winc的目录:
[root@localhost beinan]# mkdir /mnt/winc
2]把/dev/hda1 挂载到 /mnt/winc中,这样我们如果查看/dev/hda1磁盘内容时,就会在/mnt/winc中找得到;
[root@localhost beinan]# mount -t ntfs -o nls=utf8,umask=000 /dev/hda1 /mnt/winc
注:-t ntfs 说明文件系统的格式是ntfs的;-o是选项
,选项有什么呢?有nls=utf8 ,意思是Native Language
Support(本地语言支持)是utf8,也就是大家常说的语言编码;Fedora core 4.0
默认的语言编码就是utf8的,这样能显示出中文来;umask=000表示所有的用户组都可读可写,但因为NTFS在Linux中写入不安全,所以只能
读,不能写入;如果想写入,只能自己编内核来实现;但意义并不是太大;
是不是挂载好了呢?
[root@localhost beinan]# df -lh
Filesystem 容量 已用 可用 已用% 挂载点
/dev/hda8 11G 5.9G 4.5G 57% /
/dev/shm 236M 0 236M 0% /dev/shm
/dev/hda1 5.9G 3.2G 2.7G 55% /mnt/winc
看来是挂载好了;我们进入 /mnt/winc就知道是不是有内容了;
[root@localhost beinan]# cd /mnt/winc
[root@localhost beinan]# ls
3]如何开机自动加载NTFS文件系统的分区;
我们要根据磁盘的位置,上面我们看到了是/dev/hda1,对不对?所以我在/etc/fstab文件中找加如下的一行;
/dev/hda1 /mnt/winc ntfs umask=000,nls=utf8
4]如何将这个磁盘分区放在GNOME或者KDE的桌面上呢?
在KDE下,只需要点一下鼠标,在桌面的空白处按鼠标右键就可以找得到了;不多说了,太简单;
在GNOME下也是极简单的:
比如我是以beinan这个用户登入的系统,想在放在 beinan 这个用户的GNOME桌面上;
[beinan@localhost ~]$ ln -s /mnt/winc/ ~beinan/Desktop/winc
三、FAT32文件系统的分区的加载;
通过fdisk -l ,我们也知道了 /dev/hda2是FAT32格式的;
/dev/hda2 766 2805 16386300 c W95 FAT32 (LBA)
Linux对FAT32的支持是可读可写的,所以没有必要再安装什么模块之类的;
1.我们要建一个挂载点的目录,比如是在/mnt/目录下建一个wind的目录:
[root@localhost beinan]# mkdir /mnt/wind
2.挂载 /dev/hda2 到/mnt/wind上
[root@localhost beinan]# mount -t vfat -o iocharset=utf8,umask=000 /dev/hda2 /mnt/wind/
看一下是不是挂载好了?
[root@localhost beinan]# df -lh
Filesystem 容量 已用 可用 已用% 挂载点
/dev/hda8 11G 5.9G 4.5G 57% /
/dev/shm 236M 0 236M 0% /dev/shm
/dev/hda1 5.9G 3.2G 2.7G 55% /mnt/winc
/dev/hda2 16G 8.1G 7.7G 52% /mnt/wind
看来是挂载好了;应该进去看看;
[root@localhost beinan]#cd /mnt/wind
[root@localhost beinan]#ls -lh
drwxrwxrwx 3 root root 8.0K 7月 27 11:45 抓图
drwxrwxrwx 2 root root 8.0K 8月 12 10:21 测试文件
drwxrwxrwx 4 root root 8.0K 7月 27 11:45 电脑硬件
drwxrwxrwx 5 root root 8.0K 7月 27 11:45 网际快车
中文支持没有问题;这是我机器中的;
3.如何开机自动加载FAT文件系统的分区;
我们要根据磁盘的位置,上面我们看到了是/dev/hda1,对不对?所以我在/etc/fstab文件中找加如下的一行;
/dev/hda2 /mnt/wind vfat umask=000,nls=utf8
4]如何将这个磁盘分区放在GNOME或者KDE的桌面上呢?
在KDE下,只需要点一下鼠标,在桌面的空白处按鼠标右键就可以找得到了;不多说了,太简单;
在GNOME下也是极简单的:
比如我是以beinan这个用户登入的系统,想在放在 beinan 这个用户的GNOME桌面上;
[beinan@localhost ~]$ ln -s /mnt/wind/ ~beinan/Desktop/wind
四、对于文本文件乱码处理;
比如我们看到有些文本文件内容是乱码,我们可以用gedit 打开,然后另存为utf8格式就OK了;
后记:虽然写的详细,但我不敢保证所有初学者都能会操作,但我感觉80%初学者还是按步骤操作不会有问题;
正在修订之中;欢迎提出点意见和建议;谢谢~