Chinaunix首页 | 论坛 | 博客
  • 博客访问: 183877
  • 博文数量: 35
  • 博客积分: 762
  • 博客等级: 上士
  • 技术积分: 317
  • 用 户 组: 普通用户
  • 注册时间: 2011-04-30 21:38
文章分类

全部博文(35)

文章存档

2015年(1)

2013年(3)

2012年(1)

2011年(30)

分类: 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盘了。


2、完全格式化U盘
     如果你的U盘做过镜像,你会发现你的U判会变小很多,那是因为有一部分空间被隐藏了,完全格式化U盘的方法如下:
    1、umount /dev/sdb1 和/dev/sdb
    2、mkfs.vfat /dev/sdb 和 mkfs.vfat /dev/sdb1

         如果 mkfs.vfat /dev/sdb 出现如下错误:
         mkfs.vfat 3.0.10 (12 Sep 2010)
         mkfs.vfat: unable to open /dev/sdb
         则您需要先格式化/dev/sdb1,即使用mkfs.vfat /dev/sdb1命令,将/dev/sdb1先格式化掉;

         然后再格式化/dev/sdb,如果出现如下错误:
         mkfs.vfat 3.0.10 (12 Sep 2010)
         mkfs.vfat: Device partition expected, not making filesystem on entire device '/dev/sdb' (use -I to override)
         系统提示您需要使用-I参数来完成格式化:mkfs.vfat -I /dev/sdb
         这样您就可以完全格式化您的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: 可擦写的数据光盘文件系统

阅读(3851) | 评论(0) | 转发(0) |
0

上一篇:linux的system () 函数详解

下一篇:qte安装dbus

给主人留下些什么吧!~~