Articles of 文件系统

在windows文件夹中有太多的文件会有性能损失吗?

在一个Windows操作系统(Server 2003,XP,Vista,Win7等),是否有一个单一的文件夹中有太多的文件的性能损失? 文件夹扫描会变慢(在Windows资源pipe理器中查看文件夹时)? 直接访问会变慢(例如,将文件复制到此文件夹中)? 是否有一个图表显示与文件数量的速度相关性? 我注意到有时系统有大量的文件(日志文件等)会将文件分解成文件夹层次结构,每个文件夹只包含一小部分项目。 有没有技术上的好处,还是这个背后的缩影考虑?

IIS不能在文件名中提供带重音和空格的文件

我的服务器最近停止了在文件名中使用重音和空格的文件。 一个例子: http://jf-monteabraao.pt/UserFiles/File/OP%C3%87%C3%95ES%20DO%20PLANO%20-%20OR%C3%87AMENTO%202010.pdf 除UrlScan之外,我没有安装任何东西,但是在urlscan.ini找不到与问题相关的任何urlscan.ini 。

关于闪存驱动器的rest时间和noatime

我正在使用SheevaPlug运行Web服务器,操作系统和系统存储在带有ext3文件系统的SD卡上。 我知道,一段时间是写入闪存的主要来源。 这个问题build议在noatime之上使用relatime mount选项,但也不清楚这是否也适用于闪存(写入的总数也是一个问题)。 这个引用了kerneltrap的博客以及另一个问题意味着使用noatime选项不会产生任何问题,在这种情况下,它似乎更可取。 那么使用noatime会更好,避免一次完全写入,或者使用relatime来避免任何软件问题?

远程文件系统(nfs ssfhs)如何处理远程到远程的拷贝?

在使用sshfs处理几个大文件之后,我开始想起一个问题。 假设我有一个sshfs (或NFS为此)挂载~/remodetir ,我想要做的事情 cp ~/remotedir/foo ~/remotedir/some/weird/path/bar 是否sshfs(或NFS)以一种聪明的方式处理它,或者只是因为cp命令在我的本地CPU中运行而来回传输文件?

zfs重命名/将根文件系统移动到子级

类似的问题存在,但解决scheme(使用mv )是可怕的,因为在这种情况下,它作为“复制,然后删除”,而不是纯粹的“移动”。 所以,我创build了一个池: zpool create tank /dev/loop0 并从那里直接从另一个存储rsynce我的数据,所以我的数据现在在/tank 。 zfs list NAME USED AVAIL REFER MOUNTPOINT tank 591G 2.10T 591G /tank 现在我已经意识到我需要将数据存储在子文件系统中,而不是直接存储在/tank文件系统中。 那么如何移动或重命名现有的根文件系统,使其成为池中的一个子项? 简单重命名将不起作用: zfs rename tank tank/mydata cannot rename to 'tank/mydata': datasets must be within same pool (顺便说一下,为什么它会抱怨数据集不在同一个池中,如果事实上我只有一个池?) 我知道有解决scheme涉及复制所有的数据( mv ,或发送整个数据集到另一个设备,并返回),但不应该有一个简单的优雅的方式? 只是指出,我不在乎这个阶段的快照(有没有关心)。

编写某些会话文件名时出现“设备上没有剩余空间”错误

我有一些无法写入的文件名(会话文件)(“设备上没有剩余空间”)。 其他文件名(相同的目录)都很好。 磁盘未满。 文件系统是ext3 尝试创build文件时,PHP发生错误,但错误可以在命令行上重现: # less /path/to/session_data/sess_u2q1pfelfr0jof3mp38jb2eaj1 /path/to/session_data/sess_u2q1pfelfr0jof3mp38jb2eaj1: No such file or directory # touch /path/to/session_data/sess_u2q1pfelfr0jof3mp38jb2eaj1 touch: cannot touch `/path/to/session_data/sess_u2q1pfelfr0jof3mp38jb2eaj1': No space left on device # touch /path/to/session_data/sess_u2q1pfelfr0jof3mp38jb2eaj0 # less /path/to/session_data/sess_u2q1pfelfr0jof3mp38jb2eaj0 # ls -al /path/to/session_data/sess_u2q1pfelfr0jof3mp38jb2eaj1 ls: /path/to/session_data/sess_u2q1pfelfr0jof3mp38jb2eaj1: No such file or directory 请注意不同的文件名。 似乎没有任何模式,但它确实只影响某些文件名,而且似乎无法写入。 为了进一步使事情复杂化,这是一个OpenVZ服务器,但是你不能从虚拟服务器或者硬件节点写/创build这些文件名。 该目录中有很多文件(写入时为18,456,002),但是没有inode问题,并且磁盘肯定没有满。 根据要求,df输出: [root@web1 session_data]# df -h Filesystem Size Used […]

Samba / CIFS Ubuntu 14.04挂载错误(112)

我试图用cif在Ubuntu 14.04上挂载一个sambanetworking共享。 在服务器上,我正在运行共享。 我已经可以将其映射为Windows中的驱动器。 该共享有一个用户名和密码。 在Ubuntu的机器上,我有/etc/samba/user保存凭据。 我也有我要安装共享/mounthere安装的目录。 我在/ etc / fstab上有这个 //192.168.1.1/sharename /mounthere cifs credentials=/etc/samba/user 0 0 当我做sudo mount -a我得到这个错误: mount error(112): Host is down 主持人不下来。 我已经在Windows上运行它。 我已经仔细检查了凭据和可能的防火墙问题。 我也安装了cifs-utils 。 anyboby可以指向正确的方向吗? 谢谢!

硬盘问题“只读”

我有一个问题,当我几个小时后挂载我的分区时,它变成只读。 目前我运行: fuser -m -k /dev/sdb1 umount /dev/sdb1 fsck -y /dev/sdb1 mount /dev/sdb1 这使我可以重新读取/写入它,但这是一个重复发生的问题。 我的问题是我怎么能解决这个问题。 它看起来像是硬件还是软件问题? 这是目前在一个CentOS的64位盒。 当我运行dmesg我看到这个: EXT3-fs error (device sdb1): ext3_lookup: unlinked inode 36127046 in dir #36126721 Aborting journal on device sdb1. __journal_remove_journal_head: freeing b_committed_data __journal_remove_journal_head: freeing b_committed_data ext3_abort called. EXT3-fs error (device sdb1): ext3_journal_start_sb: Detected aborted journal Remounting filesystem read-only “smartctl -a […]

rsync很多带有长文件名的小文件需要很多的带宽

我有一个文件存储服务器,它使用文件sha256散列作为文件名,连同文件扩展名,以及三级目录,例如带有sha256散列的PDF文件,将文件存储在AABB1F1C6FC86DB2DCA6FB0167DE8CF7288798271EA24B68D857CBC5CF8DC66A将存储在如下所示的子目录中: <root>/AA/BB/AABB1F1C6FC86DB2DCA6FB0167DE8CF7288798271EA24B68D857CBC5CF8DC66A.pdf 文件将被添加到目录结构中,但不会被删除或修改。 我使用每10分钟运行一次的使用rsync将文件推送到远程服务器的cron作业来保存此文件结构的实时副本。 由于文件一旦添加就不会被删除或更改,实际上只会发送新文件。 我发现rsync用于比较两个目录(即没有变化)的带宽大约是11 MB,随着文件总数的增加(此时为148 207)。 这是有道理的 – rsync实际上必须发送一个所有的文件名列表到远程服务器,以找出远程服务器上缺less的。 所以我的问题是: 有没有办法减less使用的带宽? 它不一定是一个基于rsync的解决scheme,但它会更好。 我正在考虑将rsync查看的文件限制为最近修改的文件,即在上次同步之后进行了修改,但似乎并不推荐: rsync只是在date和时间之后创build或修改的文件 还有其他build议吗?

Linux没有修改时间(nomtime)

有没有办法来禁用文件系统的mtime? 有一个Filesystem independend noatime选项,但没有“nomtime”。 另外在文件系统ext4和/或btrfs的特定文档,我找不到这个。 这是否存在?