在Ubuntu服务器上安装软件包时出现内存不足问题

时间:2013-08-20 11:55:11

标签: python gcc ubuntu memory-management lxml

我使用的是Ubuntu云服务器,内存有限,512MB RAM和20 GB硬盘。它的450MB + RAM已被进程使用。

我需要安装一个名为lxml的新软件包,在安装时使用Cpython进行编译,这是一个非常繁重的过程,所以它始终以错误gcc: internal compiler error: Killed (program cc1)退出,这是由于没有RAM可以运行。

升级机器是一种选择,但它有自己的问题,我的服务/网站很少来自这台服务器本身。

但是我的本地计算机lxml已正确安装。因为我的需求只是lxml,所以可以从本地机器目录中选择所有有用的文件然后复制到远程机器中吗?

它会这样工作吗?如果是,如何获取包的所有文件?

此致

1 个答案:

答案 0 :(得分:79)

通过添加交换文件来扩展RAM: http://www.cyberciti.biz/faq/linux-add-a-swap-file-howto/

  

交换文件是存储在使用的计算机硬盘上的文件   作为存储当前不存在的信息的临时位置   由计算机RAM使用。通过使用计算机具有的交换文件   能够使用比物理安装更多的内存   电脑   http://www.computerhope.com/jargon/s/swapfile.htm

简而言之:

  1. 以root身份登录:su -或执行前面带有sudo的命令
  2. dd if=/dev/zero of=/swapfile1 bs=1024 count=524288
  3. mkswap /swapfile1
  4. chown root:root /swapfile1
  5. chmod 0600 /swapfile1
  6. swapon /swapfile1
  7. 现在交换文件将暂时激活,但重启后将会消失。 您的安装过程应该有足够的RAM

    删除文件:

    1. swapoff -v /swapfile1
    2. rm /swapfile1