Linux的软件安装命令

软件包分类

  • 源码包(提供开源软件代码)

    脚本安装(为源码包写一个安装界面)

  • 二进制包(经过编译后的rpm包、系统默认包——类似于Windows中的.exe)

    red hat为.rpm; debian为.deb。

distribution代表 软件管理机制 使用命令 在线升级机制(命令)
red hat/fedora RPM rpm,rpmbuild YUM(yum)
Debian/Ubuntu DPKG dpkg APT(apt-get)16.04

源码包的优点:

  • 开源,可修改源代码
  • 可自由选择所需功能
  • 软件是编译安装,更加适合自己的系统,更加稳定
  • 卸载方便(直接删除安装目录)

源码包的缺点:

  1. 安装过程步骤较多
  2. 编译时间比安装二进制包长
  3. 因为是编译安装,安装过程中一旦报错新手很难解决

二进制包的优点:

  1. 包管理系统简单,通过几个命令就可以实现安装、升级、查询、卸载
  2. 安装速度快

二进制包的缺点:

  1. 看不到源代码
  2. 功能选择不如源码包灵活
  3. 包依赖性问题解决繁琐

安装位置

rpm包安装位置(默认)

目录 注解
/etc/ 配置文件安装目录
/usr/bin/ 可执行命令安装目录
/usr/lib/ 程序所使用的函数库保存位置
/usr/share/doc/ 基本的软件使用手册保存位置
/usr/share/man/ 帮助文件保存位置

源码包安装位置(一般)

目录 注释
/usr/local/软件名 一般用户安装位置

安装位置不同带来的影响(服务的管理方法不同)

  • rpm包安装的服务可以使用系统服务管理,命令service来管理

    如rpm安装的apache的启动方式:

    1. /etc/rc.d/init.d/httpd start
    2. service httpd start
  • 源码包安装只能使用绝对路径来管理;service对其不起作用

RPM特性与安装命令

RPM包依赖性

rpm安装

1
2
3
4
5
rpm -ivh 包全名
-i(install)
-v(verbose)显示详细信息
-h(hash)显示进度
--nodeps 不检测依赖性

rpm升级

1
2
rpm -Uvh 包全名
-U(update)

rpm卸载

1
2
3
rpm -e 包名
-e(erase)卸载
--nodeps 不检查依赖性

others

1
2
3
4
5
6
rpm -q  包名	 查询是否安装 
rpm -qa 查询所有已安装的rpm包
rpm -qi 包名 查询软件包详情
rpm -ql 包名 查询软件包中文件的安装位置(打算安装位置)
rpm -qf 文件名 查询系统文件属于哪个rpm包
rpm -qR 包名 查询软件包的依赖性

YUM在线管理

  1. 解决rpm包繁琐的依赖性问题
  2. 可在无网络环境下用cd解决yum源问题

查询

1
2
yum list
yum search 关键字

安装

1
yum -y install 包名	-y自动回答yes

升级

1
yum -y update 包名

卸载

1
yum -y remove 包名

yum软件组管理命令

1
2
3
yum grouplist
yum groupinstall "软件组名" 组名有空格则加双引号
yum groupremove "软件组名"

注:yum的问题

  1. yum -y install更新系统内核,会导致系统启动不了,不能在远程机上执行
  2. yum卸载若有系统相关依赖包,会导致系统异常(尽量不要卸载)

源码包安装

  1. 安装准备

    • 安装gcc编译器
    • 下载源码包
  2. 注意事项

    • 源代码保存位置:/usr/local/src
    • 软件安装位置:/usr/local/src
    • 如何确定安装过程报错
      • 安装过程停止
      • 并出现error、warning、not提示
  3. 安装过程

    make 编译
    make clean 清空出错的编译文件
    make install 编译安装

  4. 源码包卸载

    直接删除软件目录,如: rm -rf /usr/local/apache2/

Debian之Ubuntu软件安装

ubuntu16.04版本后apt-get可简化写为apt

在线安装apt-get

  • 安装

    1
    sudo apt-get install 包名
  • 卸载

    1
    sudo apt-get remove 软件名
  • 软件列表的更新

    1
    2
    sudo apt-get update
    ps:软件列表是ubuntu提供的可安装程序的所有链接;一般在安装之前先更新一下
  • 清空缓存

    1
    2
    sudo apt-get clean  清空在线安装缓存在本地的安装包
    位置: /var/cache/apt/archives/

软件包的安装(*.deb格式)

  • 安装

    1
    sudo dpkg -i 包全名
  • 卸载

    1
    sudo dpkg -r 软件名

----\(˙<>˙)/----赞赏一下吧~