Chinaunix首页 | 论坛 | 博客
  • 博客访问: 3154952
  • 博文数量: 443
  • 博客积分: 11301
  • 博客等级: 上将
  • 技术积分: 5678
  • 用 户 组: 普通用户
  • 注册时间: 2004-10-08 12:30
个人简介

欢迎加入IT云增值在线QQ交流群:342584734

文章分类

全部博文(443)

文章存档

2022年(1)

2021年(1)

2015年(2)

2014年(1)

2013年(1)

2012年(4)

2011年(19)

2010年(32)

2009年(2)

2008年(4)

2007年(31)

2006年(301)

2005年(42)

2004年(2)

分类:

2006-09-07 20:17:41

 
首先来看看在Solaris操作系统下对于UFS文件系统及单个文件大小的限制,参考下表.

Solaris 版本 ‖ 允许创建最大的单个文件 ‖ 允许创建最大的文件系统

Solaris 2.5.1               ‖ 2 GB           ‖ 1 TB
Solaris 2.6 - 9 12/02(U3)            ‖ ~ 1012 GB ‖ 1 TB
Solaris 9 08/03 (U4)- Solaris 10 ‖ ~ 1023 GB   ‖ 16 TB

对于1T或以上的UFS文件系统,为了减少在fsck期间检查文件系统inode健康状态所花的时间(尽管此文件系统打开了logging选项,对于一个1T或更大的文件系统,执行fsck是一个考验和挑战),在文件系统创建时(使用”newfs”或”mkfs”命令),两个关键参数”nbpi”和”fragsize”的默认值将有所变化,参见下表.

当创建1T以下的文件系统 | 当创建1T或以上的文件系统
nbpi = 2048 - 8192 byte | nbpi = 1048576 (即1M);
fragsize =   bsize / 8 | fragsize = bsize

说明:
在创建1T或以上的文件系统时,如果手工指定的nbpi(命令行中使用-i选项)或fragsize(命令行中使用-f选项)值不合理,则被系统忽略而使用默认值.

fragsize参数指定分配给一个常规UNIX文件的最小空间大小,该值与文件系统的逻辑页大小(block size,bsize)有关,指定的值必须能被bsize整除,且两者之间的商必须为1,2,4,8.如Solaris 9的block size为8K,则fragsize可能的取值为:

1024,2048,4096,8192

默认将取最小值即1024字节,意即,在Solaris 9操作系统下,每创建一个常规的UNIX文件,将至少占用1K的空间.(即使文件大小小于1K).
在创建1T或以上的文件系统时,fragsize默认值将被强制设置成1M,这也是为什么对于1T或以上的文件系统,其所能容纳的小文件数反而锐减的原因之一.

在用newfs命令创建1T或以上的文件系统时,需要使用”-T”选项,该选项有如下作用:
- 使fragsize等于当前的bsize值
- 将nbpi设置成1M
- 允许将创建的文件系统在线增长到最大可能的大小

如创建了一个1.2T左右的卷,在用newfs创建文件系统时,实际创建的文件系统大小将不会超过1T,而需要配合”growfs”命令将其扩展到最大值(即1.2T).

# newfs -T /dev/md/rdsk/d99 (卷d99实际大小为1.2T)
newfs: construct a new file system /dev/md/rdsk/d99: (y/n)? y
/dev/md/rdsk/d99: 1677754368 sectors in 45512 cylinders of
144 tracks, 256 sectors
819216.0MB in 1821 cyl groups (25 c/g, 450.00MB/g, 448 i/g) ...
# growfs -v /dev/md/rdsk/d99
/usr/lib/fs/ufs/mkfs -G /dev/md/rdsk/d99 2516631552 /dev/md/rdsk/d99:
2516631552 sectors in 68268 cylinders of 144 tracks, 256 sectors
1228824.0MB in 2731 cyl groups (25 c/g, 450.00MB/g, 448 i/g)...
阅读(4868) | 评论(0) | 转发(2) |
给主人留下些什么吧!~~