Linux 指令之安装软件

在 Linux 上安装软件应该去官网下载比较好,好比去 JDK 的官网下载 JDK ,会给出这样的下载列表。java

JDK 下载

对于 Linux 系统来讲有三个安装包能够下载,格式分别为 rpm 和 deb 和 tar.gz 。tar.gz 是安装文件的压缩包,rpm 和 deb 分别是 CentOS 体系的 Linux 系统安装包和 Ubuntu 体系的安装包。mysql

1,安装软件linux

下载各自平台的安装包以后,CentOS 下面使用 rpm -i jdk-xxx.rpm 进行安装,Ubuntu 下面使用 dpkg -i jdk-xxx.deb 进行安装。其中 -i 是 install 的意思。sql

也能够直接下载 tar.gz 文件,而后使用 tar 工具解压,就能够了:tar xvzf jdk-xxx.tar.gzshell

2,软件列表ubuntu

CentOS 中使用 rpm -qa 指令能够查看全部安装软件的列表。其中 -q 就是 query 的意思,-a 就是 all 的意思。centos

Ubuntu 中使用 dpkg -l 指令能够查看全部安装软件的列表。其中 -l 是 list 的意思。bash

若是要去搜索某个软件是否安装可使用管道符和 grep 配合使用,好比 rpm -qa | grep jdk 能够在 CentOS 中搜索出当前电脑是否已经安装了 jdk 。less

若是安装的软件不少,而且又不知道关键词,那么可使用 rpm -qa | more 或者 rpm -qa | less 指令来分页查找。其中 more 的分页只能日后翻,翻到最后一页自动结束返回命令行,less 分页能够先后翻页,但须要输入 q 才能返回命令行,q 是 quit 的意思。工具

3,删除软件

若是要删除软件,可使用 rpm -edbkg -r 来删除软件。其中 -e 就是 erase,-r 就是 remove。

4,软件管理工具 yum 和 apt

Linux 中有本身的软件管家工具,CtenOS 中是 yum,Ubuntu 下是 apt。

你能够根据关键词搜索,好比搜索 jdk:yum search jdkapt search jdk ,能够搜索出不少的能够安装的 jdk 版本。

而后选中一个版本使用以下指令进行下载安装:yum install java-xxxapt install openjdk-xxx

这两个软件管家配置下载源地址的文件分别在:/etc/yum.repos.d/CentOS-Base.repo (CentOS)和 /etc/apt/sources.list (Ubuntu)

分别配置以下:

# CentOS
[base]
name=CentOS-$releasever - Base - 163.com
baseurl=http://mirrors.163.com/centos/$releasever/os/$basearch/
gpgcheck=1
gpgkey=http://mirrors.163.com/centos/RPM-GPG-KEY-CentOS-7
 # Unbuntu
deb http://mirrors.163.com/ubuntu/ xenial main restricted universe multiverse
deb http://mirrors.163.com/ubuntu/ xenial-security main restricted universe multiverse
deb http://mirrors.163.com/ubuntu/ xenial-updates main restricted universe multiverse
deb http://mirrors.163.com/ubuntu/ xenial-proposed main restricted universe multiverse
deb http://mirrors.163.com/ubuntu/ xenial-backports main restricted universe multiverse
复制代码

这里的配置都用的是国内的节点。

5,配置环境变量

Linux 下配置环境变量使用 export 命令来操做。

export JAVA_HOME=/root/jdk-XXX_linux-x64
export PATH=$JAVA_HOME/bin:$PATH
复制代码

export 命令仅在当前命令行的会话中起做用,一旦退出登录进来就没用了。要想永久生效,就得配到用户默认的工做目录下的 .bashrc 文件中,而后手动经过 source .bashrc 让环境变量生效。

6,运行程序

Linux 运行程序有三种方式。

**第一种:**当前用户有该文件的 x 执行权限,找到文件所在的目录,而后经过 ./filename 来运行该程序。固然若是配置在 PATH 设置的路径下面,就不用 ./ 了,直接输入文件名便可,Linux 会帮咱们找。

这样执行的程序可能须要和用户进行交互,例如容许让用户输入,而后输出结果也能够打印到交互命令行中。一旦交互命令行退出,程序就中止运行了。若是咱们要运行一些须要 "永远" 在线的程序确定是不行的,好比咱们要运行一个博客程序,总不能一直开着交互命令行。

**第二种:**后台运行。使用 nohup 命令,这个命令的意思是 no hang up (不挂起),也就是说,当前交互命令行退出的时候,程序还要在。

固然,这个时候程序不能一直霸占命令行,而是应该在后台跑。最后加一个 & ,就表示后台运行。

最后还要处理的就是输出文件,原来输出都是打印在命令行里了,如今后台运行,输出到哪里是要本身配置的。

因此最终的命令形式应该是这样的:nohup command >out.file 2>&1 & 。 这里面 1 表示文件描述符 1,表述标准输出,2 表示文件描述符 2,表述标准错误输出。”2>&1“ 表示标准输出和错误输出合并了。合并输出到 out.file 中。

关闭后台运行的程序:

ps -ef |grep 关键字  |awk '{print $2}'|xargs kill -9
复制代码

ps -ef 是列出全部正在运行的程序,grep 是匹配到咱们要的程序,awk 工具能够对文本进行处理,这里的 awk '{print $2}' 是指第二列的内容,也就是运行程序的 ID ,而后将 ID 经过 xargs 传递给 kill -9,也就是发送给这个运行的程序一个信号,让它关闭。

**第三种:**以服务的方式运行。

在 Ubuntu 中咱们可使用 apt install mysql-server 来安装 MySQL,而后经过命令 systemctl start mysql 来启动 MySQL,经过 systemctl enable mysql 设置开机启动。之因此成为服务而且可以开机启动,是由于在 /lib/systemd/system 目录下会建立一个 xxx.service 的配置文件,里面定义了如何启动和如何关闭。

在 CentOS 里有点特殊,MySQL 被 Oracle 收购后,由于担忧受权问题,改成使用 MariaDB,他是 MySQL 的一个分支。经过 yum install mariadb-server mariadb 进行安装。使用 systemctl start mariadb 来启动,使用 systemctl enable mariadb 设置开机启动。同理,会在 /usr/lib/systemd/system 目录下,建立一个 xxx.service 的配置文件,从而成为一个服务。

相关文章
相关标签/搜索