标签归档:NTFS

CentOS挂载读写NTFS分区

CentOS不像Fedora和ubuntu等,默认是自动挂载NTFS的,而它可以利用NTFS-3G来实现挂载及读写。

NTFS-3G 是一个开源的软件,可以实现 Linux、Free BSD、Mac OSX、NetBSD 和 Haiku 等操作系统中的 NTFS 读写支持。它可以安全且快速地读写 Windows 系统的 NTFS 分区,而不用担心数据丢失。

本文讲解如何在CentOS安装NTFS-3G来实习那挂载NTFS分区。

首先必须安装了rpmforge软件库的源

1、下载rpmforge的rpm文件包

32位系统

[root@linuxsight linuxsight]#  wget http://pkgs.repoforge.org/rpmforge-release/rpmforge-release-0.5.2-1.el6.rf.i686.rpm

64位系统

[root@linuxsight linuxsight]#  wget http://pkgs.repoforge.org/rpmforge-release/rpmforge-release-0.5.2-2.el6.rf.x86_64.rpm

2、安装rpmforge的rpm文件包

[root@linuxsight linuxsight]#  rpm -ivh rpmforge-release-0.5.2-1.el6.rf.i686.rpm

3、安装ntfs-3g

[root@linuxsight linuxsight]# yum install fuse-ntfs-3g
Loaded plugins: fastestmirror, refresh-packagekit
Loading mirror speeds from cached hostfile
* base: mirrors.ta139.com
* extras: ftp.nara.wide.ad.jp
* rpmforge: apt.sw.be
* updates: mirrors.ta139.com
rpmforge                                                 | 1.1 kB     00:00
rpmforge/primary                                         | 1.3 MB     01:22
rpmforge                                                              3921/3921
Setting up Install Process
Package fuse-2.8.3-1.el6.i686 already installed and latest version
Resolving Dependencies
–> Running transaction check
—> Package fuse-ntfs-3g.i686 0:2010.10.2-1.el6.rf set to be updated
–> Finished Dependency Resolution

Dependencies Resolved

=====================================================
Package            Arch       Version                     Repository      Size
=====================================================
Installing:
fuse-ntfs-3g       i686       2010.10.2-1.el6.rf          rpmforge       637 k

Transaction Summary
=====================================================
Install       1 Package(s)
Upgrade       0 Package(s)

Total download size: 637 k
Installed size: 1.4 M
Is this ok [y/N]: y
Downloading Packages:
fuse-ntfs-3g-2010.10.2-1.el6.rf.i686.rpm                 | 637 kB     00:35
Running rpm_check_debug
Running Transaction Test
Transaction Test Succeeded
Running Transaction
Warning: RPMDB altered outside of yum.
Installing     : fuse-ntfs-3g-2010.10.2-1.el6.rf.i686                     1/1

Installed:
fuse-ntfs-3g.i686 0:2010.10.2-1.el6.rf

Complete!

为MFT预留足够的空间

        为主文件表(MFT)保留适当的空间。MFT在NTFS卷中扮演着重要的角色,对其性能的影响很大,系统空间分配、读写磁盘时会频繁地访问MFT,因此MFT对NTFS的卷的性能有着至关重要的影响。NTFS文件系统的开发者在MFT附近预留着一个特定区域,用来减少MFT中的碎片,缺省状态下,这一区域占整个卷大小的12.5%,尽管这个区域能使得MFT中的碎片最少,但它并非总是合适的。

        要对MFT的空间进行管理,可以在HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\FileSystem中增加一个类型为REG_DWORD的NtfsMftZoneReservation,它的缺省值是1,其范围是1-4(1表示MFT占整个卷的12.5%,2表示25%,3表示37.5%,4表示50%)。

FAT32、NTFS、exFAT:试看分区格式与固态硬盘性能

固态硬盘迅速普及,相关应用问题也逐渐多了起来,尤其是如何做到性能的最优化?Tom'sHardware今天做了一个很特别的评测,考察了固态硬盘在FAT32、NTFS、exFAT三种不同分区格式行下的性能差异。或许很多玩家根本还没注意到这方面的影响吧。

FAT32:

1997年的Windows 95 OSR2第二版系统中首次引入,至今依然很流行,特别是低容量设备上,因为支持实在太过广泛,技术所有的主流操作系统都可以创建、读取、写入FAT32分区。

因为是32位文件系统,FAT32分区的最大容量只有2TB,8KB簇下也不过32TB,单个文件体积更是不能超过4GB,文件名长度也不可以超过255个字符。

另外,FAT32不支持日志、版权管理等高级技术,安全性也很差。

NTFS:

全称New Technology File System(新技术文件系统),Windows NT的新特性,属性类似IBM HPFS。文件体积最大16TB(理论上16EB),分区容量最大256TB,不过文件名还是最多255个字符。

NTFS还支持LZ77压缩、文件级加密(一般是AES)、访问控制(ACL),簇尺寸减小到4KB(这一点对固态硬盘很重要)。主文件表(MFT)负责存储稳健的属性、位置、访问信息。

exFAT:

微软专门为闪存设备设计的文件系统,高容量的SDXC卡默认都是这种格式,但也并不强求。Windows XP SP2、Windows Vista SP1及以上系统都支持,分区最大容量64ZB,文件体积最大16EB。簇尺寸可以大到16MB,访问控制则还是依靠ACL。

exFAT利用剩余空间位图来管理容量分配,提高删除性能,这对改善写入性能非常重要,尤其是对比NTFS。

但要注意的是,在exFAT分区上安装Windows系统是不可能的。Windows Vista/7都非常依赖NTFS的文件许可等特性。

不过由于微软授权机制的限制,exFAT的普及并不广泛,在消费电子领域的应用也不是特别多。

FAT32/NTFS/exFAT:试看分区格式与固态硬盘性能

测试平台配置:

处理器:Core i5-2500K 3.3GHz
主板:技嘉GA-Z68X-UD3H-B3
内存:海盗船TR3X6G1600C8D DDR3-1333 2GB×2
系统盘:Intel X25-M G1 80GB (固件0701)
测试盘:三星830 256GB、思民F1 240GB
控制器:Intel Z68 SATA 6Gbps
电源:海韵X-760 760W
操作系统:Windows 7 SP1 x64旗舰版
驱动程序:Intel INF 9.2.0.1030、Intel RST 10.5.0.1026

FAT32/NTFS/exFAT:试看分区格式与固态硬盘性能
参测固态硬盘之一:三星830 256GB (MCX主控)

FAT32/NTFS/exFAT:试看分区格式与固态硬盘性能
参测固态硬盘之二:思民F1 240GB (SandForce SF-2281主控)

FAT32/NTFS/exFAT:试看分区格式与固态硬盘性能

AS SSD 4KB随机读写:FAT32上三星830的写入慢了太多,但是思民F1上又是最好的,这似乎不是分区格式本身的问题。 

FAT32/NTFS/exFAT:试看分区格式与固态硬盘性能

AS SSD 4KB随机读写(队列深度64):exFAT都是最好的,NTFS紧随其后,FAT32就完全不行了,不过注意普通桌面应用是极少能涉及到64的队列深度的。 

FAT32/NTFS/exFAT:试看分区格式与固态硬盘性能

AS SSD持续读写:FAT32再次败下阵来,特别是思民F1上惨不忍睹。exFAT、NTFS读取都差不多,但写入得看硬盘。 

FAT32/NTFS/exFAT:试看分区格式与固态硬盘性能

AS SSD访问时间:exFAT、NTFS旗鼓相当,FAT32又一次不济。 

FAT32/NTFS/exFAT:试看分区格式与固态硬盘性能

AS SSD拷贝测试:这个项目更偏向实际情况,NTFS自然是首选,FAT32老了。

FAT32/NTFS/exFAT:试看分区格式与固态硬盘性能

AS SSD整体得分:exFAT、NTFS彼此彼此,互有高低。

FAT32/NTFS/exFAT:试看分区格式与固态硬盘性能

CrystalDiskMark 4KB随机读写:FAT32的读取还好,写入就不行了,意料之中。 

FAT32/NTFS/exFAT:试看分区格式与固态硬盘性能

CrystalDiskMark 4KB读写(队列深度32):同上。 

FAT32/NTFS/exFAT:试看分区格式与固态硬盘性能

CrystalDiskMark 512KB随机读写:exFAT在三星830上很突出,思民F1上则是NTFS略略占优,看来不同固态硬盘的影响也不小。 

FAT32/NTFS/exFAT:试看分区格式与固态硬盘性能

CrystalDiskMark持续读写:这次三种各式完全一致,难得。

FAT32/NTFS/exFAT:试看分区格式与固态硬盘性能

FAT32/NTFS/exFAT:试看分区格式与固态硬盘性能

Iometer 4KB随机读写:FAT32还是读取勉强还能凑合,写入就完全不行了。 

FAT32/NTFS/exFAT:试看分区格式与固态硬盘性能

FAT32/NTFS/exFAT:试看分区格式与固态硬盘性能

Iometer持续读写:几乎完全一样,FAT32只是偶尔稍稍落后一点。 

FAT32/NTFS/exFAT:试看分区格式与固态硬盘性能

Iometer数据库模式:FAT32大败,NTFS大胜。

FAT32/NTFS/exFAT:试看分区格式与固态硬盘性能

FAT32/NTFS/exFAT:试看分区格式与固态硬盘性能

Iometer网络服务器模式:FAT32这次还不错。

Iometer工作站模式:FAT32又成了阿斗。

 

FAT32/NTFS/exFAT:试看分区格式与固态硬盘性能

FAT32/NTFS/exFAT:试看分区格式与固态硬盘性能

FAT32/NTFS/exFAT:试看分区格式与固态硬盘性能

FAT32/NTFS/exFAT:试看分区格式与固态硬盘性能

FAT32/NTFS/exFAT:试看分区格式与固态硬盘性能

FAT32/NTFS/exFAT:试看分区格式与固态硬盘性能

FAT32/NTFS/exFAT:试看分区格式与固态硬盘性能

FAT32/NTFS/exFAT:试看分区格式与固态硬盘性能

PCMark 7:媒体中心、Windows Media Player添加音乐两个项目都惊人地一致,程序载入、游戏、Windows Movie Maker视频编辑、Windows Defender、系统存储等项目FAT32稍稍落后但不明显,Windows照片库导入图片因为要写入很多数据,FAT32劣势就出来了。

小结:

如果你使用Windows系统,NTFS文件系统显然是上佳之选。这种默认的分区格式在测试的两块固态硬盘上基本都可以带来最好的性能,便利性也是最好的,而且很多非Windows系统也能读取它,有着较好的跨系统兼容性。

FAT32虽然有着最广泛的平台兼容性,但毕竟廉颇老矣,除了小容量U盘之外实在不推荐使用。缺乏各种先进特性,读写性能也是一塌糊涂。

exFAT其实也表现良好,很多时候甚至要比NTFS更好一些,良好的热插拔支持更是使得它非常适合外接USB存储设备,不过内部硬盘最好还是选NTFS,尤其是系统盘只能用NTFS。如果你有多块固态硬盘,内NTFS外exFAT或许是最佳选择。 

FAT32/NTFS/exFAT:试看分区格式与固态硬盘性能

 

如何使用WinHex脚本自动修复NTFS文件系统DBR

        DBR(DOS BOOT RECORD,DOS引导记录),位于柱面0,磁头1,扇区1,即逻辑扇区0。DBR分为两部分:DOS引导程序和BPB(BIOS参数块)。其中DOS引导程序完成DOS系统文件(IO.SYS,MSDOS.SYS)的定位与装载,而BPB用来描述本DOS分区的磁盘信息,BPB位于DBR偏移0BH处,共13字节。 它包含逻辑格式化时使用的参数,可供DOS计算磁盘上的文件分配表,目录区和数据区的起始地址,BPB之后三个字提供物理格式化(低格)时采用的一些参数。引导程序或设备驱动程序根据这些信息将磁盘逻辑地址(DOS扇区号)转换成物理地址(绝对扇区号)。

 

Assign Mouse CurrentPos
Assign ParSize GetSize
Assign SecSize 512
Goto 0x000
Write 0xEB52904E54465320202020
Write SecSize
Write 0x00
Write 0x0000
Write 0x000000
Write 0x0000
Write 0xF8
Write 0x0000
Write 0x3F00
Write 0xFF00
Write 0x00000000
Write 0x00000000
Write 0x80008000
Write 0x0000000000000000
Write 0x0000000000000000
Write 0x0000000000000000
Write 0xF6
Write 0x000000
Write 0x01
Write 0x000000a
Write 0x1C5B596481596420
Write 0x0000
{
Write 0x00
}[428]
Write 0x55AA

//Goto Mouse //移动到光标点击位置,提高搜索效率。
Goto 0x200 //从头扫描。
Find 0x100000006000000000001800000000004800000018000000 Down
IfFound
Move -56
Assign MFT CurrentPos
Move 272
Read QSVCN 8
Read JSVCN 8
Move 8
Read FileSize 8
EndIF
Goto 0x00D
Write ((FileSize/(JSVCN-QSVCN+1))/SecSize)
Goto 0x00D
Read CDX 1
Goto 0x030
Write (MFT/SecSize/CDX)
Goto (MFT+1354)
Read MFTMirr 6
Goto 0x038
Write MFTMirr
Goto 0x028
Write ((ParSize/SecSize)-1)
MessageBox "DBR修复完成!"