如何在 Linux 设备 (Amazon Linux AMI) 上创建或调整交换内存的大小。问题出现在我运行程序时,它给出了以下错误:
IOError: [Errno 28] No space left on device
INFO (theano.gof.compilelock): Waiting for existing lock by unknown process (I am process '947')
INFO (theano.gof.compilelock): To manually release the lock, delete /root/.theano/compiledir_Linux-3.4.43-43.43.amzn1.x86_64-x86_64-with-glibc2.2.5-x86_64-2.6.8-64/lock_dir
WARNING (theano.gof.compilelock): Something wrong happened: <type 'exceptions.IOError'> [Errno 28] No space left on device
当我执行自由的检查设备的内存,linux 设备打印给我:
total used free shared buffers cached
Mem: 22058544 7581508 14477036 0 144316 7025740
-/+ buffers/cache: 411452 21647092
Swap: 0 0 0
我如何调整交换大小以使用它或创建新的交换文件。谢谢!
答案1
我不知道这对你来说是否一样,但我试过了,而且有效。你可以尝试使用交换文件:
创建一个将用作交换文件的文件,其计数等于所需的块大小(此处大小为 64MB)
dd if=/dev/zero of=/swapfile bs=1024 count=65536
使用以下命令启用交换:
mkswap /swapfile
检查交换是否确实被使用:
swapon -s
如果一切正常,您可以将此行添加到 /etc/fstab :
/swapfile swap swap defaults 0 0
答案2
抱歉,我找到了答案。我必须执行以下操作来创建交换文件:
dd if=/dev/zero of=/swapfile bs=1024 count=10930193
然后要启用它只需执行以下操作:
mkswap /swapfile