Articles of 文件系统

在另一个目录中查找文件

有没有find一个目录中的所有文件不在另一个目录中的Linux / Unix工具? 基本上我正在寻找在ls的输出上工作的diff。 简短和甜美的脚本也表示赞赏。

什么是存储虚拟机映像的最佳文件系统?

我正在计划如何分区我的硬盘。 我想要有2个分区 – 一个用于Ubuntu,主操作系统,另一个用于虚拟机镜像,因为我想通过VirtualBox运行Windows和MacOS虚拟机。 我的问题是 – 什么是最好的虚拟机分区的文件系统? 使用除FAT32或NTFS以外的文件系统在性能方面是否有优势?

有一种方法可以在进程写入时删除/截断文件吗?

我们有一个运行在Linux上的apache服务器写入日志文件,这个日志文件变得非常大(access_log)。 我们的服务器将开始用尽空间。 有没有办法删除或截断文件,而无需重新启动服务器(我们不希望任何停机时间)。

快速分布式文件系统中的大量数据与数据库中的元数据

我的项目使用几台处理机器和一台存储机器。 当前存储与MSSQL filetable共享文件夹组织在一起。 存储中的每个文件都有一些数据库元数据。 处理机器执行他们需要来自存储器的文件及其元数据的任务。 处理机完成任务后,将结果数据存回存储器。 从那里它被另外一台加工机器拿走了,这个加工机器也生成了一些文件并将其存回。 等等。 一切都很好,但随着处理机数量的增加,我发现自己瓶颈与存储硬盘的性能。 所以我想要处理机器把文件放到分布式FS中。 从存储设备中提取负载,从中可以从中获取数据,而不仅仅是存储设备。 你能提出一个满足我需求的特定分布式FS吗? 或者还有另一种方法来解决这个问题,没有它? 在一次FS中的数据量是几个兆兆字节。 (存储可以处理这个,但处理器不能)。 数据一致性至关重要。 读写策略是:一旦写入文件 – 它的常量,可能只能被删除,但不能修改。 我目前的平台是Windows,但如果在另一个方面有一个更方便的解决scheme,我已经准备好切换它。

是否有基于磁盘的文件系统专用的Linux内存caching?

我们有两个(或更多的)应用程序争夺OS页面caching。 特别是ElasticSearch非常依赖OS页面caching。 在低延迟的情况下,高速caching未命中可能会造成或中断性能。 ES是节点上唯一的低延迟应用程序,因此需要 OS页面caching。 由于整个索引不适合RAM加热器用于启动caching,但几个小时后,这些caching被其他应用程序丢弃。 我有一些想法和想法: RAMFS(但索引不适合内存,所以不去那里) TMPFS(但它不是通过重新启动并使用交换持续) 在Lucene / ES级别caching(似乎不存在,操作系统页面caching是他们的caching策略) 专用的硬件(这是很难certificate的,因为机器有足够的内存和CPU,只需要更好的使用它;再加上我们需要很多的节点)。 VMTouchlocking(没有办法真正检测什么时候ES要合并新的细分市场,需要解锁旧的文件,并映射新的) 全虚拟机(性能成本和额外的pipe理/pipe理) 一个专门的文件系统可以分割出预定义的内存块来进行caching。 但是由于ES / Lucene的devise限制,在这个时候我只想购买专用节点。

Btrfs可以使用SSD来获取元数据,并将批量数据留在硬盘上吗?

Btrfs是否有可能仅将SSD用于元数据,并将批量数据放在成本较低的存储设备上,如HDD? 我提到这个页面Using_Btrfs_with_Multiple_Devices并找不到解决scheme。 谢谢!

什么是收集文件系统使用统计信息的好工具?

我们有许多用于计算集群的文件系统,许多用户存储大量真正大的文件。 我们希望监视文件系统并帮助优化文件系统的使用情况,并计划扩展。 为此,我们需要一些方法来监视这些文件系统是如何使用的。 基本上我想知道关于这些文件的各种统计信息: 年龄 访问频率 上次访问时间 types 尺寸 理想情况下,这些信息将以任何目录的聚合forms提供,以便我们可以根据项目或用户对其进行监控。 我没有用Python写自己的东西,我还没有find任何能够履行这些职责的工具。 任何build议?

在一个目录中创build和安装包含> 10M文件的ext4卷的最佳选项

什么是适当的选项mkfs和mount ext4文件系统与文件夹包含> 1000万文件的读取权限? 我到目前为止: umount /media/dirsizetest mkfs.ext4 -L DIRSIZETEST -E lazy_itable_init=1 -E lazy_journal_init=1 -m 1 /dev/sda1 mount -t ext4 -o nodiratime /dev/sda1 /media/dirsizetest 一些情况是为了。 我正在做一个稍微(好,非常)疯狂的实验,涉及到看到不同文件系统如何用一个文件夹充满数以百万计的小文件。 最终我会填满1TB的容量来做这件事(我告诉你这是一个疯狂的实验!)。 访问模式是这样的: Recreate the volume from scratch (using mkfs) and mount it. Create a sub-directory, fill it with N files in sequence (named 1…N) (where N can be up to […]

MogileFS / GlusterFS / etc + Amazon EBS + Amazon EC2

我有一个Web应用程序,提供二进制文件(图像等)。 我们的应用程序在Amazon EC2上运行。 我们本来打算使用Amazon S3来存储和提供这些文件,这不再是一个选项。 我们需要使用CNAME通过HTTPS传输这些文件。 出于许多技术原因, Amazon S3显然是不可能的。 Amazon提供弹性块存储(EBS) ,允许您在一个实例上安装最大1TB的块。 我们将有多个实例并行访问这些数据。 我在想的是使用分布式文件系统,如MogileFS / GluserFS / [insert-more-here]和弹性块存储(EBS) 。 所以我的问题是:其他人目前正在做什么来在不使用Amazon S3的情况下在Amazon EC2上创build可扩展的(几个100TB)文件存储系统? 数据仍将在Amazon S3上进行备份,但是所有的读取操作都不在文件系统中。 先谢谢了。 如果有人需要澄清任何事情,请随时询问。

XFS上的高目录 – 文件比率的影响

我们正在构build一个可能会产生非常大的XFS卷的产品,并且我正试图发现在给定架构的情况下我们可能遇到的扩展瓶颈。 当我们操作文件时,它们被放置在XFS卷上的目录中。 由于我们处理的文件数量众多,文件数量肯定在数千万之内,而且在发布之后太久之前可能会达到数亿。 我们知道这是因为我们目前的产品是这样的,所以期待我们的下一个产品是类似的。 因此,正确的早期工程是有序的。 本周这些文件基于以下粗略布局: $ProjectID/$SubProjectID/[md5sum chunked into groups of 4]/file 其中给出了这样的目录: 0123456/001/0e15/a644/8972/19ac/b4b5/97f6/51d6/9a4d/file 分块md5sum的原因是为了避免“一大堆文件/目录在一个目录中”的问题。 由于md5sum分块,这意味着1个文件导致8个目录被创build。 这对inode有着非常明显的影响,但我不清楚一旦我们达到规模,对XFS的影响会是什么。 有什么影响? 顺便说一下,这是内核2.6.32,目前CentOS 6.2(如果需要可以更改)。 在testing中,我已经创build了默认的xfs卷,并没有使用任何安装选项。 这是为了早日排除问题。 因为我们不需要它,所以noatime是一件简单的事情。 总体来说,XFS调整是我需要解决的另一个问题,但现在我担心我们现在devise的元数据乘数效应。 我已经知道一个更好的解决scheme将是什么,我只是不知道是否有案件推动改变。 由于md5sums在第一个数字中是非常独特的,单个子项目很less超过500万个文件,所以在我看来,我们只需要前两个数据块。 这将产生如下的布局: 0123456/001/0e15/a644/897219acb4b597f651d69a4d/file 完全完整的第一级和第二级将在每个第一级目录中具有2 16个第一级目录和2 16个第二级目录,卷上总共有2 32个目录。 因此假设的5百万个文件子项目因此将具有2 16个第一级目录,每个大约76(+/- 2)个二级目录以及每个第二级目录中的一个或两个第三级目录。 这种布局有更多的元数据效率。 我只是不知道是否值得努力改变现在的情况。