一、Linux应用程序
1.1、应用程序与系统命令的关系
1.1.1:文件的位置
- 系统命令:一般在/bin和/sbin目录中,或为Shell内部命令
- 应用程序:通常在/usr/bin和/usr/sbin目录中
1.1.2:主要用途
- 系统命令:完成对系统的基本管理工作,例如ip配置工具
- 应用程序:完成相对独立的辅助任务,例如网页浏览器
1.1.3:使用环境
- 系统命令:字符界面中运行
- 应用程序:根据实际需要,有些程序可在图形界面运行
1.1.4:运行格式
- 系统命令:一般包括命令字,命令选项和命令参数
- 应用程序:没有固定的执行格式
1.2、典型应用程序的目录结构
文件类型 | 保存目录 |
---|---|
普通执行程序文件 | /usr/bin |
服务器执行程序文件和管理程序文件 | /usr/sbin |
应用程序配置文件 | /etc |
日志文件 | /var/log |
应用程序参考文档文件 | /usr/share/doc |
应用程序手册文件 | /usr/share/man |
1.3、常见的软件包封装类型
文件类型 | 保存目录 |
---|---|
RPM软件包 | 扩展名为“.rpm” |
DEBR软件包 | 扩展名为“.deb” |
源代码软件包 | 一般为“.tar.gz”,“.tar.bz2”等格式的压缩包,包含程序的原始代码 |
绿色免安装的软件包 | 软件包扩展名不一,以TarBall格式居多,在压缩包内提供以编译好的执行程序文件,解开压缩包后的文件可直接使用 |
二、RPM软件包管理工具
- 二进制包,无需编译,直接使用
2.1、YUM工具
2.1.1:yum概述
基于RPM包管理,能从指定服务器自动下载rpm包并且安装可以自动处理依赖性关系,一次性下载所有依赖软件包
2.1.2:yum命令格式
- yum (选项)(参数)
- 选项:
-h:显示帮助信息;
-y:对所有的提问都回答“yes”;
-c:指定配置文件;
-q:安静模式;
-v:详细模式;
-d:设置调试等级(0-10);
-e:设置错误等级(0-10);
-R:设置yum处理一个命令的最大等待时间;
-C:完全从缓存中运行,而不去下载或者更新任何头文件。 - 参数:
install:安装rpm软件包;
update:更新rpm软件包;
check-update:检查是否有可用的更新rpm软件包;
remove:删除指定的rpm软件包;
list:显示软件包的信息;
search:检查软件包的信息;
info:显示指定的rpm软件包的描述信息和概要信息;
clean:清理yum过期的缓存;
shell:进入yum的shell提示符;
resolvedep:显示rpm软件包的依赖关系;
localinstall:安装本地的rpm软件包;
localupdate:显示本地rpm软件包进行更新;
deplist:显示rpm软件包的所有依赖关系。
2.1.3:yum使用步骤
- 设置yum源(配置下载地址)
- 直接下载
①、记住地址 /etc/yum.repos.d/(yum核心配置文件夹)里面的文件就是下载地址
②、移动或删除官方的源地址
③、编写本地yum库配置 name,URL=file://(本地地址)/ —编译完要yum clean all—yum makecache
④、挂载光盘,新建一个文件夹放进去(vim /root/.bashrc—每次开机自动挂载)
[root@localhost ~]# mount /dev/cdrom /mnt ###挂光盘
df -Th------查看
①、yum install -y httpd ------安装软件
②、systemctl start httpd -----启动软件
③、systemctl stop firewalld ----关闭防火墙
④、systemctl disable firewalld-----禁止防火墙开机启动
2.1.4:yun管理rpm包
安装:第一次安装:yum -y istall httpd(软件包名) vsftpd(第n个软件包)
缺失文件,重新安装时:yum -y reinstall httpd
升级:yum -y update httpd
查询:yum list httpd -----查询是否安装
卸载:yum -y remove(移除,卸载)
2.2、rpm工具
2.2.1:rpm概述
- RPM软件包管理机制最早由Red Hat公司提出,后来随着版本的升级逐渐融入了更多的优秀特性,成为众多Linux发行版中公认的软件包管理标准。
2.2.2:rpm软件包命名格式
- RPM机制封装的软件包文件拥有约定俗成的命名格式,一般使用“软件名 - 软件版本 - 发布次数.操作系统类型.硬件架构类型.rpm”的文件名形式。
2.2.3:使用参数
- 查询已经安装的RPM软件信息
参数 | 解释 |
---|---|
-qa | 查看已经安装的所有的RPM软件包列表 |
-qi | 查看指定软件包详细信息 |
-ql | 查询软件包的安装目录、文件列表 |
- 查询未安装的RPM包文件
参数 | 解释 |
---|---|
-qpi | 查看该软件的详细信息 |
-qpl | 查看包内所有包含的目录、文件列表 |
- 查询文件或目录属于哪个RPM软件
示例:[root@localhost opt]# rpm -qf /usr/bin/vim vim-enhanced-7.4.160-2.el7.x86_64
- 安装、升级RPM软件
-i 安装一个新的rpm软件 ## 常用
-U 升级、若未安装、则进行安装 ## 不是经常用 版本要更新的时候可能用
-h 以#号显示安装的进度 ## 常用
-v 显示安装过程的详细信息 ## 常用
-F 更新某个rpm软件,若未安装,则放弃安装
- 卸载RPM软件
rpm -e 【软件名】
2.2.4:rpm的查询,安装,卸载
1、先有包,找到包(挂载光盘)
2、安装—rpm -ivh wget-1.14…(包名)
3、查询—rpm -q wget…(-q 查询)
4、卸载----rpm -evh wget…
三、源代码编译安装
3.1、源代码编译安装概述
- Linux操作系统之所以能够在十余年的时间里发展壮大以至于风靡全球,其开放源代码的特性是很重要的原因之一,及Linux操作系统中包括内核在内的所有软件都可以获得源代码,并且可以经过定制修改后编译安装。
- 虽然现代的Linux发行版本大部分采用包管理机制对软件进行打包安装,可以省去软件的编译安装过程,但是还有些情况需要使用源代码编译的方式为系统安装新的应用程序。
- 编译源代码需要有相应 的开发环境,对于自由软件来说,gcc和make是最佳的编译工具。Linux系统采用默认安装后没有安装gcc,我们可以使用rpm命令来安装gcc。所需的软件包在镜像文件中就有提供。
3.2、编译安装的基本过程
- 获得源码包------官网下载等等
- 部署安装:准备编译环境—yum -y install gcc make ----安装编译软件
- 解压:useradd www-----指定用户使用
tar xvf httpd-2.4.25.tar.gz —解压
cd httpd-2.4.25—进入 - 配置:在编译应用程序之前,需要进入源代码目录,对软件的安装目录,功能选择等参数进行配置。
./configure -user=www -------需求配置加什么功能 - 编译: 编译的过程主要是根据Makefile文件内的配置信息(若上一步的配置操作失败,将无法进行编译),将源代码文件进行编译而生成二进制的程序模块,动态链接库,可执行文件等。
配置完成后,只需要在源代码目录中执行“make”命令即可执行编译操作。 - 安装: make install
- 启动测试: /usr/local/httpd/sbin/httpd
- systemctl stop firewalld -------关闭防火墙
- 使用浏览器访问本机ip 通了即成功
3.2.1: ./configure 配置
- 配置工作通常使用源码目录中的configure脚本完成,./configure 要在压缩包目录中找到
- 执行“./configure --help”可查看帮助
- 典型的配置选项:–prefix=软件安装目录(指定软件包安装的目标文件夹)
四、下载安装httpd服务实验
下载安装httpd压缩包和apache依赖包
wget http://archive.apache.org/dist/apr/apr-1.4.5.tar.gz
wget http://archive.apache.org/dist/apr/apr-util-1.3.12.tar.gz
解压到/opt目录下,将apr和apr-util放到/opt/srclib下
然后安装编译工具:
yum -y install make gcc gcc-c++ pcre pcre-devel
./configure \
--prefix=/usr/local/apache \
--enable-so \
--enable-rewrite \
--enable-mods-shared=most \
--with-mpm-worker \
--disable-cgid \
--disable-cgi
make
make install
然后进入安装的目录找httpd配置文件
cd /usr/local/apache
cd httpd/config/httpd.config
vim httpd.config -----修改端口号和访问地址
cd /usr/local/apache/bin
vim apachectl ---运行脚本
./apachectl start ----开启apache服务
cd /usr/local/apache/httpd/htdocs
ls
vim indox.html -----网站首页信息