美文网首页
linux 查漏补缺 2

linux 查漏补缺 2

作者: 七白七白七七白 | 来源:发表于2019-04-03 13:54 被阅读0次

Linux 下软件安装相关

2.1 文件属性和可执行属性

2.1.1 文件属性

文件属性 rwx 中 r 表示 read (数字表示为 4)、w 表示 write (数字表示为 2)、x 表示执行 (数字表示为 1)。三个为一
组,连续出现三次 (如下面命令行中所示), 第一组表示文件的所有者拥有的权限,第二组为文件所有者所在的用户组所拥
有的权限,组内所有成员都具有的权限,第三组为其它用户的权限。

ct@ehbio:~$ ls -l /home
-rwxr-xr-x 1 ct ct 26 12 月 7 2016 ct
# 让自己的家目录只自己可见
ct@ehbio:~$ chmod go-rwx /home/ct
ct@ehbio:~$ ls -l /home
-rwx------ 1 ct ct 26 12 月 7 2016 ct
# 同组人增加可读和可执行属性
ct@ehbio:~$ chmod g+rx /home/ct
ct@ehbio:~$ ls -l /home
-rwxr-x--- 1 ct ct 26 12 月 7 2016 ct
# 所有人增加可读和可执行属性
ct@ehbio:~$ chmod a+rx /home/ct
ct@ehbio:~$ ls -l /home
-rwxr-xr-x 1 ct ct 26 12 月 7 2016 ct

2.1.2 可执行属性

which: 表示查看命令的路径。一般用于当我们想知道使用的命令来源于什么地方时,比如安装了多个 R 或多个 python,
但又分不清用的是哪个时,which 一下,立即明了。在这儿我们用 which 获取的是可执行的命令所在的路径,进而查看
其属性。

ct@ehbio:~$ ls -l "`which cd`"
-rwxr-xr-x 1 root root 26 12 月 7 2016 /usr/bin/cd

ct@ehbio:~$ ls -l "`which mkdir`"
-rwxr-xr-x. 1 root root 79768 11 月 6 2016 /usr/bin/mkdir

ct@ehbio:~$ ls -l "`which python`"
#l: 代表软连接
# 软连接自身是所有人可读可写,但具体的权限依赖于其链接的文件
lrwxrwxrwx. 1 root root 7 3 月 22 15:04 /usr/bin/python -> python2
ct@ehbio:~$ ls -l "`which python2`"
# 第二层链接
lrwxrwxrwx. 1 root root 9 3 月 22 15:04 /usr/bin/python2 -> python2.7
# 链接的原始文件
ct@ehbio:~$ ls -l "`which python2.7`"
-rwxr-xr-x. 1 root root 7136 11 月 6 2016 /usr/bin/python2.7

chmod a+x file: 表示给文件增加所有人 (a) 可执行权限 (+x)
chmod u+x file: 表示给文件增加所有者 (u,user,) 可执行权限 (+x)
chmod g+x, chmod o+X: 表示给文件增加组内人或其它人可执行权限
chmod 755 file: 表示拥有者有可读写执行权限,其它人有可读执行权限。

2.2 环境变量

ct@ehbio:~$ echo $PATH
/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin
ct@ehbio:~$ export PATH=$PATH:/home/ct
ct@ehbio:~$ echo $PATH
/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/home/ct

对于普通用户,在远程登录终端时,家目录下的 ~/.bash_profile (不是 ~/.bashrc, 在本地登录时才会被读取) 会
自动被读取,所以我们需要把 export 语句加入到这个文件中。


师兄的图

建议分开写,方便后续查看,多用绝对路径
常见的命名 用alias 建立快捷方式就好了

前面提到,系统查找命令的顺序是从环境变量的第一个目录到最后一个目录,在第一次碰到查询的命令后,就调用执行。
假如系统存在一个 python 命令,我们自己又安装了一个 python (假如在/home/ct/anaconda/bin 目录下),如果我们
想执行自己的 python 程序,就需要把/home/ct/anaconda/bin 写在 PATH 前面, export PATH=/home/ct/anaconda/bin:PATH

2.3 软件安装的几种方式

2.3.1 系统包管理器安装

# centos
# 如果长时间没更新,先运行下update
yum update
# 如果不知道软件具体名字,可以先用一个关键字search一下, 选择正式的名字
# 需要注意的是一般的服务器都是64bit,需要选x86_64版本
yum search soft_name or soft_description
yum search soft_official_name

2.3.2 下载二进制文件

wget ftp://ftp.ncbi.nlm.nih.gov/blast/executables/blast+/LATEST/ncbi-blast-2.7.1+-x64-linux.tar.gz
tar xvzf ncbi-blast-2.7.1+-x64-linux.tar.gz
cd ncbi*
cd bin
ln -s pwd/* ~/bin# 直接进入 bin 目录,找到对应可执行文件,链接到在环境变量的目录中去。

2.3.3 源码编译安装

• configure 是检查系统的库文件、类文件、依赖软件是否存在以及它们的版本是否满足需求,并根据实际检测结果生成 Makefile 的工具。一般是一堆 bash 命令的组合。通常也需要在这一步配置一些参数。最常用的就是指定软件的
安装目录--prefix=/home/ct/soft/specific_name。
• make 则是具体的编译过程。编译的语句都写在了 Makefile 中。make 默认编译 Makefile 中出现的第一个 target,
也可以指定 target 编译,并根据 Makefile 的设置方式依次编译所有依赖的东西。
• make install 通常是拷贝 make 编译出来的可执行文件或者依赖的库文件 (如果有的话) 到 configure 时的--prefix 指定的目录下。

文章来源:生信宝典

相关文章

  • linux 查漏补缺 2

    Linux 下软件安装相关 2.1 文件属性和可执行属性 2.1.1 文件属性 文件属性 rwx 中 r 表示 r...

  • 【Android面试查漏补缺】之事件分发机制详解

    前言 查漏补缺,查漏补缺,你不知道哪里漏了,怎么补缺呢?本文属于【Android面试查漏补缺】系列文章第一篇,持续...

  • linux查漏补缺 1

    df -h :查看硬盘有多大,有多少可用空间 cat是一个命令,主要用来查看文件;在这与 *<

  • linux查漏补缺 3

    3.1 正则表达式 正则表达式 (regular expression) 是用来做模糊匹配的,匹配符合特定模式的文...

  • 查漏补缺

    如果想让HTML5标签兼容低版本浏览器的话,可以使用 html5shiv js来实现。注意:一定要把它引入到前面。...

  • 查漏补缺

    图文环绕和浮动 最初的CSS只是用来写文章,熟练使用float和clear两个属性来布局: float属性:指定一...

  • 查漏补缺

    1.js字符串转换成数字与数字转换成字符串的实现方法https://www.2cto.com/kf/201612/...

  • 查漏补缺

    浮动原理 1.使用之初:是为了让文字环绕图片,并且不会遮住文字。如果让图片与文字有间距,我们在浮动元素上添加。2....

  • 查漏补缺

    今天数学老师外出学习,我用了一上午的时间给孩子们查漏补缺。 首先,训练朗读:从段落与段落之间的大停顿...

  • 查漏补缺

    1 Python提供了ord()和chr()函数,可以把字母和对应的数字相互转换2 写 u'中' 和 u'\u4e...

网友评论

      本文标题:linux 查漏补缺 2

      本文链接:https://www.haomeiwen.com/subject/rfaobqtx.html