前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >生信主管应该了解的十个Linux知识点

生信主管应该了解的十个Linux知识点

作者头像
生信技能树
发布2018-03-05 16:41:15
1.3K0
发布2018-03-05 16:41:15
举报
文章被收录于专栏:生信技能树生信技能树

linux的发行版非常多,其实本质上差别不大,哪怕是mac的OS应该是也是同样的管理操作模式。以下针对于ubuntu适用,当然ubuntu本身也有版本的区别,目前是16,我下面的操作是在12上进行的。

  • java1.7.0_03的安装

1、JDK官网上 http://www.oracle.com/technetwork/java/javase/downloads/index.html选择

2、将打开终端,建立目录:

代码语言:javascript
复制
Sudo mkdir /usr/lib/java

3、将下载的jdk-7u3-linux-i586.tar.gz移到这个文件夹下面并进行解压,改名字:

代码语言:javascript
复制
sudo mv jdk-7u3-linux-i586.tar.gz /usr/lib/javasudo tar –xvf jdk-7u3-linux-i586.tar.gzmv jdk1.7.0_03java-7-sun

4、修改环境变量:

在终端输入: vim /etc/profile

然后添加以下代码:

代码语言:javascript
复制
export JAVA_HOME=/usr/lib/java/jdk1.8.0_45export JRE_HOME=${JAVA_HOME}/jreexport CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/libexport PATH=${JAVA_HOME}/bin:$PATH

保存之后,再运行下面命令更新电脑的配置文件

代码语言:javascript
复制
source /etc/profile

5、在终端中输入java –version,显示:

代码语言:javascript
复制
jeydragon@jeydragon-VirtualBox:~$ java -versionjava version "1.7.0_03"Java(TM) SE Runtime Environment (build 1.7.0_03-b04)Java HotSpot(TM) Client VM (build 22.1-b02, mixed mode)

表示安装成功!

如果java本身更新了,那么更换上面的下载地址即可。

  • R的最新版本安装

首先,删除Linux Ubuntu系统中原有的R软件包(如果有旧版本的R),代码如下:

代码语言:javascript
复制
    sudo apt-get autoremove r-base-core  # 删除系统中原有的R软件包

接下来,找到一个Ubuntu的软件源镜像(http://mirror.bjtu.edu.cn/cran/bin/linux/ubuntu/ ),Linux Ubuntu 12.04对应的名字是precise,进入到precise/目录,找到r-base-core相关的文件,发现有多个R的版本。把这个软件源,增加到apt的sources.list文件中,代码如下:

代码语言:javascript
复制
deb http://mirror.bjtu.edu.cn/cran/bin/linux/ubuntu precise/ (PS:precise代表着ubuntu本身的版本,请注意修改合适你的) 在sources.list文件最下面,新加一行     ~ sudo apt-get update  # 更新源     ~ sudo apt-get install r-base-core  # 再次安装R语言软件包     ~ R –version  # 检查R的版本 

这时我们就安装了最新的R语言版本—3.0.3版。

代码语言:javascript
复制
require(ggplot2)Loading required package: ggplot2Failed with error: ‘package ‘ggplot2’ was built before R 3.0.0: please re-install it’

这个失败原因是怎么回事?R 3.0.0 的问题吗?怎么解决?

R 2.x 升级3.x 需要重新(编译)安装所有包:

代码语言:javascript
复制
update.packages(checkBuilt = TRUE, ask = FALSE)
  • linux 安装perl模块

Linux/Unix下安装Perl模块有两种方法:手工安装和自动安装。

第一种方法是从CPAN网站上下载您需要的模块,手工编译、安装。

第二种方法是使用CPAN命令自动完成下载、编译、安装的全过程。

手工安装的步骤:

从CPAN(http://search.cpan.org/)下载了Net-Server模块0.97版的压缩文件Net-Server-0.97.tar.gz,假设放在/usr/local/src/下。

代码语言:javascript
复制
cd /usr/local/srctar xvzf Net-Server-0.97.tar.gzcd Net-Server-0.97perl Makefile.PLmake test

如果测试结果报告“all test ok”,您就可以放心地安装编译好的模块了。

安装模块前,先要确保您对perl5 安装目录有可写权限(通常以su 命令获得),执行:

代码语言:javascript
复制
make install

现在,试试DBI 模块吧。如果下面的命令没有给出任何输出,那就没问题。

代码语言:javascript
复制
$>perl -MNet::Server -e1

上述步骤适合于Linux/Unix下绝大多数的Perl模块。可能还有少数模块的安装方法略有差别,所以最好先看看安装目录里的README 或INSTALL。

有的时候如果是build.pl的需要以下安装步骤:(需要Module::Build模块支持)

代码语言:javascript
复制
  perl Build.PL ./Build ./Build test ./Build install

使用CPAN模块自动安装方法一

安装前需要先联上网,如果不是root就会在你的本地home目录新建一个perl5文件夹来存放自动下载的包。

代码语言:javascript
复制
perl -MCPAN -e shell

初次运行CPAN时需要做一些设置,如果您的机器是直接与因特网相联(拨号上网、专线,etc.),那么一路回车就行了,只需要在最后一步选一个离您最近的CPAN 镜像站点。例如我选的是位于国内的http://www.cnblogs.com/itech/admin/ftp://www.perl87.cn/CPAN/ 。否则,如果您的机器位于防火墙之后,还需要设置ftp代理或http代理。

下面是常用cpan 命令。

代码语言:javascript
复制
cpan>helpcpan>mcpan>install Net::Servercpan>quit

使用CPAN模块自动安装方法二

代码语言:javascript
复制
cpan -i 模块名

例如: cpan -i Net::Server

先下载tar.gz ...然後手动安装..default 安装到/usr/local/目录下..

然後修改/usr/bin/perl的symbolic link到/usr/local/bin/perl

  • Perl 安装最新版

linux下升级系统默认安装的perl版本,不建议先rm

先下载tar.gz ...然後手动安装..default 安装到/usr/local/目录下..

然後修改/usr/bin/perl的symbolic link到/usr/local/bin/perl

下载方式不用说了吧,各显神通,笔者习惯用wget.

所以wget "http://www.cpan.org/src/perl-5.10.0.tar.gz" .现在最新是5.20

下载完以后解压安装

代码语言:javascript
复制
#tar zxvf perl-5.10.0.tar.gz#cd perl-5.10.0#./Configure -des -Dprefix=/usr/local/perl

参数-Dprefix指定安装目录为/usr/local/perl

代码语言:javascript
复制
#make#make test#make install

如果这个过程没有错误的话,那么恭喜你安装完成了.是不是很简单?

接下来替换系统原有的perl,有最新的了咱就用嘛.

代码语言:javascript
复制
#mv /usr/bin/perl/ usr/bin/perl.bak#ln -s /usr/local/perl/bin/perl/ usr/bin/perl#perl –v

然后就可以了用它来安装一些其它你需要的perl模块了

代码语言:javascript
复制
#perl -MCPAN-e shell

第一次执行的话,会提示安装cpan并要求连接网络下载最新的模块列表.然后就可以安装东西了

代码语言:javascript
复制
cpan[1]> install DBI
  • linux添加环境变量

添加PATH环境变量,第1种方法

代码语言:javascript
复制
[root@lx_web_s1 ~]# export PATH=/usr/local/webserver/mysql/bin:$PATH

再次查看:

代码语言:javascript
复制
[root@lx_web_s1 ~]# echo $PATH       /usr/local/webserver/mysql/bin:/usr/local/webserver/mysql/bin/:/usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin

说明添加PATH成功。

上述方法的PATH 在终端关闭后就会消失。所以还是建议通过编辑/etc/profile来改PATH,也可以修改家目录下的.bashrc(即:~/.bashrc)。

第2种方法:

代码语言:javascript
复制
# vim /etc/profile

在最后,添加:

代码语言:javascript
复制
export PATH="/usr/local/webserver/mysql/bin:$PATH"

保存,退出,然后运行:

代码语言:javascript
复制
#source /etc/profile,不报错则成功。
  • Linux增加中文(ubuntu)

Ubuntu上的输入法主要有小小输入平台(支持拼音/二笔/五笔等),Fcitx,Ibus,Scim等。其中Scim和Ibus是输入法框架。

在Ubuntu的中文系统中自带了中文输入法,通过Ctrl+Space可切换中英文输入法。这里我们主要说下Ubuntu英文系统中,中文输入法的安装。

安装输入法的第一步是安装语言包

我们选择System Settings-->Language Support-->Install/Remove Languages,这里面可以选择简体中文,输入密码后,系统会安装简体中文语言包。

第二步,安装完毕后切换到终端,安装IBus框架,在终端输入以下命令:

代码语言:javascript
复制
sudo apt-get install ibus ibus-clutter ibus-gtk ibus-gtk3 ibus-qt4

启动IBus框架,在终端输入:

代码语言:javascript
复制
im-switch -s ibus

安装完IBus框架后注销系统,保证更改立即生效。

第三步:安装拼音引擎

有下面几种常用选择:

  • IBus拼音:sudo apt-get install ibus-pinyin
  • IBUS五笔:sudo apt-get install ibus-table-wubi
  • 谷歌拼音输入法:sudo apt-get install ibus-googlepinyin
  • Sun拼音输入法:sudo apt-get install ibus-sunpinyin

第四步:设置IBus框架

终端输入ibus-setup 此时,IBus Preference设置被打开。我们在Input Method选项卡中,选择自己喜欢的输入方式,并配置自己喜欢的快捷键即可。

第五步:通常情况下,IBus图标(一个小键盘)会出现在桌面右上角的任务栏中。有时候这个图标会自行消失,可使用以下命令,找回消失的IBus图标:

代码语言:javascript
复制
ibus-daemon –drx
  • ubuntu上安装mysql

非常简单只需要几条命令就可以完成。

代码语言:javascript
复制
sudo apt-get install mysql-serversudo apt-get install mysql-clientsudo apt-get install libmysqlclient-dev

安装过程中会提示设置密码什么的,注意设置了不要忘了,安装完成之后可以使用如下命令来检查是否安装成功:

代码语言:javascript
复制
sudo netstat -tap | grep mysql

通过上述命令检查之后,如果看到有mysql 的socket处于listen 状态则表示安装成功。

登陆mysql数据库可以通过如下命令:

代码语言:javascript
复制
mysql -u root -p

-u 表示选择登陆的用户名,-p 表示登陆的用户密码,上面命令输入之后会提示输入密码,此时输入密码就可以登录到mysql。

  • 防火墙设置命令iptables

如果我们想新开一个端口给别人访问,我们就需要设置防火墙,比如我想开3838端口给shiny程序使用,下面我重点讲解这个实例,其余开放端口,关闭端口大家继续学习就好。

如果你使用的是ssh远程,而又不能直接操作本机,那么建议你慎重,慎重,再慎重!(一旦你把22端口给搞死了,你就无法登陆你的服务器了!

通过iptables我们可以为我们的Linux服务器配置有动态的防火墙,能够指定并记住为发送或接收信息包所建立的连接的状态,是一套用来设置、维护和检查Linux内核的IP包过滤规则的命令包。

首先配置好防火墙 sudo vim /etc/sysconfig/iptables 让该端口可以被访问

然后进去修改即可,上面红圈出来的那句话就是我添加的,意思是开放3838端口给用户使用。

修改之后并不是防火墙规则马上生效,还需要一个步骤,我搜索了一些资料,里面是这样讲的,我发现它的教程太旧了

这里很多人会想到 /etc/rc.d/init.d/iptables save指令

但是一旦你这么干了你刚才的修改内容就白做了。

只修改/etc/sysconfig/iptables 使其生效的办法是修改好后先 service iptables restart 然后才调用 /etc/rc.d/init.d/iptables save

因为 /etc/rc.d/init.d/iptables save会在iptables服务启动时重新加载,要是在重启之前直接先调用了 /etc/rc.d/init.d/iptables save那么你的/etc/sysconfig/iptables 配置就回滚到上次启动服务的配置了,这点必须注意!

因为我是新的系统(RedHat 7, Ubuntu 15.04+, SLES 12+) ,结合我对该教程的理解。所以我用的是 sudo systemctl restart iptables 命令。

果然,马上3838端口就可以被访问了,我的shiny程序也可以完整的使用啦。

再简单解释一下刚才修改的防火墙配置文件 /etc/sysconfig/iptables 的那句话的意义:

代码语言:javascript
复制
- A:指定链名- p:指定协议类型- d:指定目标地址- dport:指定目标端口(destination port 目的端口)- sport:指定源端口(source port 源端口)- j:指定动作类型

还有几个,懒得写了,其实这是我博客早期内容:

  • ubuntu服务器解决方案第五讲-配置ssh供远程登录
  • ubuntu服务器解决方案第八讲–网络服务器配置lamp
  • ubuntu服务器解决方案第十讲–虚拟机屏幕及联网设置
  • ubuntu服务器配置shiny,shiny-server,R-studio
本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2017-04-13,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 生信技能树 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 手工安装的步骤:
  • 使用CPAN模块自动安装方法一
  • 使用CPAN模块自动安装方法二
  • 添加PATH环境变量,第1种方法
  • 第2种方法:
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档