Take the 2-minute tour ×
Ask Ubuntu is a question and answer site for Ubuntu users and developers. It's 100% free, no registration required.

I think my subject is pretty spot on. I am on Ubuntu 10.04 and have the following specs in my computer:

  • i5 Processor with 3.30GHz
  • 16GB Memory
  • 1TB Hard drive
  • 1 Gigabyte on board network

I am running 10 users at the same time, as virtual computers (terminals) from NComputing.

I am using around max 8 - 10 GB Memory when computer is running at the fullest. I have the following applications that all the 10 users use simultaneously:

  • Firefox
  • LibreOffice
  • Thunderbird
  • Many other folders
  • Lot of printing

Around 8am - 15:00pm, my computer (actually server) is running absolutely fine, then around 15:00 - 14:30 upon leaving, the computer just freezes for not reason, without giving warnings. I have to force the computer of by the powers, can't even use the reset button.

I was told from the NComputing hadrware/software people, that I should do a memory dump of all the terminated processes for each user that are working - that will be 10 users.

I do I do that, freeing up memory dumps, and should I even experience anything like it?

Look at how strong, and fast my computer is, can that even be then a problem?

Any help?

share|improve this question

1 Answer 1

One solution from over on ServerFault direct quote:

I've made a script that accomplishes this task.

The idea commes from James Lawrie's answer and this post: http://www.linuxforums.org/forum/programming-scripting/52375-reading-memory-other-processes.html#post287195

#!/bin/bash

grep rw-p /proc/$1/maps | sed -n 's/^\([0-9a-f]*\)-\([0-9a-f]*\) .*$/\1 \2/p' | while read start stop; do gdb --batch --pid $1 -ex "dump memory $1-$start-$stop.dump 0x$start 0x$stop"; done

put this in a file (eg. "dump-all-memory-of-pid.sh") and make it executable

usage: ./dump-all-memory-of-pid.sh [pid]

The output is printed to files with the names: pid-startaddress-stopaddress.dump

Dependencies: gdb

end quote

The only thing to add is a loop to iterate over all PIDs.

share|improve this answer
    
Wel, sound like this can be an answer, but this sound way difficult - will have a look at that link –  Tim Botha Aug 24 '12 at 12:07
1  
@TimBotha - just an FYI, I'm looking at possibly throwing together a simple gui to do this and more. It may or may not happen though. –  hbdgaf Aug 24 '12 at 23:48

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.