June 30th, 2009 eric
The Gmail transition has been going well, I’ve setup my .forward file on the mail server to just send everything over to my gmail account. Since I don’t really want to use folder/labels to sort “everything” that comes through, I’ve decided on just using the label “WUSTL”. Does the period go inside or outside the quote? I’m not sure.
Shortly after getting work email pointing at Gmail, I remembered Google Labs had a feature called “Tasks” which I decided to investigate. It’s not a terribly involved plugin, it can however, create new tasks out of emails. I think I’m going to love this feature. I’m a clean inbox junkie and have been using it as my daily task list anyways. This lets me clean up my inbox even further by moving the email over to a task. I think this is going to work pretty well once I get some muscle memory going and quit opening my Evolution/Thunderbird setups.
Posted in Uncategorized | No Comments »
June 28th, 2009 eric
I’ve decided to take the plunge and finally use one inbox to rule them all. I’ll be importing all of my old work email and forward all new into Gmail. I’m currently using a nice piece of free software called gExodus available here:
http://blog.codefront.net/2004/06/23/gexodus-02-some-new-features-for-gmail-mbox-import-tool/
It’s going to be a slow arduous process, but I’m taking the time to label everything and clean out some of the cruft I’ve acquired. Once everything’s imported and forwarded, I’ll have to figure out how to manage two incoming email streams, but I believe Gmail Labs has something called “Multiple Inboxes” that I’ll have to check out.
More about this after I get further along.
Posted in Software | No Comments »
June 25th, 2009 eric
When I came in this morning, the file server was unresponsive, I have 200 emails saying the fileserver is in a funky state, I have only one idea of what the problem is. A user is hammering the file server with a job on the cluster. Here’s how I mitigated the problem.
In this scenario, I have a user with 7 jobs, each having around 800 to 1000 tasks. They all seem to be doing the same thing,
perl Randomize.pl allScans.t50 >/tmp/t50_rand.035 ; mv /tmp/t50_rand.035 ./t50_rand/
which is running a perl script on a file, dumping the output to a temp file, then copying that output to the users home directory. Unfortunately, when 300 jobs are running at the same time, the file server just doesn't have quite enough bandwidth to handle all of this read/write at the same time..
To quickly get everything back up and running, I first determined which user was causing the problem. For me this was easy, as we are using a few different file servers. One user had around 300 jobs running off the particular file server that was having the problems, so I started with him.
I first held his jobs using the command
qhold <jobid>
Back to the file server, I ran ls -R in my home directory to see if everything was responsive and back to normal. Thankfully it was, I didn't have to investigate any further, I had found my problem.
Qhold just stops the users job in the current state its in, so he was still using half of the nodes in the cluster. To relinquish those nodes, I had to run:
qmod -r <jobid>
This reschedules his currently "running" jobs for execution at a later time. Since all of his jobs are on hold though, he will just patiently wait until we discuss why this happened.
When we figure everything out, I would issue the following command to release the hold from his job.
qrls <jobid>
Posted in Uncategorized | 2 Comments »
June 24th, 2009 eric
If you find yourself limited by the number of nodes you can submit jobs to, you may be requesting too much memory.
To check the memory usage of your currently running jobs use the command:
qstat -j <jobid> | grep maxvmem
This shows that your job is currently using about 8G of memory, here higlighted in red.
usage 1696: cpu=00:18:06, mem=4661.36781 GBs, io=0.00000, vmem=1.491G, maxvmem=7.913G
Submitting to nodes that only have 8+ GB of memory can speed up your job completion time by not having to swap to disk the entire time it’s running. Or a better example would be, if your job is only using 1.2GB of memory, yet you’re requesting 8GB for every job submission. This not only wastes memory, but keeps other users from running jobs with high memory requirements.
To check historical information, you will need the jobid of the job you’re looking to investigate. This process is taxing on the queuing system, so I recommend piping your results to a file that you can process. If your job has thousands of tasks, this may take a while to complete. Here’s an example:
qacct -j <jobid> > filename.txt
Once you have the output of the qacct command in your file, you can then grep for the patterns you’re looking for.
cat filename.txt | grep maxvmem
maxvmem 7.882G
maxvmem 7.882G
maxvmem 7.880G
Posted in Uncategorized | No Comments »
June 23rd, 2009 eric
Here’s how you’d setup Awstats on Ubuntu 9.04 to monitor your website via log file analysis. This will be for a single website setup using apache2, i’ll go over servers with virtual hosts a bit later.
sudo apt-get install awstats
Once this is installed, you’ll need to edit the configuration file.
sudo vi /etc/awstats/awstats.conf
Be sure the log file is pointing in the right location. You can check in your /etc/apache2/sites-available/default file for the ErrorLog line. The default should be:
LogFile="/var/log/apache2/access.log"
You’ll want to change the domain it’s pointing to from local host to your domain name.
SiteDomain="example.com"
This final part of the config is not necessary, but I like to restrict the IP’s that can view the awstats page. I usually leave it open to my IP range.
AllowAccessFromWebToFollowingIPAddresses="192.168.1.1-192.168.1.254"
Next, you’ll need to add a cron job that will parse the log file every so often, I chose to run it every 10 minutes.
Read the rest of this entry »
Posted in Linux, Software | No Comments »
June 19th, 2009 eric
Recently a file system became unavailable on a handful of nodes in the cluster. The problem was, not all jobs use that file systems, so the nodes were still usable to most people. As a quick workaround, there is a qsub option available. You can use the following to exclude whichever nodes you like:
qsub ... -l h='!node001|!node002|...'
The exclamation point tells qsub "not this host" and the pipe separates the list. Hope this helps.
Posted in Linux, Software | No Comments »
June 17th, 2009 eric
Many seem to pass this over by not checking the qsub man page. To receive notifications via email if your job has aborted, you would use the command:
-M user@example.com
with one of the following options:
‘b’ Mail is sent at the beginning of the job.
‘e’ Mail is sent at the end of the job.
‘a’ Mail is sent when the job is aborted or rescheduled.
‘s’ Mail is sent when the job is suspended.
Your final command will end up looking like:
qsub -V -cwd -N My_Job_name -M user@example.com -m a jobscript.sh
Posted in Linux, Software | 1 Comment »
June 16th, 2009 eric
Win32Trojan.TDSS takes its place on the top of my worst spyware to remove list. There’s very little to be found on the Internet regarding this particular piece of malware. Symantec uses this name for some other random easy to remove trojan which is not what I have been dealing with. The symptoms are that of traditional malware, slow system, redirections, etc. There’s nothing of importance found using HijackThis or Ad-Aware which baffled me for the first couple of hours.
This how-to assumes you have previous experience with spyware, I won’t elaborate on every detail.
1.) On a different machine, download MalwareBytes Anti-Malware
2.) Rename the setup file to something like setup.exe and copy the file over to the infected machine
3.) During the installation process, rename the installation folder and the program folder for the Start Menu to something like mwb (The trojan has a dictionary of anti-virus and other removal tools that will prevent installation)
4.) Open Explorer and navigate to where you installed the program
5.) Rename mbam.exe to something different (I used mba.exe)
6.) Open mba.exe, select the Update tab and update the definition database
7.) Once updated, reboot the computer in Safe Mode
8.) From Safe Mode, run the mba.exe and perform a full scan, remove any files it detects
9.) Reboot to regular mode, re-run mba.exe and perform another full scan.
10.) You will need to reboot to remove the remaining files, rename mba.exe back to mbam.exe before you do
Posted in Software, Windows | No Comments »
June 8th, 2009 eric
I believe I’ve just found the solution to my Windows desktop backup problems at work. Lets hope it handles open files better than Cygwin and rsync.
http://lifehacker.com/5281024/nasbackup-makes-incremental-backups-easy
Posted in Software | No Comments »
June 2nd, 2009 eric
This one often escapes me, but here’s some reference to everyone out there. In command mode of Vi,
%s/x/y/g
x is the text you’re replacing, y is the text you’re replacing it with, and g tells Vi to do it to the end of the file.
Regular expressions are also usable here, so if you have text with spaces, you’ll be able to use them.
Posted in Uncategorized | No Comments »