Linux configuration memo

linux note

以下是我的Fedora KDE 安装后的配置备忘录,也适用于Ubuntu。

last update 2016-05-21

Read more →

兴趣与工作

sci

今天整理电脑内容的时候想到一些关于兴趣和工作的东西,与大家分享。

实验室有个人的电源坏了,把主板也烧掉了,幸好硬盘没事;今天实验室又有个人的硬盘突然坏掉了,所幸资料已备份,损失不大。这再次给大家敲响了警钟:定期备份资料。所以,我决定整理电脑,把重要的东西同时备份到两个网盘。

Read more →

生物信息学多文件数据处理的一些编程思路

bioinf devop

本文举例介绍生物信息学多文件数据处理的一些编程思路,希望对大家有所帮助。

如果你是想从gff格式提取CDS,请看另一篇《Extract cds fastas from a gff annotation + reference sequence》。

师妹对某物种测序获得很多scaffold,用glean预测了基因结构(CDS、mRNA等),另外还预测了snp位点,她想统计各mRNA中的snp位点。

Read more →

R代理设置

r

本文介绍linux服务器无法联网的情况下,给R设置代理,方便联网安装R包。

 

第一步:

个人电脑安装一个代理服务器,比如ccproxy。

进入设置查看http端口(默认为808)。在命令行运行ipconfig获取自己的ip,比如192.168.1.100。

运行代理服务器,并设置系统防火墙以及杀毒软件,确认代理服务器的端口可用

 

第二步:

登录linux服务器,编辑~/.bashrc文件,加入如下一行

export http_proxy="http://192.168.1.100:808"

运行以下命令使其生效,或者断开重新连接服务器

. ~/.bashrc

进入R,输入以下命令:

Sys.setenv(http_proxy="http://192.168.1.100:808")

输入以下命令,确认设置成功:

Sys.getenv("http_proxy")

设置成功,即可在线安装包了。

 

其他:

Read more →

Linux安装官方Java开发工具包JDK

linux

本文指导如何在linux中安装官方的Java开发工具包——JDK,内含Java运行环境Jre。因为版权等原因,很多Linux发行版安装的都是OpenJDK,可某些情况需要官方的JDK。

下载

http://www.oracle.com/technetwork/java/javase/downloads/index.html,点击大大的java图标,进入下载页面,选择下载最新jdk,并解压到/usr/java目录:

sudo tar -zxvf jdk-7u25-linux-x64.tar.gz -C /usr/java

修改软链接到最新,结果如下:

$ls -lh /usr/java/
total 4.0K
lrwxrwxrwx. 1 root root   16 Mar  3 23:34 default -> /usr/java/latest
drwxr-xr-x. 8 root root 4.0K Aug 19 21:03 jdk1.7.0_25
lrwxrwxrwx. 1 root root   21 Aug 19 21:04 latest -> /usr/java/jdk1.7.0_25

 

配置环境变量

Read more →

无root权限安装MySQL

linux

本文结合网上和自己的经验指导如何在linux中无root权限安装MySQL。

【2014-6-20】囧,我之前安装的,怎么都没法运行成功了

 

约定

我的MySQL将安装在下面的目录,将设置默认端口号为33060(可任意,必须大于1024,且不能其它软件冲突)。

/db/home/shenwei/local/app/msyql

下文中的配置文件中,最好使用绝对路径,不要使用相对路径,如“~/”。

 

安装编译工具

cmake是必须的,其它基本的编译工具,如gcc等就不说了吧,如果configure过程中提醒缺少编译器,请自行google。

请到http://www.cmake.org/files/选择最新版的cmake链接,然后下载安装:

wget http://www.cmake.org/files/v2.8/cmake-2.8.11.1.tar.gz
cd cmake-2.8.11.1
./configure --prefix=/db/home/shenwei/local/app/cmake
make && make install

将cmake目录加入环境变量(或者在~/local/bin下面建立链接cmake可执行程序的软链接, ~/local/bin是我自己的bin目录, 已经加入到环境变量$PATH中):编辑~/.bashrc或者~/.bash_profile,加入以下内容:

export PATH=~/local/app/cmake:$PATH

让其生效

. ~/.bashrc

 

编译、安装MySQL

下载前请到http://dev.mysql.com/downloads/mysql/中,选择source code,页面最下端,下载最新版本的源码(mysql-5.6.××.tar.gz)。33060是自定义的端口号。

tar -zxvf mysql-5.6.19.tar.gz
cd mysql-5.6.19
cmake -DCMAKE_INSTALL_PREFIX=/db/home/shenwei/local/app/mysql -DMYSQL_TCP_PORT=33060
make && make install

 

配置

1)将MySQL的bin目录和scripts目录加入环境变量:编辑~/.bashrc或者~/.bash_profile,加入以下内容:

export PATH=~/local/app/mysql/bin:~/local/app/mysql/scripts:$PATH

让其生效

. ~/.bashrc

2)安装数据库。

Read more →

本地Blast2GO安装,及其数据库更新和导入数据中断的解决方案

bioinf linux

本文提供改进的本地化Blast2GO自动化安装脚本,以及指导如何更新数据库,并提供导入数据中断的解决方案对无root权限的用户同样有效,同时指导如何成功运行b2g4pipe和本地Blast2GO图形界面。

——————————————————————————

本人仅安装了此程序,未跑过真实数据,且时间已久,不做任何解答,抱歉

——————————————————————————

由于Blast2GO官方网站提供的Blast2GO数据库安装教程需要用户具有root权限,而其官网上另一自动化安装脚本已过时,会出错,故文本将二者结合,并根据自身经验重新整理。

软件环境

  • 操作系统 :Linux(Centos, Ubuntu, Fedora等),最好有root权限,方便配置mysql。
  • 数据库 :Mysql(或者Mysql的分支MariaDB),要有能创建数据库权限的用户,如果没有,可以参照我另一篇日志在没有Root权限的情况下安装Mysql
  • Java运行环境:一定要Oracle  JDK (6、7都行),不要用OpenJDK,否则无法运行b2g4pipe!可参照我另一篇日志《Linux安装JDK》(内含没root权限时安装方法)。
  • Local NCBI-Blast,可参照我另一篇文章《Linux系统中NCBI BLAST+本地化教程》。

注:1. 除非是已经非root安装mysql在有足够磁盘空间的分区(home)下,请一定参照网上的方法Mysql的数据库目录配置到有足够空间的目录下面!2. 安装oracle  jdk,不用卸载openjdk,并切换java到oracle jdk。

sudo /usr/sbin/alternatives --config java

 

手动准备数据

1) 避免不稳定的网络环境使下载中断,自己用迅雷或者FTP客户端(wget也支持断点续传)下载以下4个文件(一共5.1G):

2) 解压文件。提示:gzip -d解压文件后会删除原来的压缩文件。

gzip -d *.gz

3)下载local_b2g_db.zip文件,并解压。内含创建数据库的b2gdb.sql文件和导入idmapping文件的java程序ImportIdMapping.class及其依赖的库mysql-connector-java-5.0.8-bin.jar。

为了方便,上述文件都放到同一目录下。解压后文件清单如下:

./:   31.48 GB
   2.97 KB      ImportIdMapping.class
   2.33 KB      b2gdb.sql
   1.83 KB      download_and_install.sh
   3.27 GB      gene2accession
   1.32 GB      gene_info
  22.37 GB      go_201307-assocdb-data
   4.51 GB      idmapping.tb
 528.18 KB      mysql-connector-java-5.0.8-bin.jar

 

导入数据库

0) 预防针。

b2gdb.sql建立数据库以及用户时,默认只赋予用户(blast2go)在本机(localhost)访问数据库(b2gdb)的权限,如下所示:

GRANT ALL ON b2gdb.* TO 'blast2go'@'localhost' IDENTIFIED BY 'blast4it';
FLUSH PRIVILEGES;

如果你今后需要在自己电脑使用服务器的b2g数据库,那么你需要赋予blast2go在任意主机(%)访问数据库的权限,修改如下:

GRANT ALL ON b2gdb.* TO 'blast2go'@'%' IDENTIFIED BY 'blast4it';
FLUSH PRIVILEGES;

没这样设置的结果就是,PC远程连接服务器的数据库提示connection time out,即使PC和服务器的防火墙设置无问题,仍然无法连接数据库。那么补救措施就是在服务器登陆mysql(必要时-P指定端口),运行上述两句mysql命令。

1) 配置download_and_install.sh文件:

Read more →

应对ssh端口扫描,将超过指定次数的ip自动加入黑名单

Linux

做好服务器安全防护刻不容缓。

last update: 2015-12-08

最近一些QQ群里老有想收购“shell”的人想加进来,说白了就是买被黑掉的服务器的权限。想到之前的斯诺登事件等安全事件,我今天特意看检查了服务器的ssh日志,让人大吃一惊:短短三天就有1400多次失败的ssh登录尝试。

Read more →

通过序列ID从fasta文件提取序列(通过文件中的ID提取另一文件中对应的记录)

bioinf

给定一个包含id的文件来从另一个序列文件中提取对应的序列,是生物信息学数据处理中常见的情形,本文提供一个Perl实现的快速解决方案,运行速度快,可轻松应对百万级的id和上G的大序列文件。 See more in < Manipulation on FASTA format file>

Read more →

Perl电子书推荐

perl

大家通常以”小骆驼“作为Perl学习入门首选书籍,这里推荐一下Perl的其它电子书,适合进一步学习,Perl进阶。

能看完中文的就足够了:

  • 入门,进阶都可以:《Perl实例精解 第4版》,超级详细的例子。
  • 进阶:《Perl最佳实践》,编码习惯等。Perl最佳实践重点摘要
  • 进阶:《Perl高效编程》,一些高级用法,安全性等。
  • 高阶:《高阶Perl》,2013年7月中译本出版,(原书《Higher-order Per》,2005年)。

Read more →