Linux软件安装的4种方式

一、二进制发布包,示例:二进制发布包安装jdk

  • 指软件已经根据平台编译并且打包,拿到这个包后解压并配置环境变量,如jdk包、mysql包、Tomcat包。

示例:二进制发布包安装jdk

1.获取安装包

  • 1).直接从linux网上下载放   --> wget https://download.oracle.com/otn-pub/java/jdk/13+33/5b8a42f3905b406298b72d750b6919f6/jdk-13_linux-x64_bin.tar.gz
  • 2).windows-->上传-->linux
  • 方法一:
  • 在linux编辑窗口用alt+p 打开sftp插件:put -r 路径\文件
  • put -r f:/Remote_terminal_tool/jdk_apk/jdk-8u144-linux-x64.tar.gz
  • 简便操作:alt+p 打开sftp插件 ,将需要上传的文件往sftp插件上拖拽即可,就存放在了当前家目录下。
  • 方法二:
  • ftp软件:如:FileZilla 软件,自行下载安装后连接(主机:ip地址/主机映射名称,用户名:root,密码,端口:22)

2.解压

  • 先查看linux中是否有通过rpm方式已经安装:rpm -qa | grep -i jdk   ##查看所有安装的软件,定位到只查看jdk(-i表示不区分大小写)
  • 存在已有的安装,需要卸载:rpm -e --nodeps 软件包   ##-e表示卸载,--nodeps表示忽略依赖包
##查看与卸载
[root@hadoop01 ~]# java -version
java version "1.7.0_79"
OpenJDK Runtime Environment (rhel-2.5.5.4.el6-x86_64 u79-b14)
OpenJDK 64-Bit Server VM (build 24.79-b02, mixed mode)

[root@hadoop01 ~]# rpm -qa | grep -i jdk
java-1.7.0-openjdk-1.7.0.79-2.5.5.4.el6.x86_64
java-1.6.0-openjdk-1.6.0.35-1.13.7.1.el6_6.x86_64

[root@hadoop01 ~]# rpm -e --nodeps java-1.7.0-openjdk-1.7.0.79-2.5.5.4.el6.x86_64
[root@hadoop01 ~]# rpm -e --nodeps java-1.6.0-openjdk-1.6.0.35-1.13.7.1.el6_6.x86_64

[root@hadoop01 ~]# rpm -qa | grep -i jdk
[root@hadoop01 ~]#

[root@hadoop01 ~]# java -version
-bash: /usr/bin/java: No such file or directory
  • 把上传的安装包解压到/opt目录下:tar -zxvf jdk-8u144-linux-x64.tar.gz -C /opt

3.配置环境变量

  • 全局配置(所有用户都可以使用):vim /etc/profile
  • G切换到最后加入下面两行,保持并退出
export JAVA_HOME=/opt/jdk1.8.0_144

    export PATH=${JAVA_HOME}/bin:${PATH}

从新执行这个文件:source /etc/profile

  • 输出检查是否生效:echo $PATH

4.测试

  • java -version
[root@hadoop01 opt]# java -version
java version "1.8.0_144"
Java(TM) SE Runtime Environment (build 1.8.0_144-b01)
Java HotSpot(TM) 64-Bit Server VM (build 25.144-b01, mixed mode)

出现以上内容表示安装成功,注:因为是通过二进制发布包方式安装的,所以用rpm -qa | grep -i jdk这个命令查询为空是正常的。


二、rpm发布包,示例:rpm发布包安装mysql

  • 采用RedHat(Redhat Package Manager)的包管理规范进行打包,获取到相应的软件RPM发布包,然后使用rpm命令安装。当然如mysql/jdk也可以采用这种方式安装,但安装软件可能需要依赖于其他软件,这个方法不能自动解决包依赖的问题。
  • 常用命令  
  • rpm -q 程序     ##查询某个程序是否安装
  • rpm -qa | grep -i 程序     ##从所有的安装包中忽略大小写模糊查询某个程序
  • rpm -ql 程序     ##查看安装的位置
  • rpm -e --nodeps 程序包   ##忽略依赖卸载(-e表示卸载,--nodeps表示忽略依赖)
  • rpm -e --force 程序包    ##强制卸载
  • rpm -ivh 程序   ##安装(-ivh表示安装、显示安装的过程、显示安装的进度)
  • rpm -uvh 程序   ##升级程序

  • 示例:rpm发布包安装mysql
  • 1.查看与卸载
  • rpm -qa | grep -i mysql   ##查看有没有安装mysql
  • rpm -e --nodeps mysql-libs-5.1.73-5.el6_6.x86_64   ##卸载已有的mysql-libs,如果没有就跳过
  • 2.包上传到linux
  • 在linux编辑窗口用alt+p 打开sftp插件 ,将需要上传的文件往sftp插件上拖拽即可,就存放在了当前家目录下;
  • 或者用ftp软件:如:FileZilla 软件上传。
  • 3.解包
  • 在包所在目录先查看:ll
  • 创建一个目录来存放解包:mkdir mysql
  • 解包:tar -xvf mysql-5.6.26-1.linux_glibc2.5.x86_64.rpm-bundle.tar -C /root/mysql 
  • 4.使用命令安装
  • 切换到解包的/root/mysql目录下:cd /root/mysql
  • 查看有哪些包需要安装:ll  
  • 最终关注的是MySQL-server-5.6.26-1.linux_glibc2.5.x86_64.rpm和MySQL-client-5.6.26-1.linux_glibc2.5.x86_64.rpm
  • 安装服务端:rpm -ivh MySQL-server-5.6.26-1.linux_glibc2.5.x86_64.rpm

如果提示错误:

warning: MySQL-server-5.6.26-1.linux_glibc2.5.x86_64.rpm: Header V3 DSA/SHA1 Signature, key ID 5072e1f5: NOKEY
error: Failed dependencies:
        libaio.so.1()(64bit) is needed by MySQL-server-5.6.26-1.linux_glibc2.5.x86_64
        libaio.so.1(LIBAIO_0.1)(64bit) is needed by MySQL-server-5.6.26-1.linux_glibc2.5.x86_64
        libaio.so.1(LIBAIO_0.4)(64bit) is needed by MySQL-server-5.6.26-1.linux_glibc2.5.x86_64

可以先安装一下依赖:

yum install libaio

安装日志看出安装位置:/usr/sbin/mysqld (mysqld 5.6.26) starting as process 3360 ...

安装日志看出默认初始密码位置:A random root password has been set. You will find it in '/root/.mysql_secret'.

安装日志提示说你必须要修改密码在第一登陆时:You must change that password on your first connect,

安装日志提示修改密码使用'SET PASSWORD':no other statement but 'SET PASSWORD' will be accepted.

安装日志看出配置文件的位置:New default config file was created as /usr/my.cnf and

 

  • 安装客户端:rpm -ivh MySQL-client-5.6.26-1.linux_glibc2.5.x86_64.rpm
  • 查看安装是否成功:rpm -qa | grep -i mysql
  • 5.启动服务
  • 启动mysql服务: service mysql start
  • 6.连接mysql
  • 查看mysql初始密码:cat /root/.mysql_secret
  • 复制出密码(注意不要复制到空格)
  • 登陆mysql:mysql -u root -p      回车粘贴密码,回车
  • 设置新密码为root(必须设置,不然不能用):set password=password('root');
  • 退出登陆:exit
  • 从新登陆mysql:mysql -u root -p    回车输入密码root,回车
  • 测试:show databases    可以查看,表示安装成功
  • 7.增加远程登陆权限 :mysql默认只能链接本机(127.0.0.1 / localhost),不允许远程连接
mysql>GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'root' WITH GRANT OPTION;  

mysql>FLUSH PRIVILEGES; 

#第一个root表示:授权给root用户
#第二个root表示:授权密码一般等于你的root用户密码

mysql>grant 权限1,权限2,…权限n on 数据库名称.表名称 to 用户名@用户地址 identified by ‘连 接口令’; 

  • mysql>重新加载权限表;
  • PS:1,权限 2,…权限 n 代表 select,insert,update,delete,create,drop,index,alter,grant,references,reload,shutdown,process,file 等 14 个权限。 当权限 1,权限 2,…权限 n 被 all privileges 或者 all 代替,表示赋予用户全部权限。 当数据库名称.表名称被*.*代替,表示赋予用户操作服务器上所有数据库所有表的权限。 用户地址可以是 localhost,也可以是 ip 地址、机器名字、域名。也可以用’%’地址连接。 
  • 同时检查关闭防火墙参考链接:
  • 如果连接还出现问题,那么请这么解决: 依次执行以下命令: 
    先登录 mysql,然后 mysql> use mysql;
  • mysql> select host, user, password from user; 
  • mysql> delete from user where host in ('localhost','hadoop01', '127.0.0.1','::1') 
  • 8.其他配置
  • vi /usr/my.cnf
  • 在最后加入:character-set-server=utf8mb4    保持并退出
  • 重启mysql:service mysql restart
  • 检查编码:再次输入进入MySQL:mysql -u root -p  输入 show  variables like 'char%';

三、yum在线安装

  • 在服务器上放置了rpm规范打包的软件,可以直接从服务器下载安装,同时还提供搜索服务以及处理包依赖问题,必须连网。
  • yum install 程序   ##yum安装程序
    yum remove  程序   ##yum卸载程序
    yum update 程序    ##yum更新程序
    不想在过程中被询问,就加入 -y  如:yum -y install 程序
  • yum 源(仓库/服务器):cd /etc/yum.repos.d/
[root@hadoop01 ~]# cd /etc/yum.repos.d/
[root@hadoop01 yum.repos.d]# ll
total 24
-rw-r--r--. 1 root root 1991 Aug  4  2015 CentOS-Base.repo
-rw-r--r--. 1 root root  647 Aug  4  2015 CentOS-Debuginfo.repo
-rw-r--r--. 1 root root  289 Aug  4  2015 CentOS-fasttrack.repo
-rw-r--r--. 1 root root  630 Aug  4  2015 CentOS-Media.repo
-rw-r--r--. 1 root root 6259 Aug  4  2015 CentOS-Vault.repo
[root@hadoop01 yum.repos.d]# cat CentOS-Base.repo

所有的repo文件就是软件的下载路径(仓库路径),里面就配置了软件的下载路径

  • 默认的仓库中可以安装那些文件,用yum repolist 查看yum源仓库的列表(可以使用的yum源列表),用yum list 查看软件列表,用yum list | grep 软件名 查看指定软件是否存在,并安装
[root@hadoop01 yum.repos.d]# yum list | grep ruby
graphviz-ruby.x86_64                       2.26.0-10.el6                 base   
libselinux-ruby.x86_64                     2.0.94-7.el6                  base   
openwsman-ruby.x86_64                      2.2.3-11.el6                  base   
rrdtool-ruby.x86_64                        1.3.8-10.el6                  base   
ruby.x86_64                                1.8.7.374-5.el6               base   
ruby-devel.i686                            1.8.7.374-5.el6               base   
......
[root@hadoop01 yum.repos.d]# yum -y install ruby

注意安装时,ruby.x86_64后面的.x86_64版本号_64/32位不用写

本地yum源配置(自己写一个repo的文件,当作本地yum源):存储rpm软件到自己的搭建的服务器上,并且配置到yum源文件中。这样就可以不用连网到远程服务器上去下载(网速问题),也是可以更好的让多台机器中的软件版本高度一致。

  • 过程1:搭建服务器
  • service httpd start    ##启动 httpd服务
  • httpd讲解链接:
  • 过程2:存放rpm软件到服务器
  • 将rpm软件放入httpd的目录下:/var/www/html/ 
  • rpm软件在挂载文件下有:cd /mnt/cdrom/Packages  切换到该目录输入:ll,这里面就有很多rpm软件
  • 通过ios镜像挂载才有的/mnt/cdrom/下的内容:
  • 切换到/mnt/目录下,发送软连接到放入httpd的目录下:ln -s /mnt/cdrom   /var/www/html/centos
  • 查看是否有软连接:cd /var/www/html/   输入ll
  • 然后在windows浏览器中访问:http://192.168.2.101/centos/
  • 过程3:在yum源配置文件中添加访问路径
[root@hadoop01 yum.repos.d]# cd /etc/yum.repos.d/
  oot@hadoop01 yum.repos.d]# ll
total 24
-rw-r--r--. 1 root root 1991 Aug  4  2015 CentOS-Base.repo
-rw-r--r--. 1 root root  647 Aug  4  2015 CentOS-Debuginfo.repo
-rw-r--r--. 1 root root  289 Aug  4  2015 CentOS-fasttrack.repo
-rw-r--r--. 1 root root  630 Aug  4  2015 CentOS-Media.repo
-rw-r--r--. 1 root root 6259 Aug  4  2015 CentOS-Vault.repo
[root@hadoop01 yum.repos.d]# cp CentOS-Media.repo  CentOS-local.repo            
[root@hadoop01 yum.repos.d]# ll
total 28
-rw-r--r--. 1 root root 1991 Aug  4  2015 CentOS-Base.repo
-rw-r--r--. 1 root root  647 Aug  4  2015 CentOS-Debuginfo.repo
-rw-r--r--. 1 root root  289 Aug  4  2015 CentOS-fasttrack.repo
-rw-r--r--. 1 root root  630 Oct 13 09:44 CentOS-local.repo
-rw-r--r--. 1 root root  630 Aug  4  2015 CentOS-Media.repo
-rw-r--r--. 1 root root 6259 Aug  4  2015 CentOS-Vault.repo
[root@hadoop01 yum.repos.d]# vim CentOS-local.repo

二进制安装docker和yum安装的区别 linux如何安装二进制包_二进制发布包安装jdk

##查看是否可以使用
[root@hadoop01 yum.repos.d]# yum repolist
Loaded plugins: fastestmirror, refresh-packagekit, security
Loading mirror speeds from cached hostfile
 * CentOS-Local: 192.168.2.101
 * base: mirrors.aliyun.com
 * extras: mirrors.aliyun.com
 * updates: mirrors.aliyun.com
CentOS-Local                | 4.0 kB     00:00     
CentOS-Local/primary_db     | 4.6 MB     00:00    
repo id                        repo name                      status
CentOS-Local                   CentOS-6 - Local                6,575
base                           CentOS-6 - Base                 6,713
extras                         CentOS-6 - Extras               46
updates                        CentOS-6 - Upd                  637
repolist: 13,971

过程4:使用

就可以使用yum像从公网安装软件一样在内网服务器上下载软件进行安装了

  • yum install -y 你要的软件
     

四、源码编译安装

  • 以源码工程方式发布,先编译再部署运行