在主机中安装了Linux操作系统之后,就具备了提供软件服务,网络服务等功能的基础。然而随着操作系统一起安装的软件包毕竟只有少数,实现的功能也比较有限,当需要为主机提供更多功能时,安装新的应用程序就成为必然要面对的工作。
在Linux系统中,一直以来命令和应用程序并没有特别明确的区别,从长期使用习惯来看,我们可以通过以下描述来对两者进行区别。
都是默认安装路径
RPM软件包管理机制最早由Red Hat公司提出,后来随着版本的升级逐渐融入了更多的优秀特性,成为众多Linux发行版中公认的软件包管理标准。
RPM包管理器通过建立统一的文件数据库,对在Linux系统中安装,卸载,升级的各种.rpm软件包进行了详细的记录,并能够自动分析软件包之间的依赖关系,保持各个应用程序在一个协调没有虚的整体环境中运行。
RPM机制封装的软件包文件拥有约定俗成的命名格式,一般使用“软件名 - 软件版本 - 发布次数.操作系统类型.硬件架构类型.rpm”的文件名形式。例如:
使用rpm命令的查询功能可以检查某个软件包是否已经安装,了解软件包的用途,软件包复制到系统中的文件等各种相关信息,以便更好地管理Linux系统中的应用程序。
2.21:查询已安装的RPM软件包信息 使用命令的基本格式 rpm -q[子选项] [软件名] 常用选项有以下几种 -qa -qi -ql -qf -qc -qd
使用“-qp”选项时,必须以RPM包文件的路径作为参数(可以有多个),而不是软件包名称。 命令都与“-q”类似 使用命令的基本格式 rpm -qp[子选项] RPM包文件 常用选项有以下几种 -qpi -qpl -qpc -qpd
使用rpm命令实现安装,升级,卸载软件包这些操作时,需要了解基本的命令选项。 2.维护RPM数据库 用于记录在Linux系统中安装,卸载,升级应用程序的相关信息,由RPM包管理系统自动完成维护,一般不需要用户干预。当RPM数据库发生损坏(误删文件,非法关机,病毒破坏等导致),且Linux系统无法自动完成修复时,当导致无法使用rpm命令正常的安装,卸载及查询软件包。 这时候可以使用rpm命令的“–rebuilddb”或“–initdb”功能对RPM数据库进行重建。 例如
[root@localhost~]#rpm --rebuilddb 或者 [root@localhost~]#rpm --initdb db的意思是数据库(database) init的意思是初始化3.Linux系统挂载外设里CD驱动到mnt目录里 首先需要进入虚拟机设置界面将CD驱动勾选起来 确保外设接入虚拟机
然后输入 mount /dev/cdrom空格/mnt 命令 挂载 外设里的CD驱动到mnt目录里 挂载成功编译安装的基本过程 获得所需安装的软件源代码以后,安装的基本过程包括解包,配置,编译及安装。大多数开源软件的安装都遵循这个过程。
实验目的: 通过xftp软件将一个程序包传送到虚拟机,进行安装,开启http服务,在客户机里能访问。
下面为HTTP的依赖关系包 (共七个包)(gcc 依赖4个包 gcc-c++ 依赖一个包) 是在挂载目录中添加依赖包(因为CD中有镜像文件,镜像文件中有些底层代码是和软件包有依赖关系的)
rpm -ivh /mnt/Packages/pcre-devel-8.32.-17.el7.x86_64.rpm rpm -ivh /mnt/Packages/apr-devel-1.4.8-3.el7_4.1x86_64.rpm rpm -ivh /mnt/Packages/expat-devel-2.1.0-10.el7_3.x86_64.rpm rpm -ivh /mnt/Packages/libdb-devel-5.3.21-24.el7.x86_64.rpm rpm -ivh /mnt/Packages/cyrus-sasl-devel-2.1.26-23.el7.x86_64.rpm rpm -ivh /mnt/Packages/openldap-devel-2.4.44-13.el7.x86_64.rpm rpm -ivh /mnt/Packages/apr-util-devel-1.5.2-6.el7.x86_64.rpm安装
make make installcd /usr/local/apache/bin/ vi /usr/local/apache/conf/httpd.conf 编辑配置目录中的http配置文件 在命令界面输入:set nu 显示文件行数编号 找到194行的代码,将前面的注释#按x去掉 :wq (保存退出) 【bin 】# ./apachectl start 在执行目录下 启动数据库–开启执行
成功访问到服务 systemctl stop firewalld 关闭防火墙 外部主机也能访问到服务