手记

linux软件安装管理总结

第一部分

1.软件包分类:
.源码包
-脚本安装包

.二进制包(RPM包、系统默认包)

2.rpm包命名管理
.rpm包在系统光盘中
mkdir /mnt/cdrom
mount /dev/sr0 /mnt/cdrom/
cd /mnt/cdrom/
cd Packages/
以上命令就可以查到所有包.

树形依赖:a->b->c
环形依赖:a->b->c->a
模块依赖:模块依赖,查询网站:www.rpmfind.net(出现依赖库文件 .so.0时)

安装命令:
(1).包全名和包名
.包全名:操作的包是没有安装的软件包时,使用包全名。而且要注意路径
.包名:操作已经安装的软件包时,使用包名,是搜索/var/lib/rpm/中数据库

(2)rpm -ivh 包全名
.选项:

  • -i(install) 安装
  • -v(verbose) 显示详细信息
  • -h(hash) 显示进度
  • --nodeps 不检测依赖性

(3)rpm包升级
.rpm -Uvh 包全名
.选项:

  • -U(upgrade) 升级

    rpm包卸载
    .rpm -e 包名(用包名是因为已经安装了)
    .选项:

  • -e(erase) 卸载
  • --nodeps不检查依赖性

RPM包查询:
(1)查询是否安装
.rpm -q 包名

查询包是否安装
  • -q 查询(query)

.rpm -qa

查询所有已经安装的RPM包
  • -a 所有(all)

(2)查询软件包详细信息
.rpm -qi包名
.选项:

  • -i 查询软件信息(information)
  • -p 查询未安装包信息(package)

(3)查询包中文件安装位置
.rpm -ql 包名
.选项:

  • -l 列表(list)
  • -p 查询未安装包信息(package)

(4)查询系统文件属于哪个RPM包
.rpm -qf 系统文件名
.选项:

  • -f 查询系统文件属于哪个软件包(file)

(5)查询软件包的依赖性
.rpm -qR 包名
.选项:

  • -R 查询软件包的依赖性(requires)
  • -p 查询未安装包信息(package)

RPM包校验:
(1)RPM包校验
.rpm -V 已安装的包名
.选项:

  • -V 校验指定RPM包中的文件(verify)

(2)RPM包中文件提取
.rpm2cpio 包全名 cpio -idv .文件绝对路径
-rpm2cpio

将rpm包转换为cpio格式的命令

-cpio

是一个标准工具,它用于创建软件档案文件和从档案文件中提取文件

3.yum在线管理
光盘搭建yum源
1、挂载光盘
.mkdir /mnt/cdrom

建立挂载点

.mount /dev/cdrom /mnt/cdrom/

挂载光盘

2、使网络yum源失效
.cd /etc/yum.repos.d/

进入yum源目录

.mv CentOS-Base.repo CentOS-Base.repo.bak

修改yum源文件后缀名,使其失效

搭建好本地yum源之后:
1.常用yum命令
.yun list

查询所有可用软件包列表

.yum search 关键字

搜素服务器上所有和关键字相关的包

安装命令:
.yum -y install 包名
.选项:

  • install 安装
  • -y 自动回答yes

    例如: yum -y install gcc --这个是c语言编译器 (yum安装只写包名即可)

升级命令:
.yum -y update 包名
.选项:

  • update 升级
  • -y 自动回答yes

卸载命令:
.yum -y remove 包名
.选项:

  • remove 卸载
  • -y 自动回答yes

!!!!建议-----服务器使用最小化安装,用什么软件安装什么,尽量不卸载
2、YUM软件组管理命令
.yum grouplist

列出所有可用的软件组列表

.yum groupinstall 软件组名 (组名必须是英文)

安装指定软件组,组名可以由grouplist查询出来

.yum groupremove 软件组名

卸载指定软件组
第二部分

源码包安装

. 1源码包和RPM包的区别

1、区别
.安装之前的区别:概念上的区别
.安装之后的区别:安装位置不同
RPM包安装在默认位置

源码包安装在指定位置当中,一般是 /usr/local/软件名/

安装位置不同带来的影响:RPM包安装的服务可以使用系统服务管理命令(service)来管理,例如RPM包安装的apache的启动方法是:
/etc/rc.d/init.d/httdp start
service httpd start

而源码包安装的服务则不能被服务管理命令管理,因为没有安装到默认路径中.所以只能用绝对路径进行服务的管理,如:
/usr/local/apache2/bin/apachectl start

. 2源码包安装过程
1、安装准备
.安装c语言编译器 (yum -y install gcc)
.下载源码包
.. http://mirror.bit.edu.cn/apache/httpd/

2、安装注意事项
.源代码保存位置:/usr/local/src/
.软件安装位置:/usr/local/
.如何确定安装过程报错:
-安装过程停止
-并出现error、warning或no的提示

3、源码包安装过程
.下载源码包
.解压缩下载的源码包
.进入解压缩目录

之后: ./configure 软件配置与检查 (./configure --prefix=/usr/local/apache2 指定安装位置)
-定义需要的功能选项。
-检测系统是否符合安装要求.
-把定义好的功能选项和检测系统环境的信息都写入Makefile文件,用于后续的编辑.

  make 编译
    (make clean 出现错误用)
  make install 编译安装

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

脚本安装包:
centos.sh脚本分析
.所谓的一键安装包,实际上还是安装的源码包与RPM包,只是把安装过程写成了脚本,便于初学者安装
.优点:简单、快速、方便
.缺点:
-不能定义安装软件的版本
-不能定义所需要的软件功能
-源码包的优势丧失

准备工作
.关闭RPM包安装的httpd和MySQL
.保证yum源正常使用
.关闭SELinux和防火墙 (vi /etc/selinux/config 把里面的enforcing 改为disabled)

8人推荐
随时随地看视频
慕课网APP