分类: LINUX
2011-06-21 18:12:28
mkfs -t ext3 /dev/sda5
mkfs.vfat /dev/sdb2
mount -t vfat /dev/sdb2 /sdb2
文件系统的优化:
mkfs.ext3 -b 1024 /dev/sda
文件的大小来决定数据块的大小
文件很大,但是数据块很小,影响读取的速度
文件很小,但是数据块很大,浪费数据块
mkfs.ext3 -b 1024 -i 2048 -m 1 /dev/sdb6
tune2fs -l /dev/sdb6
tune2fs -i 2 /dev/sdb5 变成两天
tune2fs -c 3 /dev/sdb5 次数
格式化时创建block。文件系统的存储原理,block size:1k.2k.4k
mkfs.ext3 -b 1024 /dev/sdb1
比较不同的block size对磁盘使用的影响:
[root@rhel /]# mkfs.ext3 -b 1024 /dev/sdb1
[root@rhel /]# mkfs.ext3 -b 4096 /dev/sdb2
[root@rhel /]# mount /dev/sdb1 /mnt/d1
[root@rhel /]# mount /dev/sdb2 /mnt/d2
[root@rhel /]# /mnt/d1/dir
[root@rhel /]# mkdir /mnt/d2/dir
[root@rhel /]# echo "yliang">/mnt/d1/dir/test
[root@rhel /]# echo "yliang">/mnt/d2/dir/test
[root@rhel /]# -lh /mnt/d[12]
/mnt/d1:
总用量 14K
drwxr-xr-x 2 root root 1.0K 4月 4 14:36 dir
drwx------ 2 root root 12K 4月 4 14:20 lost+found
-rw-r--r-- 1 root root 7 4月 4 14:29 test
/mnt/d2:
总用量 24K
drwxr-xr-x 2 root root 4.0K 4月 4 14:36 dir
drwx------ 2 root root 16K 4月 4 14:21 lost+found
-rw-r--r-- 1 root root 7 4月 4 14:29 test
可以观察到两个dir目录文件大小不同,一个是1k另一个是4k,这就是因为两个分区的block size不同。
[root@rhel /]# ls -lh /mnt/d[12]/dir/test
-rw-r--r-- 1 root root 7 4月 4 14:36 /mnt/d1/dir/test
-rw-r--r-- 1 root root 7 4月 4 14:36 /mnt/d2/dir/test
两个test文件都是7字节
[root@rhel /]# -sh /mnt/d[12]/dir
2.0K /mnt/d1/dir 一块是1k,test和dir两个文件就是2k
8.0K /mnt/d2/dir 一块是4k,test和dir两个文件就是8k
统计两个目录的大小是不一样的。
索引节点:
每个节点使用多少个block数据块
mkfs.ext3 -b 4096 -i 8192 /dev/sdb1 每两个block编一个号
[root@rhel ~]# mkfs.ext3 -b 4096 -i 4096 /dev/sdb1
[root@rhel ~]# mkfs -t ext3 -b 4096 -i 8192 /dev/sdb2
[root@rhel ~]# e2label /dev/sdb1
[root@rhel ~]# e2label /dev/sdb2
[root@rhel ~]# mount LABEL=d1 /mnt/d1
[root@rhel ~]# mount LABEL=d2 /mnt/d2
这里表面上是看不出什么的,要使用tune2fs来查看,这个工具是用来查看ext2/ext3文件系统属性的。
[root@rhel ~]# tune2fs -l /dev/sdb1 |
tune2fs 1.35 (28-Feb-2004)
Filesystem volume name: d1
Last mount on:
Filesystem UUID: 226763f8-23e4-43ae-8ee8-6268b8b4ca03
Filesystem magic number: 0xEF53
Filesystem revision #: 1 (dynamic)
Filesystem features: has_journal resize_inode type needs_recovery spars
e_super large_file
Default mount options: (none)
Filesystem e: clean
Errors behavior: Continue
Filesystem OS type: Linux
Inode count: 25600
Block count: 25596
Reserved block count: 1279
Free blocks: 23754
Free inodes: 25589
First block: 0
Block size: 4096
Fragment size: 4096
Blocks per group: 32768
Fragments per group: 32768
Inodes per group: 25600
Inode blocks per group: 800
Filesystem created: Fri Apr 4 15:20:27 2008
Last mount time: Fri Apr 4 15:26:55 2008
Last time: Fri Apr 4 15:26:55 2008
Mount count: 1
Maximum mount count: 33
Last checked: Fri Apr 4 15:20:27 2008
Check interval: 15552000 (6 months)
Next check after: Wed Oct 1 15:20:27 2008
Reserved blocks uid: 0 (user root)
Reserved blocks gid: 0 (group root)
First inode: 11
Inode size: 128
Journal inode: 8
Default directory hash: tea
Directory Hash Seed: 2f47-c0fc-47a1-8af4-e3e906269805
Journal backup: inode blocks
这两条信息就是
Inode count: 25600
Block count: 25596
保留块:是为管理员保留的磁盘管理空间,为防止磁盘空间剩余太少以致管理员无法编辑配置文件而设置的,默认是总数据块的5%。
用tune2fs -l /dev/sdb1查看保留块信息
[root@rhel ~]# tune2fs -l /dev/sdb1 | Reserved
Reserved block count: 5119
Reserved blocks uid: 0 (user root)
Reserved blocks gid: 0 (group root)
mkfs.ext3 -b 4096 -i 8192 -m 2 /dev/sdb1
设置保留块的数量占总数的 2%。再用tune2fs查看
调整ext2/ext3文件系统
tune2fs是一个调整ext2/ext3文件系统的工具。
-l
-c
-i
-m
-j 将ext2文件系统转换为ext3格式
例:-c
没挂载过的分区挂载次数为0,最大34
tune2fs -l /dev/sdb1
Mount count: 0
Maximum mount count: 34
挂载后再查看
mount /dev/sdb1 /mnt/d1
tune2fs -l /dev/sdb1
Mount count: 1
Maximum mount count: 34
挂载过1次了,达到34的时候就会强制自检
-c就是来改变这个最大次数的
[root@rhel ~]# tune2fs -c 2 /dev/sdb1
tune2fs 1.35 (28-Feb-2004)
Setting maximal mount count to 2
[root@rhel ~]# tune2fs -l /dev/sdb1 |grep -i "mount count"
Mount count: 1
Maximum mount count: 2
这个值只在系统启动过程中起作用
把最大值设为负值就永远不会自检了
tune2fs -c -1 /dev/sdb1
-i
tune2fs -l /dev/sdb1
Check interval: 15552000 (6 months)默认的间隔是6个月
如果不自检可以把-i 设置为0
如果这样:tune2fs -c -1 -i 0 /dev/sdb1挂载次数和时间都不能让它自检了,要想自检只能手工的 了
-m
[root@rhel ~]# tune2fs -m 2 /dev/sdb2
tune2fs 1.35 (28-Feb-2004)
Setting reserved blocks percentage to 2 (532 blocks)
-j 将ext2文件系统转换为ext3格式
[root@rhel ~]# df -T
/dev/sdb2 ext2 103129 1550 96255 2% /mnt/d2
/dev/sdb2
tune2fs -j /dev/sdb2
mount /dev/sdb2
ext3不能被转换为ext2的,但是可以把ext3类型的强制挂载为ext2的,这时不会有日志
mount -t ext2 /dev/sdb1
文件系统检查工具
fsck和[有点危险,识别ext2和ext3上有误差,尽量不用]
fsck是检查文件系统完整性的工具,并自动修复。
fsck的两种用法:
用法一: fsck -t ext2 /dev/sdb1
用法二: /dev/sdb1
这样手动运行时,如果文件系统上有错误,会部修复不修复yes or no,如果想全自动修复
fsck.ext2 -y /dev/sdb1这样就自动回答了yes
开机时会自动运行它就是/etc/fstab 中的最后一个参数
[root@rhel ~]# more /etc/fstab
LABEL=/ / ext3 defaults 1 1
格式化u盘:
1、具体方法
2.1 先要卸载U盘,使用如下命令:
#umount /dev/sdb1
注意:/dev/后面的设备要根据你的实际情况而定,否则后面格式化,丢失数据!!
2.2 格式化U盘,并建立vfat文件系统
#mkfs.vfat /dev/sdb1
2.3 最后再mount上U盘,或者把U盘拨了再插上,系统可能会自动mount上,就可以使用U盘了。
ext2 : 早期linux中常用的文件系统
ext3 : ext2的升级版,带日志功能
RAMFS : 内存文件系统,速度很快
NFS : 网络文件系统,由SUN发明,主要用于远程文件共享
MS-DOS : MS-DOS文件系统
FAT32 : Windows XP 操作系统采用的文件系统
NTFS : Windows NT/XP 操作系统采用的文件系统
HPFS : OS/2 操作系统采用的文件系统
PROC : 虚拟的进程文件系统
ISO9660 : 大部分光盘所采用的文件系统
ufsSun : OS 所采用的文件系统
NCPFS : Novell 服务器所采用的文件系统
SMBFS : Samba 的共享文件系统
XFS : 由SGI开发的先进的日志文件系统,支持超大容量文件
JFS :IBM的AIX使用的日志文件系统
ReiserFS : 基于平衡树结构的文件系统
udf: 可擦写的数据光盘文件系统