Linux应用程序基础
典型应用程序的目录结构
常见的软件包封装类型
rpm命令的格式
-
rpm命令能够实现几乎所有对RPM软件包的管理功能
-
执行"man rpm"命令可以获得关于rpm命令的详细帮助信息
-
rpm命令功能
- 查询、验证RPM软件包的相关信息、
- 安装、升级、卸载RPM软件包
- 维护重建RPM数据库信息等综合管理操作 常用选项
示例:当前系统已安装的软件包查询
查看已安装的指定软件的详细信息
查看已安装的指定软件包在当前系统中安装的所有目录
反向查看已安装的指定的文件或目录属于哪个安装包
列出已安装的指定软件的软件包文档所在位置
查询未安装的RPM软件包文件中信息
rpm -qp[子选项] RPM包文件
常用选项
安装、升级、卸载RPM包
解决软件包依赖关系的方法
安装有依赖关系的多个软件时 被依赖的软件包需要先安装
可同时指定多个.rpm包文件进行安装
卸载有依赖关系的多个软件时 依赖其他程序的软件包需要先卸载
可同时指定多个软件名进行卸载
忽略依赖关系 结合“- -nodeps”选项,但可能导致软件异常
yum安装
什么是yum
yum( Yellow dog Updater, Modified)是一个在 Fedora 和 RedHat 以及 SUSE 中的 Shell 前端软件包管理器。基于 RPM 包管理,能够从指定的服务器自动下载 RPM 包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软件包,无须繁琐地一次次下载、安装。
安装:yun install 软件名
卸载:yun remove 软件名
配置yum本地仓库
Linux 系统中“一切皆文件”,所有文件都放置在以根目录为树根的树形目录结构中。在 Linux 来,任何硬件设备也都是文件,它们各有自己的一套文件系统(文件目录结构)
mount:挂载,你的包在你的光驱里并没有放在系统中,光盘的包只有先挂载在光盘到我的系统
unmount:解挂载,跟着硬件设备走,不在挂载的文件下
(什么是挂载:将硬件,比如光盘、光驱等,挂载在目录上使用,变成文件)
可以看到/mnt目录已经被sr0全部占用
进入yum目录移走系统原有yum
新建本地yum仓库
设置虚拟机配置
在终端关闭防火墙
挂载并查看是否成功
[root@localhost ~]# mount /dev/sr0 /mnt/ //写保护,将以只读的方式挂载,挂载到/mnt目录下
[root@localhost ~]# df -Th #查看挂载
切换至yum.repo.d目录,新建一个文件夹,再将自带的仓库移走
[root@localhost ~]# cd /etc/yum.repos.d/ //切换至cd /etc/yum.repos.d/
[root@localhost yum.repos.d]# mkdir beifen //创建一个文件夹,名为beifen
[root@localhost yum.repos.d]# mv *.repo beifen/ //把自带的仓库以.repo结尾的移到新建的beifen文件夹下
新建本地yum仓库
vim 123.repo //新建yum文件
[123]
name=123 //名称随便取
baseurl=file:///mnt //设置本地仓库的链接
enabled=1 //设置开启
gpgcheck=0 //无需验证
安装tree软件
安装软件包
yum install httpd -y //以安装httpd包为例
systemctl start httpd.service //启动httpd服务
此时我们在浏览器输入linux中的网络号就会出现httpd服务的页面
一键安装本地yun仓库
[root@localhost data]#vim yumlocal.sh
#!/bin/bash
mount /dev/sr0 /mnt/
cd /etc/yum.repos.d/
mkdir bakup
mv *.repo bakup/
echo "[local]
name=local
baseurl=file:///mnt
enabled=1
gpgcheck=0" > localyum.repo
yum clean all
yum list
[root@localhost data]#bash yumrepo.sh
#然后就可以用yum下载软件了
[root@localhost opt]#yum install -y httpd
源码编译安装
1.下载源代码安装包文件,以 APACHE 服务为例,我们需要进入httpd.apache.org/找到httpd的软件包。
2.解压安装包
使用 tar xvf 压缩包名字 将压缩包解压,解压后会在同级目录下出现一个以软件包为名字的文件夹,也可 -C 指定目录
3/.configure配置
cd 到该文件夹里,发现有一个名为configure的可执行文件,使用./configure配置进行安装目录、安装模块等选项的设置。
yum install -y pcre*
再执行./configure,这次发现没有报错
4.make编译
直接在该文件夹中执行 make 命令,进行编译,make编译是为了生成可执行的二进制文件。
5.make install 安装
接着使用 make install 命令进行安装,其用途是将可执行的二进制文件复制到系统中,配置应用环境。
6.测试
首先,我们使用 cd 到 /usr/local/apache文件夹,ls 一下,发现有一个 bin 文件夹,ls bin,发现有许多的可执行文件,其中有一个 apachectl 的可执行文件,我们./apachectl ,就将apache服务开启了。(httpd的可执行文件是一样的)
其次,关闭虚拟机防火墙
systemctl stop firewalld.service
setenforce 0