Installing and configuration of NCBI standalone BLAST

The Basic Local Alignment Search Tool (BLAST) is available to download for a variety of platforms here:

ftp://ftp.ncbi.nlm.nih.gov/blast/executables/LATEST/

I snagged this one:

ftp://ftp.ncbi.nlm.nih.gov/blast/executables/LATEST/ncbi-blast-2.2.29+-x64-linux.tar.gz

Downloaded to my large Windows partition and extracted the files by double-clicking.

The primary “configuration” that I’m interested in is adding the BLAST directory (/media/B0FE4B1FFE4ADD6A/BioinformaticsTools/ncbi-blast-2.2.29+/bin) and the BLAST database directory (/media/B0FE4B1FFE4ADD6A/BioinformaticsTools/ncbi-blast-2.2.29+/dbs) to the Linux “PATH”.

One question is, why? What’s the point? Well, I guess those are two questions, but whatever.

The primary advantage to adding these two directories to the system PATH, is simply a matter of efficiency. To run BLAST in the current configuration, I have to type something like this (after the $):

Change to the proper directory:
samb@Mephisto:/$ cd /media/B0FE4B1FFE4ADD6A/BioinformaticsTools/ncbi-blast-2.2.29+/bin

Then, type out the necessary instructions to initiate BLAST and provide the location of the BLAST database:
samb@Mephisto:/media/B0FE4B1FFE4ADD6A/BioinformaticsTools/ncbi-blast-2.2.29+/bin$ ./blastn -db /media/B0FE4B1FFE4ADD6A/BioinformaticsTools/ncbi-blast-2.2.29+/dbs/RickettsiaGBnt20140228

By adding the BLAST and database directories to the system PATH, all I’d have to enter would be:

samb@Mephisto:/$ blastn -db RickettsiaGBnt20140228

Much cleaner and efficient. No changing directories, no lengthy directory paths.

So, let’s see if we can get that set up.

Tried to follow some instructions on the NCBI website: http://www.ncbi.nlm.nih.gov/books/NBK52640/

But, those instructions don’t tell you how to make a script to automatically append the BLAST and BLAST database locations to the system PATH so that you don’t have to amend the PATH each time you want to use BLAST! Lame!

Additionally, the instructions say that a “.ncbirc” file is required in the Home directory. Well, should the file have a name or do I just leave the file literally “.ncbirc”? Is it like a .htaccess file then? I guess I’ll just have to try it out. Ugh.

Anyway, here’s how I got it working so that I don’t have to change directories to the BLAST folder each time and I run BLAST and so I can just enter the name of a BLAST database without having to type out the full path of the database.

1. For dual boot systems, BLAST cannot be installed on the Windows partition. Linux can’t do the proper writing/executing of files on that partition due to a difference in partition formatting (Windows is NTFS).

2. Can’t simply move BLAST package from one location to a new one. It seems that the BLAST package needs to be re-installed in the user’s desired location. However, this could be an issue related to partition formatting, as I tried to simply move the BLAST folders from the Windows partition to the Linux partition. When I did this, couldn’t get BLAST to run, even though it was now on the Linux partition.

3. Created a script file in the /etc/profile.d folder called “myenvvars.sh” so that the locations of the BLAST executables and BLAST databases will be loaded into the system PATH upon logging in to the computer, as opposed to having to manually append the locations to the PATH each time I start the computer. Put this info in the myenvvars.sh file:
!#/bin/bash
export PATH=$PATH:/media/B0FE4B1FFE4ADD6A/BioinformaticsTools/ncbi-blast-2.2.29+/bin:
export BLASTDB=/home/samb/BioinformaticsTools/ncbi-blast-2.2.29+/db

The “!#/bin/bash” identifies the file as a script file to the system. The other two lines “export” the variables (PATH and BLASTDB) so that they are available to use by the rest of system.

4. Created the “.ncbirc” file (called it blastdb.ncbirc) and put it in my computer’s “Home” folder. File contains this text:
[BLAST]
BLASTDB=/home/samb/BioinformaticsTools/ncbi-blast-2.2.29+/dbs

5. Everything runs wonderfully!

I documented everything (including all failures, file locations changes, etc) in an IPython Notebook: InstallingBLAST.

Leave a Comment