小编Max*_*yak的帖子

从 XFS 中获取 64kb 块大小的文件

我一直在执行一项任务,从我曾经在 RAID 1 中的 2 个完美工作、未损坏、未加密的 NAS 驱动器中的一个中恢复文件。 NAS 是 Patriot Javelin S4,它(正如我从我的研究中发现的那样) ) 使用 Promise Fasttrack 假突袭控制器。

这方面的信息非常稀少,因此对于处于相同情况的谷歌人来说,这里有一些关于这个 NAS 的事实:

  • RAID 控制器:Promise FastTrack (FakeRaid)
  • 卷系统:LVM2
  • 文件系统:XFS 块大小为 64kb(65536 字节)
  • Arch:800MHz AMCC PowerPC 处理器,256MB RAM(感谢 Matthew 的研究)

执行此操作时,我只有 Windows 10 和 MacOS 计算机,并且我发现没有能够在 LVM2 卷中安装 XFS 的软件(有 1 个例外,更多内容见下文)。我不得不拿出我的旧上网本 Acer Aspire One,并在其上安装 puppy linux(特别是 lxpup 风格)。

在 puppy linux 上,我设法使用名为dmraid. 这个工具有一种挂载 pdc 卷的方法,它是 Promise FastTrack 的 id。一旦我设法跳过安装它的一些箍,我就可以访问实际的 XFS 文件系统,但令我沮丧的是,它原来是 64kb 块大小。

这就是我开始在谷歌上搜索诸如“读取 xfs 64kb 块大小”之类的东西但一无所获的地方。只有几个答案说:“除非您修补内核,否则 linux 无法读取大于 4kb …

xfs fakeraid lvm data-recovery raid1

9
推荐指数
1
解决办法
1456
查看次数

哪个 EC2 实例最适合 Chef 服务器?

我想尽可能便宜地设置厨师服务器,同时留出足够的空间来运行而不会崩溃。我在该主题上找到的唯一一篇文章警告说,由于内存不足,RabbitMQ 会在微实例上崩溃。

问题是:考虑到我不将 CouchDB 或 RabbitMQ 用于我的应用程序中的其他任何内容,可以可靠地运行 Chef 服务器的最便宜的 EC2 实例是什么,因此可能必须在同一实例上专门为 Chef 服务器设置它们。

provisioning chef amazon-ec2

6
推荐指数
1
解决办法
2954
查看次数

在 EC2 上设置 Rails 2.3.x 应用程序以实现轻松的可扩展性

我在一台专用机器上运行一个简单的 rails 堆栈。我们正在达到我们的全部容量并且完全没有扩展设置,只有一台机器上的一个应用程序。我做了一些研究,并提出了一个潜在的可扩展堆栈。我不是专业管理员,但我已经就我们应该如何使用 EC2 提出了一些想法。我仍然有点不确定文件系统共享,这是我的主要问题所在。首先,这是我要处理的。

当前堆栈:

  • 导轨 2.3.11
  • PostgreSQL
  • 乘客+nginx
  • 延迟作业
  • 狮身人面像+thinking_sphinx
  • imagemagick(重图像处理)
  • jaxer(将解释)

我们的应用程序的作用:

我们的应用程序使用 ImageMagick 执行大量图像上传和繁重的图像处理。它还与 jaxer 对话以进行冗长的画布到图像的转换。所有这些都在延迟工作中。我们想确保这些东西尤其可以扩展。所以我们谈论的是快速增长的文件存储需求和后台作业中繁重的图像处理。

到目前为止我的决定:

  • 使用 Rubber gem 帮助部署/管理
  • 从 delay_job 移动到 redis/resque,以便更轻松地解耦工作人员(客户端/服务器)、多个队列和 sinatra Web 界面
  • 有像 app、db、web、redis、resque 这样的角色,一开始所有的东西都在一个 ec2 实例上,但很快就把 redis/resque 的东西拆分成一个单独的实例,可能还有更多

问题:

主要的实际问题是:所有文件会发生什么?如果我决定将应用程序角色拆分为多个实例,如何获得共享文件系统访问权限?

此外,很高兴听到关于我的设置的一些想法。

scalability ruby-on-rails distributed-filesystems amazon-ec2

3
推荐指数
1
解决办法
1920
查看次数

用于检查和响应内存使用情况的一行脚本

我想要一行 shell/bash 来做一些事情:

test "`free | grep | awk | whatever` -gt 80" && any_command
Run Code Online (Sandbox Code Playgroud)

将整个系统使用的 ram总百分比与硬编码数字(在我的情况下为 80)进行比较。test只要any_command在 ram 高于给定百分比时执行就无关紧要。

  • 确切的字节/兆字节而不是百分比是可以的
  • 这应该适用于典型的 ubuntu 14.04
  • 用作 cron 作业
  • 奖励:做同样事情的单线,但检查特定过程的 ram

更新

有关于这是如何构建 monit/bluepill/god 之类的问题的答案。我 100% 同意,您很可能应该遵循这些答案中的建议。但是,这个问题特别是关于我所描述的确切路线,无论出于何种原因,假设这可能涉及所有注意事项和问题。

ubuntu shell bash

3
推荐指数
2
解决办法
7620
查看次数