我需要在 USB 驱动器中存储 100k 个文件(大约 40GB)。每个文件都有一个唯一的 int id(例如 45000)。
选项一是将所有文件放在一个文件夹中:
root/
root/1.pdf
root/2.pdf
root/3.pdf
...
root/567.pdf
root/568.pdf
root/569.pdf
...
root/10001.pdf
root/10002.pdf
root/10003.pdf
...
root/99998.pdf
root/99999.pdf
root/100000.pdf
Run Code Online (Sandbox Code Playgroud)
选项二是[1-9][0-9]*根据该 id创建文件夹层次结构:
root/
root/1/file.pdf
root/2/file.pdf
root/3/file.pdf
...
root/5/6/7/file.pdf
root/5/6/8/file.pdf
root/5/6/9/file.pdf
...
root/1/0/0/0/1/file.pdf
root/1/0/0/0/2/file.pdf
root/1/0/0/0/3/file.pdf
...
root/9/9/9/9/8/file.pdf
root/9/9/9/9/9/file.pdf
root/1/0/0/0/0/0/file.pdf
Run Code Online (Sandbox Code Playgroud)
哪个选项会更好地扩展?我可以理解第二个选项将需要大量文件夹,但每个文件夹最多包含 10 个文件夹和 1 个文件。维护不会成为问题,因为一切都将由应用程序控制。
请注意,这是 linux 上的 USB 驱动器,基于上述内容,我还想知道我应该使用 FAT32 还是 NTFS。
几个月前,我在我的一个分区上创建了一个 ext3 文件系统。我收到以下消息:
"mkfs.ext3 /dev/sddx; system will be checked every 20 mounts or 180 days; use
tune2fs -c or -i to override".
如何确定此文件系统已挂载多少次?
不幸的是,我别无选择,只能将服务器上的 ext3 分区中的一些文件备份到不允许我设置和编辑正常文件属性的文件系统(NFS,将 all_squash 设置为 chgrp/chown 等,即使 root 是被禁止的) )。我计划使用 rsnapshot 进行实际备份,因为我已经熟悉这一点并且它在其他场景中运行良好。
显然,我希望以某种方式保留这些备份的权限、所有权和其他属性,即使它不直接与文件本身有关。在我看来,剩下三个选项:
这些都不理想:
find+stat会有点浪费,但更重要的是从该信息中恢复会很繁琐。我可以编写一个小工具(在 C 中)来调用stat,将结构转储到文件并从该结构中恢复适当的信息,但这对于一些应该是微不足道的事情来说似乎是很多工作。建议?我倾向于解决方案 #3,除非它已经存在或者 #2 比我认为的更琐碎。我想要一些不需要重新发明任何轮子的简单而强大的东西,但是如果它们真的有用,我愿意编写新的轮子。
backup filesystems permissions backup-restoration file-permissions
我计划(私下)部署一个服务器,该服务器将在 100MB 到 50GB 的文件中使用随机 I/O。请求的范围从 128 KB 到 4MB。配置文件将是 50:50,涉及读取和写入,并有更多读取的趋势。
什么文件系统可以最好地处理这种负载?我现在选择了 XFS。但是我应该研究哪些可调参数?
谢谢
我只是想知道在使用 Windows Server 作为文件服务器而不使系统脱机执行 chkdsk /f 或 chkdsk /r 时,人们如何处理持续的文件系统稳定性?显然,人们并不真的希望文件服务器不可用……而文件服务器现在拥有如此多的存储空间,以至于运行 chkdsk 可能需要数天时间……那么您如何保护数据免受损坏?
我目前有两个 CentOS Box,为多个 Web 服务器提供 NFS 服务。
有人可以推荐一个文件系统,它可以轻松有效地镜像这两个服务器上的所有文件吗?
我过去曾使用过 DRBD,但是它的缺点是一次只能安装在一个系统上。
假设我们有一个常规文件和两个与之相连的符号链接。我听说有时不能用硬链接替换符号链接,但我不知道什么时候。
如何在上传之前在本地计算机上测试 PHP 脚本?我对此有点陌生,因此为简单而感到抱歉。如果有帮助,我的域提供商安装的 PHP 版本是5.2.2。
编辑:好吧,大家放心,我运行的是 Windows 7 x64
我正在构建一个服务,我需要在文件系统上存储大量文件。过去我听说处理大量文件时最好按文件夹分隔文件。这对于 ext3、ext4 和 btrfs 等现代 Linux 文件系统来说真的准确吗?如果是这样,我应该分割多少文件?我应该将 1000 个文件保存在一个文件夹中吗?
我目前的设置将它们分为数百、数千、数万和数十万,如下所示:
stream id: 123456
1/2/3/4/123456.file
stream id: 654321
6/5/4/3/654321.file
stream id: 5
0/0/0/0/5.file
Run Code Online (Sandbox Code Playgroud)
这对我的申请有意义吗?
此服务器配置了 RAID-1。它每天都获得只读文件系统。如果我重新启动它,它会返回一个读写文件系统。但过了一会儿,又只读了...
请问有什么想法吗?谢谢。
# dmesg |grep 错误 VFS:无法在设备 cciss/c0d0p8 上写入配额结构(错误 -30)。配额可能不同步! VFS:无法在设备 cciss/c0d0p8 上写入配额结构(错误 -30)。配额可能不同步! VFS:无法在设备 cciss/c0d0p8 上写入配额结构(错误 -30)。配额可能不同步! VFS:无法在设备 cciss/c0d0p8 上写入配额结构(错误 -30)。配额可能不同步! VFS:无法在设备 cciss/c0d0p8 上写入配额结构(错误 -30)。配额可能不同步! VFS:无法在设备 cciss/c0d0p8 上写入配额结构(错误 -30)。配额可能不同步! VFS:无法在设备 cciss/c0d0p8 上写入配额结构(错误 -30)。配额可能不同步! VFS:无法在设备 cciss/c0d0p8 上写入配额结构(错误 -30)。配额可能不同步! EXT3-fs 错误(设备 cciss/c0d0p8):ext3_lookup:目录中未链接的 inode 71927230 #71927229 EXT3-fs 错误(设备 cciss/c0d0p8):ext3_lookup:目录中未链接的 inode 71927273 #71927229 EXT3-fs 错误(设备 cciss/c0d0p8):ext3_lookup:目录中未链接的 inode 71927333 #71927229 EXT3-fs 错误(设备 cciss/c0d0p8):ext3_lookup:目录中未链接的 inode 71927712 #71927229 EXT3-fs 错误(设备 cciss/c0d0p8):ext3_lookup:目录中未链接的 inode 71929238 #71927229 EXT3-fs 错误(设备 cciss/c0d0p8):ext3_lookup:目录中未链接的 inode 71929464 #71927229 EXT3-fs 错误(设备 cciss/c0d0p8):ext3_lookup:目录中未链接的 inode 71929704 …