`
jarod2008
  • 浏览: 80483 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Linux系统目录数和文件数限制

阅读更多

  对于系统管理员来说,了解系统的一些限制是非常有必要的,这样可以根据需要进行必要的参数配置和调整,进而实现更优的性能,对于系统设计人员甚至程序员来说,了解系统的一些限制,也会有助于设计更为合理的存储结构。

  一 目录数限制

  RedHat Enterprise Linux AS 4.0 Update 3

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

  通过以下的命令行可以得到一个目录下一级子目录的总数:

$ ls -F | grep "/" | wc
  解决方法:

  1) 创建子目录

  2) Linux为了cpu的搜索效率而规定的,要想改变数目大概要重新编译内核. 

  二 文件数目限制

  每个文件对应一个inode,如果inode没有了,那就算有空间也不能再写文件了。

  通过以下命令行,可以看某个分区的inodes信息:

[root@boss tmp]# tune2fs -l /dev/sda5 | grep "inodes"
Free inodes:              1247005
[root@boss tmp]#
  2种解决办法:  

  1) 重新mkfs,mkfs时将inode数调的多一些(根据你fs中文件的总数而定),块尺寸调得小一些(根据每个文件的平均大小而定)  

  2) 使用loopback文件系统临时解决

  在/usr中(也可以在别处)创建一个大文件,然后做成loopback文件系统,将原来的文件移到这个文件系统中,并将它mount到/usr下合适的位置。这样可以大大减少你/usr中的文件数目。但是系统性能会有点损失。

  三 单个目录下文件数限制

  原来以为Linux下单个目录内有文件数量限制,Google了一番没有看到明确的说法,到是Freebsd下有65535的限制,通过重新编译内核可以更改。(可以看看/usr/include/sys/syslimits.h)

  不过不建议在一个目录下放太多文件,会影响系统性能。

  补充: ulimit -a 命令查看所有的限制,并能临时改变限制。

分享到:
评论

相关推荐

    Linux FTP服务配置

    最终权限等于配置文件中的权限和linux文件系统权限相或的结果。比如vsftp配置文件中允许匿名用户下载,但光这样是不够的,还需要被下载的文件或文件夹的能够被其他用户读取。 尝试上传文件失败,符合匿名用户只允许...

    第5章linux文件权限及设置命令

    文件权限定义了对某个文件或目录的访问限制。每个文件或目录都有9个基本权限位控制其读、写、执行。(第4章开头有介绍) 字符 权限 对文件的含义 对目录的含义 r 读权限 可以读文件的内容 可以列出目录中的文件列表 ...

    Linux操作系统基础教程

    一.Linux的文件系统结构.....................................................................................................6 二. 文件类型................................................................

    RED HAT LINUX 6大全

    9.2.2 .htaccess文件和访问限制 160 9.3 虚拟主机 161 9.3.1 基于地址的虚拟主机 161 9.3.2 基于名字的虚拟主机 162 9.4 日志记录 163 9.5 CGI和SSI 164 9.5.1 CGI 164 9.5.2 SSI 164 9.5.3 基本SSI指令 165 9.5.4 ...

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

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

    硬盘的文件系统结构

    引导程序的主要任务在当根目录中寻找系统文件IO.SYS,MSDOS.SYS和WINBOOT.SYS三个文件,如果存在,就把IO.SYS文件读入内存,并移交控制权予该文件。在WIN98的系统中,没有MSDOS.sys文件,系统能够正常启动,但是无法...

    Linux指令一周通 (技术图书大系).azw3

    3.22 mcd指令:在MS-DOS文件系统中切换工作目录 3.23 mdeltree指令:删除MS-DOS 目录/文件 3.24 mdu指令:显示MS-DOS目录所占用的磁盘空间 3.25 mformat指令:对MS-DOS文件系统的磁盘进行格式化 3.26 mkbootdisk指令...

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

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

    rsync备份海量文件时占用大量内存的解决方法

    备份的时候,rsync扫描到的每个文件(目录也一样),在它的列表中约占100字节的内存,如果加了–delete参数的话,占用的内存会更多。 例如我这里一台服务器,约800万的图片,而且更新比较频繁,文件数增长比较快,...

    LINUX 24学时教程

    16.1 了解Linux操作系统的图形文件格式 262 16.2 转换及观察图形 267 16.2.1 使用GIMP软件编辑图形 268 16.2.2 使用Image Magick软件进行 图像编辑 271 16.2.3 使用xv命令观看图形 272 16.2.4 使用gv命令查看Post...

    企业级Linux服务攻略

    6.3.6 限制服务器连接数 6.3.7 定制FTP目录欢迎信息 6.3.8 限制下载速度 6.3.9 FTP的启动与停止 6.3.10 FTP应用案例Ⅱ 6.4 高级服务器配置 6.4.1 设置VSFTP虚拟账号 6.4.2 使用xinetd控制vsftpd 6.5 客户端配置 ...

    linux复习题

    1. Linux系统中有三种基本的文件类型:普通文件、目录文件和 设备文件 。 2. 在超级用户下显示Linux系统中正在运行的全部进程,应使用的命令及参数是 ps -aux 。 3. 将前一个命令的标准输出作为后一个命令的标准输入...

    应用程序注册为系统服务,支持WindowsLinux.zip

    功能特点 NewLife.Agent是一个服务管理框架,用于开发随系统自动启动的长时间运行后台应用程序,支持Windows/Linux。 ...支持配置文件修改服务名,一个应用程序可在多个目录上部署为不同的系统服务

    《计算机操作系统》期末复习指导

    •文件系统 = 文件管理程序(文件和目录的集合)+ 它所管理的全部文件; •文件系统是用户与外存的接口; •为用户提供统一方法(以数据记录的逻辑单位),访问存储在物理介质上的信息。 2、文件...

    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 ...

    Linux FTP服务搭建

    anon_mkdir_write_enable=NO 关闭匿名用户创建目录和写入文件的权限 anon_other_write_enable=NO 关闭匿名用户删除、改名的权限 安全调整: anon_world_readable_only=YES 匿名用户对任何资源最多只有只读权限 hide_...

    LINUX FTP设置方法

    ftp命令的功能是在本地机和远程机之间传送文件。 该命令的一般格式如下: ftp 主机名/IP 最常用的命令有: ls 列出远程机的当前目录 cd 在远程机上改变工作目录 lcd 在本地机上改变工作目录 ascii 设置文件...

    工控安全职业证书技能实践:网络服务安全权限配置实战.docx

    此实验主要内容是掌握基于linux的工控系统的限制网络访问安全配置和防止攻击安全配置,掌握ssh服务端口的修改。 实验目标 掌握基于linux的工控系统的限制网络访问安全配置 掌握基于linux的工控系统的防止攻击安全...

    windows下svn的pre-commit钩子

    一为hooks的目录,一为svn服务器端的svnlook所在的目录),即可限制svn客户端的提交情况,例如文件后缀、日志、文件总大小、文件个数等,也可以设置超级用户名,不受限制。注意看注释,最好有一定的批处理基础,更...

Global site tag (gtag.js) - Google Analytics