Linux/Centos7安装与管理程序
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux/Centos7安装与管理程序相关的知识,希望对你有一定的参考价值。
Linux/Centos7安装与管理程序
- Linux应用程序基础
- 查询RPM软件包信息
- 安装、升级、卸载、RPM软件包 /yum仓库
- 源代码编译
一、应用程序与系统命令的关系
-
文件位置
-
系统命令:一般在/bin和/sbin目录中,或者为shell内部指令
-
应用程序:通常在/usr/bin和/usr/sbin目录中
-
主要用途
-
系统命令:完成对系统的基本管理操作
-
应用程序:完成相对独立的其他辅助任务
-
适用环境
-
系统命令:一般只在字符操作界面中运行
-
应用程序:根据实际需要,有些程序可以在图形用户界面中运行
-
运行格式
-
系统命令:一般包括命令字、命令选项和命令参数
- 应用程序:通常没有固定的执行格式
二、典型应用程序的目录结构
- /usr/bin 普通执行程序文件
- /usr/sbin 服务器执行程序文件和管理程序文件
- /etc 应用程序配置文件 (--prefix=‘指定的路径‘)
- /var/log 日志文件
- /usr/share/doc 应用程序文档文件
- /usr/share/man 应用程序手页文件
三、常见的软件包封装类型
- rpm软件包 .rpm
- deb软件包 .deb
- 源代码软件包 一般为.tar.gz或者tar.bz2
- 绿色免安装的软件包
-
RPM包管理工具
- 建立统一的数据库文件
- 详细记录软件包安装、卸载等变化信息
- 自动分析软件包的依赖关系
一般命名格式:bash-4.1.2-15.el6_4.x86_64.rpm如下表介绍:
bash | 软件名称 |
---|---|
4.1.2 | 版本号 |
15.el6_4 | 发布次数 |
x86_64 | 硬件平台 |
rpm | 扩展名 |
-
查询RPM软件包信息
查询已安装的——rpm -q【子选项】[软件名]
- -qa: 查看系统已安装的软件包
- -qi: 查看软件包的详细信息
- -ql: 查看软件包安装的所有信息
- -qf: 根据指定文件查看所属软件包
- -qc: 查看此软件包所有的配置文件(conf cnf ini)
- -qd: 查看此软件包的文档
查询未安装的——rpm -qp【子选项】rpm包文件( i l c d)
-
rpm安装更新与卸载
rpm -ivh——详细安装过程
- -U更新
- -e卸载
- -i 安装
- --force 强制执行
- --nodeps 解决依赖性关系 (可能会造成软件出现问题)
- -h 友好显示(带#读条显示)
- -v 显示详细信息
重建RPM数据库命令
- rpm --rebuliddb
- rpm --initdb
导入验证公钥(默认情况在镜像文件中就有)
rpm --import
四、解决软件包依赖关系方法
安装有依赖关系的多个软件时
- 被依赖的软件包需要先安装
- 可以同时指定多个.rpm包文件进行安装
卸载有依赖关系的多个软件时
- 依赖其他程序的软件包需要先卸载
- 可以同时指定多个软件名进行卸载
忽略依赖关系
结合“--nodeps”选项,但是可能导致软件异常!!!
五、源代码编译概述
使用源代码安装软件的优点
- 获取最新的软件版本,及时修复bug
- 根据用户需要,灵活定制软件功能
源代码编译过程(手工编译安装)——首先安装编译器(gcc和gcc-c++)
- 下载源代码安装包文件
- tar解压
- ./configure配置
- make编译
- make install 安装
- 测试及应用、维护
编译器安装操作
[root@lokott ~]# yum install gcc gcc-c++ pcre pcre-devel zlib-devel -y
....//中间过程省略,其中yum命令随后介绍
已安装:
gcc.x86_64 0:4.8.5-39.el7 gcc-c++.x86_64 0:4.8.5-39.el7 pcre-devel.x86_64 0:8.32-17.el7 zlib-devel.x86_64 0:1.2.7-18.el7
作为依赖被安装:
cpp.x86_64 0:4.8.5-39.el7 glibc-devel.x86_64 0:2.17-292.el7 glibc-headers.x86_64 0:2.17-292.el7 kernel-headers.x86_64 0:3.10.0-1062.4.1.el7 libmpc.x86_64 0:1.0.1-3.el7
libstdc++-devel.x86_64 0:4.8.5-39.el7
作为依赖被升级:
glibc.x86_64 0:2.17-292.el7 glibc-common.x86_64 0:2.17-292.el7 libgcc.x86_64 0:4.8.5-39.el7 libgomp.x86_64 0:4.8.5-39.el7 libstdc++.x86_64 0:4.8.5-39.el7 zlib.x86_64 0:1.2.7-18.el7
完毕!
可以用./configure --help查看帮助
典型配置选项:--prefix=软件安装目录 例如:
[root@lokott ~]#cd /usr/src/httd-2.2.15/
[root@lokott httpd-2.2.15]#./configure --prefix=/usr/local/apache
六、yum
yum的概念:(全称为 Yellow dog Updater, Modified)是一个在Fedora和RedHat以及CentOS中的shell前端软件包管理器。基于rpm包管理,能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软件包,无须繁琐地一次次下载、安装。
目的——为了解决依赖关系同时使用最新版本
yum仓库
(1)私网仓库
(2)公网仓库
- 自建仓库
- 官方仓库
七、总结
主要介绍了Linux的安装与管理程序,简述了Linux应用程序基础、查询RPM软件包信息以及安装、升级、卸载、RPM软件包 /yum仓库和源代码编译(手工编译安装)的相关要点,其中源代码安装中配置文件和make install程序error的概率比较高,所以解决这类问题的研究者都是有一定实力的!!!所以我们需要永远向优秀的人学习!
以上是关于Linux/Centos7安装与管理程序的主要内容,如果未能解决你的问题,请参考以下文章
Linux CentOS7系统上 RPM命令管理程序包 基础知识