Linux 软件的安装的方式( Centos 7)

一、Linux软件包



1. bin文件.bin (适合所有Linux发行版) ,bin是可以执行文件
2. rpm包 ,yum(redhat系列)
3. 源码压缩包 (适合所有的Linux发行版)
4. 官方已经编译好的,下载软件包直接可以使用(绿色软件)



二、bind文件的安装与卸载

1.安装



1.将安装文件放到linux下,在这我们以`/home`为目录
2.给文件的可执行权限 `chmod u+x 软件名
3.执行安装 `./软件名`
4.将文件移动到`/opt`文件夹下
    mv   安装好的文件夹名   /opt
5.配置环境变量,修改PATH
    vi ~/.bashrc
     #在.bashrc下输入
     PATH=$PATH:软件的目录/bin



2.卸载



1.删除安装的文件夹
2.删除环境变量



三、rpm的安装与卸载

rpm包,是指已经编译之后的应用程序

1.安装



1.将安装文件放到linux下,在这我们以`/home`为目录
2.执行安装命令 `rpm -ivh 软件名
3.配置环境变量,修改PATH
    vi ~/.bashrc
    #在.bashrc下输入
    PATH=$PATH:软件的目录/bin

*** rmp 安装相关的一些命令:
1.检查是否已经安装
    rpm -qa | grep 文件名的关键字
2. 下载软件包
3. 安装依赖
    rpm -i /PATH/TO/PACKAGE_FILE
        -i 是安装
        -h: 以#显示进度;每个#表示2%; 
        -v: 显示详细过程
        -vv: 更详细的过程

     rpm -ivh /PATH/TO/PACKAGE_FILE
        --nodeps: 忽略依赖关系;
        --replacepkgs: 重新安装,替换原有安装;
        --force: 强行安装,可以实现重装或降级;
 4.rpm 查询
    - rpm -q PACKAGE_NAME: 查询指定的包是否已经安装
    - rpm -qa : 查询已经安装的所有包
    - rpm -qi PACKAGE_NAME: 查询指定包的说明信息;
    - rpm -ql PACKAGE_NAME: 查询指定包安装后生成的文件列表;
    - rpm -qc PACEAGE_NEME:查询指定包安装的配置文件;
    - rpm -qd PACKAGE_NAME: 查询指定包安装的帮助文件;
    - rpm -q --scripts PACKAGE_NAME: 查询指定包中包含的脚本
    - rpm -qf /path/to/somefile: 查询指定的文件是由哪个rpm包安装生成的
    - rpm -qpi /PATH/TO/PACKAGE_FILE,如果某rpm包尚未安装,我们需查询其                         说明信息、安装以后会生成的文件



2.rpm 升级



> 如果装有老版本的,则升级;否则,则安装

  - rpm -Uvh /PATH/TO/NEW_PACKAGE_FILE

> 如果装有老版本的,则升级;否则,退出

   - rpm -Fvh /PATH/TO/NEW_PACKAGE_FILE:
         - --oldpackage: 降级



3.卸载



1.检查是否已经安装
    rpm-qa | grep 文件名
2.如果已经安装
    rpm -e 文件名
    如果没有安装直接去usr 下删除文件
3.删除环境变量



  • 注意:在安装过程中不需要你去指定安装路径。rpm文件在制作的时候已经确定了安装路径。

4.rpm 安装特点



1. 无法指定安装目录。
2. 存在依赖关系。(jar之间的依赖)
3. rpm下载



四、yum安装

本地yum源配置: 管理rpm软件包

  1. 解决rpm下载问题
  2. 解决rpm文件的查询
  3. 解决rpm安装问题
  4. 解决了rpm的依赖
  5. 使用yum的前提:

要让本机可以联网,如果联不了网可以修改文件/etc/resolv.conf增加 nameserver 192.168.1.1 ;

缺点:yum 安装的包是开源的,跟官方的不一样。

1.安装



1.确定yum 源里是否有要安装的包
    yum search 包名
2.安装软件
    yum install 包名
3.查看要安装的软件信息
    yum  info  包名



2.卸载



yum remove 包名



3.yum 相关的命令



1.list: 列表 
    available:可用的,仓库中有但尚未安装的
    installed: 已经安装的
    updates: 可用的升级

2.yum [options] [command] [package ...]
    -y: 自动回答为yes
    --nogpgcheck
3.清理缓存
    yum clean all
4.makecache  构建缓存
    yum makecache

**其他相关:
- repolist: 显示repo列表及其简要信息
- update: 升级
- update_to: 升级为指定版本
- info:
- search:
- provides| whatprovides:
> 查看指定的文件或特性是由哪个包安装生成的;
- groupinfo
- grouplist
- groupinstall
- groupremove
- groupupdate



4.yum源的配置



1./etc/yum.repos.d  源的位置;
    文件的含义:
    [local base]
     name=localbase
     baseurl=file:///mnt/
     enabled=1
     gpgcheck=0
     gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6

    - name 库名称
    - baseurl 包所放的位置
      - 网络地址:http://
      - 本地地址:file://
    - enabled 是否开启
      - 1 开启
      - 0 关闭
    - gpgcheck 是否检查
      - 1 是
      - 0 否
    - gpgkey 检查的位置
2.获取源的方法
    1. 光盘
       1. 插入光盘(rpm文件)
       2. 挂载光驱到/mnt/目录中 mount /dev/cdrom /mnt
       3. 修改yum的配置文件,只留下一个配置文件即可
    2. 网络
       1. [网易](http://mirrors.163.com/)        
       2. [阿里云](http://mirrors.aliyun.com/) 

    3.在yum上下载到本地
        a. 配置好yum源(配置要在哪下的位置)
        b. 下载
        c. reposync -r 下载哪一个库[base] -p 下载到哪
           reposync -r base -p /var/repo



五、手动编译安装

以安装python 3 为例:

  1. 去官网下载 python3.x 的源码文件;
  2. 在linux中解压

tar -zxvf Python-3.6.6

  1. 准备编译环境

yum install gcc # python是以 c 编译的

  1. 准备安装依赖包 zlib,openssl,python的pip需要依赖这两个包

yum install zlib* openssl*

  1. 预编译:
在解压的文件中 有 readme 安装说明: 
./configure --prefix=/usr/python-3.6.6
./configure--enable-optimizations   
# 指定安装目录 /usr/python-3.6.6



6.编译

make

7.安装



make install



8.配置环境变量PATH:

  • 配置的目的:让系统帮我自动找到命令执行文件路径。
  • path值:一堆目录,每个目录之间用:隔开。
  • vim ~/.bashrc 在文件的最后一行新建一行
一般在生产环境中使用
         方式1 PATH=$PATH:/usr/python-3.6.6/bin

      方式2 (开发环境中使用)
      PYTHON_HOME=/usr/python3.6.6
      PATH=$PATH:$PYTHON_HOME/bin
- 保存退出

- 执行命令 `source ~/.bashrc`,为了加载~/.bashrc这个文件
- 注意:配置信息可以放在两个文件中。
   文件1:/etc/profile:整个系统的环境变量配置文件
   文件2:~/.bashrc:当前用户的环境变量配置文件



测试1:pip3 install ipython

安装一个python小工具:ipython
基于ipython工具 可以输入shell的命令

测试2:写个python代码测试一下

vim 01python是解释器语言.py
python3 01python是解释器语言.py

测试3:写脚本

1.linux脚本:给文件一个执行权限



#!/bin/bash
 useradd sxt
 echo "123123" | passwd --stdin sxt

 保存之后 修改权限
 chmod a+x  hello.sh



2.python脚本:给文件一个执行权限



#!/usr/python3.6.6/bin/python3
 print("hello python")
 def main():
       print("结束")
 main()

 保存之后 修改权限
 chmod a+x  hello.py