【发布时间】:2014-10-09 11:48:33
【问题描述】:
是否可以构建 GCC 以使用 USB 记忆棒运行?我希望在许多没有 Internet 访问权限或 GCC 的系统上运行一些 HDD 基准测试,例如需要 GCC 的 bonnie++。该操作系统是 Linux 的精简版,操作系统驱动器容量受到严重限制,因此不能直接在其上安装任何东西。
这是我到目前为止所采取的步骤。我已逐步遵循这些说明:
http://www.wikihow.com/Manually-Build-GNU-Compiler-Collection-from-Scratch-on-Linux-Mint-Static-Edition
我已将所有内容正确构建并复制到 U 盘上。我将棒连接到所需的系统,安装它,并将 gcc 目录添加到路径中。但是当我尝试运行gcc -v 之类的东西时,我收到gcc command not found 错误。我错过了一个步骤还是我试图做的事情是不可能的?
更新
我能够将 Ubuntu 12.04 和 bonnie++ 安装到闪存驱动器上。我将它插入我想要测试的系统并启动到 Ubuntu。从那里我可以运行 bonnie++:bonnie++ -d /tmp/foo -r $(free -m | grep 'Mem:' | awk '{print $2}') -u root:root但在测试期间我收到以下错误Writing intelligently...Can't write block.: No space left on device。考虑到我正在测试的系统在 raid 6 中有 12 个 1TB 驱动器,我相信 bonnie++ 正在对 USB 记忆棒的文件系统而不是在 raid 配置中的驱动器执行测试。有人对我如何从可启动 USB 写入 RAID 驱动器有任何建议吗?
关于@roy_longbottom 的建议,我仍在研究它作为一个选项。我还遇到过stress linux,这是一个最小的实时发行版,它配备了 bonnie++ 以及一系列其他基准测试和硬件压力测试实用程序。对于那些有经验的人,从stresslinux运行bonnie++会遇到同样的问题吗?
【问题讨论】:
-
检查您的 U 盘是否未以 noexec 模式安装。 (检查
mount的输出) -
运行
mount给我以下输出/dev/sdd1 on /mnt/usb type vfat (rw)。 -
您可以考虑在 USB 驱动器上安装任何发行版,然后启动它或 chroot 到它。这将使您无需接触操作系统驱动器即可轻松安装和运行所需的所有开发工具和基准测试。
-
我实际上正在考虑从 USB 启动发行版作为 B 计划。我对 chroot 不太熟悉,但会研究一下。
-
为什么要让 GCC 从 U 盘上运行以运行磁盘基准测试?您需要的是已编译的程序,您可以在任何具有兼容 CPU(和 OS)的系统上生成它。您可以将其保存在 U 盘上,如果是 Linux,则在设置权限的情况下,然后在一系列系统上运行它,可能会将其复制到要测试的驱动器。
标签: linux gcc usb portability