首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    linux下文件数、目录数、文件名长度的各种限制

    以下测试都是在没有优化或修改内核的前提下测试的结果 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等

    02

    从入门到实战Hadoop分布式文件系统

    当数据集的大小超过一台独立物理计算机的存储能力时,就有必要对它进行分区并存储到若干台独立的计算机上。管理网络中跨多台计算机存储的文件系统成为分布式文件系统。该系统架构与网络之上,势必会引入网络编程的复杂性,因此分布式文件系统比普通磁盘文件系统更为复杂。例如,使文件系统能够容忍节点故障且不丢失任何数据,就是一个极大的挑战。   Hadoop有一个成为HDFS的分布式系统,全程为hadoop distrubuted filesystem.在非正式文档中,有时也成为DFS,它们是一会儿事儿。HDFS是Hadoop的旗舰级文件系统,同事也是重点,但事件上hadoop是一个综合性的文件系统抽象。   **HDFS的设计**   HDFS以[流式数据访问模式](http://www.zhihu.com/question/30083497)来存储超大文件,运行于商用硬件集群上。关于超大文件:   一个形象的认识:   荷兰银行的20个数据中心有大约7PB磁盘和超过20PB的磁带存储,而且每年50%~70%存储量的增长,当前1T容量硬盘重约500克,计算一下27PB大约为 27648个1T容量硬盘的大小,即2万7千斤,约270个人重,上电梯要分18次运输(每次15人)。  1Byte = 8 Bit  1 KB = 1,024 Bytes   1 MB = 1,024 KB    1 GB = 1,024 MB  1 TB = 1,024 GB   **1 PB = 1,024 TB**   **1 EB = 1,024 PB**   **1 ZB = 1,024 EB**   **1 YB = 1,024 ZB** = 1,208,925,819,614,629,174,706,176 Bytes

    04

    linux下的 du命令 用于做什么,用法是怎样的?

    命令用途 du(disk usage)命令可以计算文件或目录所占的磁盘空间。没有指定任何选项时,它会测量当前工作目录与其所有子目录,分别显示各个目录所占的快数,最后才显示工作目录所占总快数。 命令格式 du [OPTION]… [FILE]… -a, –all 包括了所有的文件,而不只是目录 –apparent-size print apparent sizes, rather than disk usage; although the apparent size is usually smaller, it may be larger due to holes in (’sparse’) files, internal fragmentation, indirect blocks, and the like -B, –block-size=SIZE use SIZE-byte blocks -b, –bytes 以字节为计算单位 -k             以千字节(KB)为计算单位 -m            以兆字节(M)为计算单位 -c, –total 最后加上一个总计(系统缺省) -D, –dereference-args dereference FILEs that are symbolic links -H    跟 - -si效果一样。 -h, –human-readable   以比较阅读的方式输出文件大小信息 (例如,1K 234M 2G)。注:该选项在很多其他命令(df, ls)中也有效。 –si   跟-h 效果一样,只是以1000为换算单位 -l, –count-links 计算所有的文件大小,对硬链接文件,则计算多次。 -L, –dereference 显示选项中所指定符号连接的源文件大小。 -P, –no-dereference 不跟随任何的符号连接(缺省) -S, –separate-dirs 计算目录所占空间时不包括子目录的大小。 -s, –summarize      只显示工作目录所占总空间 -x, –one-file-system 以一开始处理时的文件系统为准,若遇上其它不同的文件系统目录则略过。 -X FILE, –exclude-from=FILE 排除掉指定的FILE –exclude=PATTERN 排除掉符合样式的文件,Pattern就是普通的Shell样式,?表示任何一个字符,*表示任意多个字符。 –max-depth=N 只列出深度小于max-depth的目录和文件的信息 –max-depth=0 的时候效果跟–s是 一样

    03

    Linux文件属性详解

    文件存储在硬盘上,硬盘的最小存储单位叫做"扇区"(sector)。每个"扇区"的大小为512字节(byte), ,操作系统读取硬盘的时候,不会一个个扇区的读取,这样效率太慢。他是一次性读取多个扇区,即一次性读取一个"Block块"。一个Block有8个连续的扇区(sector)组成。 数据都存在Block块里面,但是我们怎么知道一个数据存放在哪些Block块里面呢?这个时候就必须需要一个索引,引导我们去找到哪些存放在BLOCK块里面的额数据。这存放索引的地方我们称为索引节点(Inode),索引节点里面包括了:文件的类型,属主,属组,权限,和时间戳一些信息,但是不包括文件名, 1.1.2 inode包含的内容

    02
    领券