linux文件系统下的一个目录中最多可以存放多少个文件?
linux的ext3文件系统一级子目录的个数默认为31998(个),准确地说是32000个。Linux为了cpu的搜索效率而规定的,要想改变数目限制需要重新编译内核。在kernel代码中有这样的:
include/linux/ext2_fs.h:#define EXT2_LINK_MAX 32000include/linux/ext3_fs.h:#define EXT3_LINK_MAX 32000为什么说31998个呢?
这是因为mkdir创建一个目录时,目录下默认就会创建两个子目录的,一个是.目录(代表当前目录),另一个是..目录(代表上级目录)。
这两个子目录是删除不掉的,“ rm . ” 会得到“rm: cannot remove `.' or `..'”的提示。所以32000-2=31998。ext3文件系统下单个目录里的最大文件数无特别的限制,是受限于所在文件系统的inode数。
内存卡格式化~“文件系统”还有“分配单元大小”选多少?
也不一定,看文件内容,如果是琐碎文件比较多,那分配单元越小速度会越快,反正越大越快,当然是在一个范围内。
一般手机或者数码相机使用的存储卡还是建议格式化为fat或者fat32,32k或者16k,这样兼容会比较好,不容易出现找不到卡的现象。
linux下一个目录中最多可存放多少个文件数?
那要看使用哪个文件系统了。
更多的子目录数量
Ext3目前只支持32000个子目录,而Ext4取消了这一限制,理论上支持无限数量的子目录。
更多的块和i-节点数量
Ext3文件系统使用32位空间记录块数量和i-节点数量,而Ext4文件系统将它们扩充到64位。
linux限制特定文件大小?
Linux下由于某些用途需要限制个别文件夹大小,可以使用镜像文件挂载的形式来实现。
1、 创建一个指定大小的磁盘镜像文件:dd if=/dev/zero of=/root/disk.img bs=2M count=10。这样就创建了一个大小为20M的磁盘镜像。
2、 挂载为设备:losetup/dev/loop0 /root/disk.img3、 格式化设备:mkfs.ext3/dev/loop04、 挂载为文件夹mkdir /testmount -t ext3 /dev/loop0 /test 这样/mnt/disk1这个文件夹只能使用20M的空间。 5、卸载方法,先卸载文件夹:umount /test6、卸载设备:losetup -d /dev/loop07、如果不再使用可以直接删除镜像文件:rm -f /root/disk.img注意事项:如果loop0不可用可挂载到loop1/loop2/loop3等等。
文件名头的字符多大?
文件名和目录名在操作系统中都有最大长度的限制,而且不同系统中的最大长度不同。
这些限制在Linux系统下可以通过修改系统内核修改这个限制。
Linux文件名的长度限制是255个字符
windows下完全限定文件名必须少于260个字符,目录名必须小于248个字符。
win7x64位环境:
260个长度是作为总的文件名长度限制。
例如: 所在文件夹的长度为50
则文件名的长度被限制在210之下,超出的话会被进行截断。
如果在程序中的话,超出长度的话MoveFile/CopyFile会返回错误,处理失败。