免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1560 | 回复: 0
打印 上一主题 下一主题

linux下文件数、目录数、文件名长度的各种限制 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2009-06-26 12:09 |只看该作者 |倒序浏览

                以下测试都是在没有优化或修改内核的前提下测试的结果
1. 测试目的:ext3文件系统下filename最大字符长度
   测试平台:RHEL5U3_x64
   测试过程:
LENTH=`for i in {1..255};do for x in a;do echo -n $x;done;done`
touch $LENTH
当增加到256时,touch报错,File name too long
linux系统下ext3文件系统内给文件/目录命名,最长只能支持127个中文字符,英文则可以支持255个字符
2. 测试目的:ext3文件系统下一级子目录的个数限制
   测试平台:RHEL5U3_x64
   测试过程:
[root@fileserver maxdir]# for i in {1..32000};do mkdir $i;done
mkdir: cannot create directory `31999': Too many links
mkdir: cannot create directory `32000': Too many links
ext3文件系统一级子目录的个数为31998(个)。
Linux为了cpu的搜索效率而规定的,要想改变数目大概要重新编译内核.
3. 测试目的:ext3文件系统下单个目录里的最大文件数
   测试平台: RHEL5U3_x64
   测试过程:
   单个目录下的最大文件数似乎没什么特别限制,也是受限于所在文件系统的inode数限制:
   df -i或者使用tune2fs -l /dev/sdaX或者dumpe2fs -h /dev/sdaX查看可用inode数,后两个命令
   输出结果是一样的,但是跟df所得出的可用inode数会有些误差,至今不明白什么原因。
   
   网上常用两种解决办法:
   1) 重新mkfs,ext3默认block大小4096 Bytes,block设置小一些inode数设置大一些
   2) 使用loopback文件系统临时解决:
       在/usr中(也可以在别处)创建一个大文件,然后做成loopback文件系统,将原来的文件移到这个
       文件系统中,并将它mount到/usr下合适的位置。这样可以大大减少你/usr中的文件数目。但是系统
       性能会有点损失。
4. 测试目的: 打开文件数限制(文件句柄、文件描述符)
   测试平台: RHEL5U3_x64
   ulimit -n 65535设置,或者/etc/security/limit.conf里设置用户打开文件数、进程数、CPU等
   
   
               
               
               
               
               

本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u2/61187/showart_1978055.html
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP