I have a Ubuntu system running xfce and 2 GB RAM. I have a 1GB swap file which, when multitasking begins to fill up. When I have even a small amount of free swap, I have no issues, but the second the swap fills, the system locks up. Not even the mouse will move, although, I am able to use [Alt]+[SysRq]+[K] to kill xfce, which still necessitates a reboot to get up and running again. I will provide more system details if they are needed. Thanks in advance.
Yes that is what happens when you run out of memory/swap. On the other hand I would have expected that Ubuntu starts killing random processes, desperately trying not to crash. It is a configuration somewhere in the system, but once out of memory there it is unsafe for your filesystem to keep running. So the most sane thing is to halt the system, trying not to corrupt any (more) data.
You have to figure out why you run out of memory, which application causes this to happen.
htop can help you with that. htop probably needs to be installed with
sudo apt-get install htop. The advantage of
htop is that you can easily point and click on the column header you want to sort by.
If you can't eleminate the program, your best bet is to add extra RAM, but that costs money. Your second best bet is increasing swap space, but that costs performance.
As a temporary work around (until next reboot) you can test if this works:
- Find a filesystem with a lot of free space. On most default installs
df -h /tmp. At least several GB's should be free.
- Create a large file (eg. 1M × 2000 = 2GB)
dd if=/dev/zero of=/tmp/extra.swap bs=1M count=2000
- Initialise the file as swap space
- Start using the file as swap space
sudo swapon /tmp/extra.swap
If this is working for you, you'll have to look into making a more definitive solution out of this.