Linux软件安装 (基于 Fedroa )

一、Linux软件包种类

  • 1.源码包---tar.gz
    这种格式下软件安装包,可以看到源码,安装比较灵活。
  • 2.RPM 包
    源码进行编译后的Linux软件包,看不到源码,相对没有源码包灵活,但rpm包安装起来比较方便,只需要几个简单的命令。

二、RPM包安装

1.RPM包命名原则

httpd-2.2.15-15.el6.centos.1.i868.rpm

httpd -- 软件包名
2.2.15 -- 软件版本
15 -- 发布次数
el6.centos -- 适合Linux的平台
i868 -- 适合硬件平台
rpm -- 包扩展名

2.包全名和包名

  • 在操作系统没有安装软件包时,需要的为包全名。
  • 操作已经安装的软件包时,使用包名,安装的RPM在,/var/lib/rpm数据库中。

3.rpm软件包安装命令

安装命令

rmp -ivh 包全名
i -- install 安装
v -- verbose 显示详细信息
h -- hash 显示进度

rpm包升级

rpm -Uvh 包全名
U - upgrade 升级

rpm包卸载

rpm - e 软件包
-e erase 卸载

查询rpm包安装情况

rpm - q 包名 //查询包是否安装
q - query

查询所有已经安装的RPM包

rpm -qa
a -- all

查询包中含有xxx关键字的所有包

rpm -qa | grep xxx

查询包的详细信息

rpm -qi 包名
i -- information
p -- 查询未安装包的详细信息

查询包中文件的安装位置

rpm -ql 包名
l -- list

常见的RPM默认安装位置

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

查询系统文件属于哪一个RPM包

rpm -qf 系统文件名
f - file

查询软件包的依赖性

rpm -aR 包名
R -- requires
p -- 查询未安装包的信息

RPM包的校验

rpm -V 已经安装的包名
V 校验指定RPM 包中的文件

验证内容中的8个信息的具体内容如下:
S - 文加的大小是否改变
M - 文件的类型或者权限是否改变
5 - 文件的MD5校验和是否改变(可以看成文件内容是否改变)
D - 设备的主从代码是否改变
L - 文件的路径是否改变
U - 文件的属主(所有者)是否改变
G - 文件的属组是否改变
T - 文件的修改时间是否改变

二、源码包安装

rpm包存在默认安装目录,也可以指定安装目录,但是不建议这样做。
源码包需要指定安装目录,否则源码包会将安装文件放到各处,造成后续操作复杂。

  • 具体源码包河RPM包的区别
  1. rpm可以通过service 命令进行启动
    rpm包的安装位置一般在包中由包作者指定,但是也可以进行自定义安装位置。
    rpm包安装的服务可以使用系统服务管理命令(service)来管理,例如RPM包安装的appache的启动方法就是:
    /etc/rc.d/httpd start (启动service服务)
    service httpd start (通过service启动软件)

  2. 源码包的安装位置一般需要指定位置,一般是: /usr/local/软件名
    源码包安装的服务则不能被服务管理命令管理,因为没有安装到默认的路径中,只能通过绝对路径进行服务管理:
    /usr/local/appache2/bin/apachectl start/stop

安装准备

  • 安装C语言编译器
  • 下载源码包
  • 基本步骤
    • 下载源码包
    • 解压源码包
    • 进入解压目录

安装注意事项:
源代码保存位置: /usr/local/src
软件安装位置: /user/local/

  • 如何确定安装过程报错:
    安装过程停止
    并出现error 、wraning或no的提示

  • 可自定义项:
    进入到解压目录后, 可操作configure文件,进行软件配置和检查
    可进行以下操作:
    定义需要的功能选项
    检测系统环境是否符合安装要求
    把定义好的功能选项和检测系统环境的信息都写入Markfile文件,用于后续的编辑。

使用 --prefix=xxx 来自定义安装位置

  • 具体的安装命令:
    make 编译
    由于错误造成编译失败,需要制定 make clean 进行删除相关的编译文件
    make install 编译安装

  • 源码包的卸载
    不需要卸载命令,直接删除安装目录即可,不会遗留任何的垃圾文件。

你可能感兴趣的:(Linux软件安装 (基于 Fedroa ))