`

Linux系统中限制目录数和文件数的方法详解

阅读更多
限制Linux系统目录数和文件数的方法。

根据需要进行参数配置,实现更优的性能,有助于设计更为合理的存储结构。

一 目录数限制
RedHat Entere LinuxAS环境中。

在同一个路径下,一级子目录的个数限制为31998,
如果应用生成目录超过这个数,可以进行目录分级。
例如,目录名为数字的话,将数字除以10000后的整数值做为父目录名 (/data/1/13892),
如果是目录名为字母的,可以用前几个字符来做为父一级目录(/data/ab/abcdefg)

查询一个目录下级子目录的总数
$ ls -F | grep “/” | wc


1) 创建子目录
2) Linux为了cpu的搜索效率而规定的,要改变数目要重新编译内核.

二 文件数目限制
每个文件对应一个inode,如果inode没有了,那就算有空间也不能再写文件了。
查看某个分区的inodes信息:
# tune2fs -l /dev/sda5 | grep “inodes”
Free inodes: 1247005

解决办法:
1) 重新mkfs,mkfs时将inode数调的多一些(根据你fs中文件的总数而定),块尺寸调得小一些(根据每个文件的平均大小而定)
2) 使用loopback文件系统临时解决
在/usr中(可以在别处)创建一个大文件,然后做成loopback文件系统,将原来的文件移到这个文件系统中,并将它mount到/usr下合适的位置。
这样可以减少/usr中的文件数目,但是系统性能有损失

三 单个目录下文件数限制
Freebsd下有65535的限制,通过重新编译内核可以更改。(查看/usr/include/sys/syslimits.h)
不建议在一个目录下放太多文件,会影响系统性能。
ulimit -a 命令查看所有的限制,并能临时改变限制。

没有优化或修改内核的测试,测试平台:RHEL5U3_x64
测试ext3文件系统下filename最大字符长度:
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个字符

测试ext3文件系统下一级子目录的个数限制
RHEL5U3_x64
# 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文件系统一级子目.Linux为了cpu的搜索效率规定的,要改变数目要重新编译内核.

测试ext3文件系统下单个目录里的最大文件数
单个目录下的最大文件数没什么特别限制,受限于所在文件系统的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中的文件数目,系统性能会有损失。

测试打开文件数限制(文件句柄、文件描述符)
ulimit -n 65535设置,或者/etc/security/limit.conf里设置用户打开文件数、进程数、CPU等.
分享到:
评论

相关推荐

    入门学习Linux常用必会60个命令实例详解doc/txt

    在Linux 和Unix系统上,所有文件都是作为一个大型树(以/为根)的一部分访问的。要访问CD-ROM上的文件,需要将CD-ROM设备挂装在文件树中的某个挂装点。如果发行版安装了自动挂装包,那么这个步骤可自动进行。在Linux...

    cmd操作命令和linux命令大全收集

    xcopy 要复制的文件或目录树 目标地址目录名 复制文件和目录树,用参数/Y将不提示覆盖相同文件 用参数/e才可连目录下的子目录一起复制到目标地址下。 tftp -i 自己IP(用肉机作跳板时这用肉机IP) get server.exec...

    企业级Linux服务攻略

    第1章 Linux服务器的搭建与测试 1.1 Linux的安装 1.1.1 Linux简介 1.1.2 Red Hat Enterprise Linux 5新特性介绍 1.1.3 Red Hat Enterprise Linux 5的安装 1.2 常规网络配置 1.2.1 配置主机名 1.2.2 使用ifconfig...

    Linux高性能服务器编程

    7.1.2 syslog函数 7.2 用户信息 7.2.1 UID、EUID、GID和EGID 7.2.2 切换用户 7.3 进程间关系 7.3.1 进程组 7.3.2 会话 7.3.3 用ps命令查看进程关系 7.4 系统资源限制 7.5 改变工作目录和根目录 7.6 ...

    Apache FtpServer配置详解

    从零开始介绍Apache FtpServer,并一步一步...--用户配置文件,可以配置用户主目录、写权限、上传数据的速度、下载文件的速度等 --> <!--用户密码加密方式 --> <property name="encryptType" value="MD5"/>

    Ghost 8.3 系统备份软件

    在 Ghost Explorer 中提供了多种还原硬盘备份文件的方法,最方便的方法是使用鼠标右键点击某个文件,在弹出菜单中选择 Restore,然后输入要还原到的目录,这样,单个文件就从整个磁盘备份中还原出来了。当然,如果...

    深入云计算 MongoDB管理与开发实战详解pdf.part2

    《深入云计算(MongoDB管理与开发实战详解)》系统全面的介绍了MongoDB开发、管理、维护和性能优化等方方面面。详细而深入,对MongoDB的开发和管理方法进行了详细的讲解,也对MongoDB的工作机制进行了深入的探讨。注重...

    TCP/IP详解

    19.4.4 UNIX和Linux系统上的UUCP 209 19.5 应付最坏情况 210 19.6 小结 210 第六部分 实现TCP/IP 第20章 一般配置问题 211 20.1 安装网卡 211 20.1.1 网卡 211 20.1.2 资源配置 212 20.1.3 安装适配器软件 213 20.1....

    TCPIP协议详解(4-1)

    私钥加密 204 19.1.2 对称私钥加密 205 19.1.3 DES、IDEA及其他 205 19.2 数字签名认证 206 19.3 破译加密的数据 207 19.4 保护网络 207 19.4.1 登录名和口令 208 19.4.2 文件的目录允许权限 ...

    深入云计算 MongoDB管理与开发实战详解pdf.part1

    《深入云计算(MongoDB管理与开发实战详解)》系统全面的介绍了MongoDB开发、管理、维护和性能优化等方方面面。详细而深入,对MongoDB的开发和管理方法进行了详细的讲解,也对MongoDB的工作机制进行了深入的探讨。注重...

    Linux多线程服务端编程:使用muduo C++网络库

    《Linux多线程服务端编程:使用muduo C++网络库》主要讲述采用现代C++在x86-64 Linux上编写多线程TCP网络服务程序的主流常规技术,重点讲解一种适应性较强的多线程服务器的编程模型,即one loop per thread。...

    Ghost 8.3 Enterprise

     在 Ghost Explorer 中提供了多种还原硬盘备份文件的方法,最方便的方法是使用鼠标右键点击某个文件,在弹出菜单中选择 Restore,然后输入要还原到的目录,这样,单个文件就从整个磁盘备份中还原出来了。...

    TCP/IP技术大全(中文PDF非扫描版)

    19.4.4 UNIX和Linux系统上的UUCP 209 19.5 应付最坏情况 210 19.6 小结 210 第六部分 实现TCP/IP 第20章 一般配置问题 211 20.1 安装网卡 211 20.1.1 网卡 211 20.1.2 资源配置 212 20.1.3 安装适配器软件 213 20.1....

    windows实用dos命令大全

    (1)XCOPY是COPY的扩展,可以把指定的目录连文件和目录结构一并拷贝,但不能拷贝隐藏文件和系统文件;  (2)使用时源盘符、源目标路径名、源文件名至少指定一个;  (3)选用/S时对源目录下及其子目录下的所有...

    TCP/IP教程TCP/IP基础

    19.4.4 UNIX和Linux系统上的UUCP 209 19.5 应付最坏情况 210 19.6 小结 210 第六部分 实现TCP/IP 第20章 一般配置问题 211 20.1 安装网卡 211 20.1.1 网卡 211 20.1.2 资源配置 212 20.1.3 安装适配器软件 213 20.1....

    TCP/IP技术大全

    19.4.4 UNIX和Linux系统上的UUCP 209 19.5 应付最坏情况 210 19.6 小结 210 第六部分 实现TCP/IP 第20章 一般配置问题 211 20.1 安装网卡 211 20.1.1 网卡 211 20.1.2 资源配置 212 20.1.3 安装适配器软件 213 20.1....

    TCP-IP技术大全

    19.4.4 UNIX和Linux系统上的UUCP 209 19.5 应付最坏情况 210 19.6 小结 210 第六部分 实现TCP/IP 第20章 一般配置问题 211 20.1 安装网卡 211 20.1.1 网卡 211 20.1.2 资源配置 212 20.1.3 安装适配器软件 213 20.1....

    网吧维护技术资料 合集

    7949 网吧维护\资料\xp实用技巧\目录和文件操作命令.txt 3331 网吧维护\资料\xp实用技巧\破解Windows XP中WPA的武器现身.txt 3055 网吧维护\资料\xp实用技巧\硬件不兼容的处理.txt 5273 网吧维护\资料\xp实用技巧\...

Global site tag (gtag.js) - Google Analytics