我想在我的系统上运行一些测试,为此我想模拟一个慢速文件系统。
有没有简单的选择?(我目前的想法是通过 TCP 挂载一些东西,即使是本地的,然后使用 iptables 来限制该特定 TCP 连接的速度)
在 Linux 环境中,有时我需要以 root 身份运行脚本,该脚本将在我的 fs 上添加/修改多个文件。
基本上我想确切地知道哪些文件被修改以及如何修改而无需打开脚本并尝试猜测代码。
我正在考虑使用类似 unionfs 的东西:主 fs 可以在只读模式下访问,所有更改都写在用作分区的文件上,并以写入模式“挂载”。
是否有其他方法可以实现相同的目标(即除了 unionfs 之外)?
我有一个 1TB 的消费级 NAS,我可以使用我喜欢的任何文件系统。我只打算在基于 linux 的系统上使用它,所以 Windows 兼容性并不是真正的优先事项。用于归档的最佳文件系统是什么?JFS?分机3?分机4?btrfs?
我们这里有来自戴尔的 PowerVault NX3100。我必须在这个系统上安装一个 Linux 服务器,但不知道我应该使用哪个文件系统以及哪个分区布局可用于具有 2x8 2TB 磁盘(有效 14TB,RAID 5)的 RAID。
我知道当与默认块大小一起使用时,ext3 会导致 fss > 2TB 出现问题。
我倾向于使用带有两个 8TB 分区的 XFS。您认为这是一个不错的选择吗?是否可以(或推荐)为该系统使用 LVM?我应该只使用一个还是几个 fss?我想尽量减少 fsck 或 check_xfs 的时间。
我在 linux (Red Hat) 系统上有三个目录。说 /usr/local/one、/usr/local/two 和 /usr/local/three。我想要一种机制,它的行为就像一个目录,它将一、二和三的内容组合到 /opt/oneTwoThree 中,而无需物理移动它们的文件内容。
IE..
$ find /usr/local/
/usr/local/one
/usr/local/one/aaa
/usr/local/one/bbb
/usr/local/three
/usr/local/three/fff
/usr/local/two
/usr/local/two/ccc
/usr/local/two/ddd
/usr/local/two/eee
$ find /opt/oneTwoThree
/usr/local/oneTwoThree
/usr/local/oneTwoThree/aaa
/usr/local/oneTwoThree/bbb
/usr/local/oneTwoThree/fff
/usr/local/oneTwoThree/ccc
/usr/local/oneTwoThree/ddd
/usr/local/oneTwoThree/eee
Run Code Online (Sandbox Code Playgroud) 寻找一些意见,如果有人用他们有信心的解决方案克服了这个问题。
希望建立一个容错的网络环境。所以设置是负载均衡器后面的几个节点。现在 Web 开发人员可以通过 ssh 连接到 1 个服务器来编辑代码等。
我正在考虑 glusterfs,但将 glusterfs 文件系统作为文档根目录会导致网络服务器可以提供的页面减少约 20-30%。我期待这一点,因为我只通过以太网而不是 infiband 之类的。
所以我在考虑使用 glusterfs+inotify。所以我有一个 inotify 脚本正在运行,它监视 docroot 和 gluster 挂载的变化,并在被更改的文件/目录上执行 rsync。这种方式 apache 可以从本地磁盘而不是 gluster 提供服务,但它提供了通过集群文件系统提供服务的效果。
我唯一的问题是我需要运行 2 个 inotify 脚本,并且对于我们正在运行的文件计数,以添加我将使用大约 700 兆内存的所有 inotify 观察程序。
所以有人有任何建议或指示吗?
谢谢!
编辑
把它想象成一个虚拟主机。客户端通过 ssh 连接到 1 个服务器,但他们创建/编辑/删除的文件在所有其他节点上
反之亦然。如果网络服务器创建文件,它们也需要在所有节点上。
所以这会抛出一个直接的 rsync,因为它太慢了。
目前我有一个 btrfs 挂载点,其结构如下:#
/mountpoint/month/day/hourAs24/
每个叶目录包含 5,000 到 20,000 个小文件。我在那里保存了两个月的文件。每天我都会使用命令删除超过 60 天的目录
rm -R /mountpoint/month/day/
此命令需要很长时间才能运行,并且该命令运行时服务器上的负载非常高。
/mountpoint/month/每天在下面创建 btrfs 子卷,然后在一个命令中清除子卷会更好吗?
有没有其他快速和轻量级的解决方案可以在单个命令中删除一个 btrfs 目录下的文件?
编辑:
澄清情况。在结构中,文件夹month,day和hourAs24是由当前日期时间的相应值替换的变量。
解决后编辑: 它在我的测试机器上运行顺利。并且以下所有作品都在安装了挂载点的情况下生效!首先,我为每个月创建普通目录
mkdir /mountpoint/month
然后我为每月的每一天创建 btrfs 子卷
btrfs subvolume create /mountpoint/month/day
然后我为一天中的每个小时创建普通目录
mkdir /mountpoint/month/day/hourAs24
60 天后,我可以轻松清除当天的目录
btrfs subvolume delete /mountpoint/month/day
(现在我必须等待 60 天才能看到生产服务器上的性能)
我有一个在 Ubuntu 8.10 上运行的 Postfix 邮件服务器,当/var/log/mail.log或任何其他文件达到恰好 2GB 的数据时,系统日志停止将任何数据写入文件。
通过 syslog 记录的文件是否有某种限制?
我正在与我的同事讨论我们是否应该每小时对有问题的文件进行一次 logrotate,并希望这能阻止他们达到此限制。如果我们有 2-3 小时的日志文件,那么大到足以发现任何大问题时就足够了。
我们在 Windows 服务器上有几个文件显示在目录列表中,但无法访问。我可以取得文件的所有权,ACL 显示每个人都有读/写/执行权限;但我无法打开文件。chkdsk 在卷上没有发现任何问题。
服务器是 64 位 Win 2008 R2 Standard SP1。
我们最近在这台服务器上出现了 BSOD,并且在崩溃前不久修改了文件。崩溃与任何文件系统无关,但我认为它损坏了内核内存中的某些内容并损坏了文件系统。
以下是我在尝试访问文件“com2.log”时看到的一些内容:
D:\Logs\Application>dir com2*
Volume in drive D is Data
Volume Serial Number is 84D5-FD84
Directory of D:\Logs\Application
09/07/2011 06:57 PM 169,025 com2.log
1 File(s) 169,025 bytes
0 Dir(s) 39,320,612,864 bytes free
D:\Logs\Application>dir com2.log
Directory of \\.
File Not Found
D:\Logs\Application>dir com2.*
Directory of \\.
File Not Found
D:\Logs\Application>cacls com2.log
The filename, directory name, or volume label syntax is incorrect.
D:\Logs\Application>more com2.log
Cannot access file \\.\com2 …Run Code Online (Sandbox Code Playgroud)