Linux下为什么限制文件数。
5个回答
展开全部
不明白你在问什么。
------------------------
还是不明白你到底遇到了什么问题。Linux 下面的虚拟机和文件个数有什么直接关系么?
------------------------
IDC??是虚拟主机吧……不是 vmware 或者 virtualbox 虚拟机吧……
这个很正常啊,文件系统的每个用户 ID 的磁盘容量限额是可以同时设置容量和文件数的。
至于为啥?你去问 IDC 机房吧……他们就是不想让你放那么多文件。这都是人设置的,又不是技术限制。
不过技术限制还是有的,比如磁盘的最小分配空间是 4k 的话,4M 容量就确实只能放下 1024 个文件,算过来,400M 也就放下 100000 文件多点,所以人家设置文件数量限制也是有理由的。而且现在的服务器用文件系统,如果你的文件体积很小,完全可以全都放进目录结构里面而不需要分配磁盘数据空间,这样你就变相的没有占用你的配额(不过应该没有人这么极端)。但你占用的是整个磁盘分区的总文件数量限制(这个是有技术限制的)。
所以很多人为了保证服务器的稳定和磁盘性能,有的会限制一下文件数量。
不过一般情况下没必要。
------------------------
还是不明白你到底遇到了什么问题。Linux 下面的虚拟机和文件个数有什么直接关系么?
------------------------
IDC??是虚拟主机吧……不是 vmware 或者 virtualbox 虚拟机吧……
这个很正常啊,文件系统的每个用户 ID 的磁盘容量限额是可以同时设置容量和文件数的。
至于为啥?你去问 IDC 机房吧……他们就是不想让你放那么多文件。这都是人设置的,又不是技术限制。
不过技术限制还是有的,比如磁盘的最小分配空间是 4k 的话,4M 容量就确实只能放下 1024 个文件,算过来,400M 也就放下 100000 文件多点,所以人家设置文件数量限制也是有理由的。而且现在的服务器用文件系统,如果你的文件体积很小,完全可以全都放进目录结构里面而不需要分配磁盘数据空间,这样你就变相的没有占用你的配额(不过应该没有人这么极端)。但你占用的是整个磁盘分区的总文件数量限制(这个是有技术限制的)。
所以很多人为了保证服务器的稳定和磁盘性能,有的会限制一下文件数量。
不过一般情况下没必要。
展开全部
linux系统的ext3文件系统一级子目录的个数默认为31998(个),准确地说是32000个。
Linux为了cpu的搜索效率而规定的,要想改变数目限制需要重新编译内核。在kernel代码中有这样的定义:
include/linux/ext2_fs.h:#define EXT2_LINK_MAX 32000
include/linux/ext3_fs.h:#define EXT3_LINK_MAX 32000
为什么说31998个呢?这是因为mkdir创建一个目录时,目录下默认就会创建两个子目录的,一个是.目录(代表当前目录),另一个是..目录(代表上级目录)。这两个子目录是删除不掉的,“ rm . ” 会得到“rm: cannot remove `.' or `..'”的提示。所以32000-2=31998。
Linux为了cpu的搜索效率而规定的,要想改变数目限制需要重新编译内核。在kernel代码中有这样的定义:
include/linux/ext2_fs.h:#define EXT2_LINK_MAX 32000
include/linux/ext3_fs.h:#define EXT3_LINK_MAX 32000
为什么说31998个呢?这是因为mkdir创建一个目录时,目录下默认就会创建两个子目录的,一个是.目录(代表当前目录),另一个是..目录(代表上级目录)。这两个子目录是删除不掉的,“ rm . ” 会得到“rm: cannot remove `.' or `..'”的提示。所以32000-2=31998。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
没有限制文件个数吧
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
1、创建文件系统时,会将存储介质(磁盘)按照一定的比例,划出一部分区域作为存储文件名(目录名)使用,每个文件(目录)项在linux的ext文件系统中叫做一个inode,每个inode大小是固定的,划出的inode区用完时,就不能再创建文件了,也就是到达了文件最大数目的限制。
其实由于存储介质的容量都是有限的,所以所有的文件系统都有文件数量限制,但可以根据实际使用中大多数文件的大小及数量的具体需求,调整一个文件系统上的文件数限制。
2、另外,Linux主多用户操作系统,为了均衡系统所有用户的需求,对每个用户使用的系统资源也有限制(参考/etc/security/limits.conf),其中就包括每个用户同时打开的文件数、文件尺寸、cpu占用时间、登录数、内存使用限制等。可查看《Linux就该这么学》了解更多介绍。
其实由于存储介质的容量都是有限的,所以所有的文件系统都有文件数量限制,但可以根据实际使用中大多数文件的大小及数量的具体需求,调整一个文件系统上的文件数限制。
2、另外,Linux主多用户操作系统,为了均衡系统所有用户的需求,对每个用户使用的系统资源也有限制(参考/etc/security/limits.conf),其中就包括每个用户同时打开的文件数、文件尺寸、cpu占用时间、登录数、内存使用限制等。可查看《Linux就该这么学》了解更多介绍。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你说的的确不清除,是打开文件数还是创建文件数?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |