一. Linux应用程序基础
1.1 应用程序与系统命令的关系
1.11 系统命令
文件位置
一般在/bin和/sbin目录中,或为Shell内部指令
主要用途
完成对系统的基本管理工作,例如ip配置工具
适用环境
一般只在字符界面中运行
运行格式
一般包括命令字,命令选项和命令参数
1.12 应用程序
文件位置
通常在/usr/bin和/usr/sbin目录中
主要用图
完成相对独立的其他辅助任务,例如网页浏览器
适用环境
根据实际需要,有些可在图形界面中运行
运行格式
通常没有固定的执行格式
1.2 应用程序的目录结构
文件类型
普通执行程序文件
保存目录:/usr/bin
服务器执行程序文件和管理程序文件
保存目录:/usr/sbin
应用程序配置文件
保存目录:/etc
日志文件
保存目录: /var/log
应用程序参考文档文件
保存目录:/usr/share/doc
应用程序手册页文件
保存目录: /usr/share/man
1.3 常见的软件包封装类型
文件类型
RPM软件包
扩展名为:“.rpm"
DEB软件包
扩展名为”.deb“
源代码软件包
一般为”.tar.gz“,".tar.bz2"等格式的压缩包。包含程序的原始代码
绿色免安装软件包
软件包扩展名不一,以TarBall格式的居多,在压缩包内提供以编译好的执行程序文件,解开压缩包后的文件即可直接使用。
二. rpm 软件包管理工具
2.1 查询验证RPM软件包的相关信息
查询已经安装的RPM软件包的相关信息
rpm -q [子选项] [软件名]
-qa:查看已经安装的所有RPM软件包列表
-qi:查看指定软件包的详细信息
-ql:查看软件包的安装目录,文件列表
-qf:通过文件的具体路径,插这个软件的具体版本
-qc:列出配置文件(/etc下的文件),去列出conf文件的位置 //查看配置文件所在的位置
-qd:列出帮助文件(man)
查询未安装的RPM包文件信息
rpm -qp [子选项] [软件名]
-pqi:查看该软件包的详细信息
-pql:查看包内所有的目录,文件列表
-pqc:列出配置文件
-pqd:列出帮助文件(man
2.2 安装,升级,卸载RPM软件包
-i:在当前系统中安装(Install)一个新的 RPM 软件包
-e:卸载指定名称的软件包
-U:检查并升级系统中的某个软件包,若该软件包原来并未安装,则等同于“-i”选项
-F:检查并更新系统中的某个软件包,若该软件包原来并未安装,则放弃安装
-h:在安装或升级软件包的过程中,以“#”号显示安装进度
-v:显示软件安装过程中的详细信息
--force:强制安装某个软件包,当需要替换已安装的软件包及文件,或者安装一个比当前使用的软件版本更旧的软件时,可以使用此选项
--nodeps:在安装或升级、卸载一个软件包时,不检查与其他软件包的依赖关系
2.3 维护RPM数据库
重建RPM数据库
##rpm --rebuilddb
##rpm --initdb
三. 源代码编译安装
1.下载源代码安装包文件
Tarball封包,.tar.gz和.tar.bz2格式居多
2.完整性校验:md5sum校验
##md5sum httpd-2.4.25.tar.gz
3.确认源代码编译环境
部署依赖环境
## mount /dev/cdrom /mnt 先挂光盘
## cd /mnt/Packages/
## rpm -ivh pcre-devel-8.32-17.el7.x86_64.rpm
## rpm -ivh pcre-devel-8.32-17.el7.x86_64.rpm
## rpm -ivh libdb-devel-5.3.21-20.el7.x86_64.rpm
## rpm -ivh cyrus-sasl-devel-2.1.26-21.el7.x86_64.rpm
## rpm -ivh openldap-devel-2.4.44-5.el7.x86_64.rpm
## rpm -ivh apr-util-devel-1.5.2-6.el7.x86_64.rpm
4.tar解包,解压并释放源代码包到指定的目录
## tar zxvf httpd-2.4.25.tar.gz -C /opt
5. ./configure配置 用途:设置安装目录,安装模块等选项
## cd /opt/httpd-2.4.25/
## ./configure --prefix=/usr/local/apache
6.make编译,生成可执行的二进制文件
# make
7. make install 安装,复制二进制文件到系统,配置应用环境
# make install
8. 测试及应用,维护软件
## cd /usr/local/apache/bin/
## vi /usr/local/apache/conf/httpd.conf
## ./apachectl start
## rpm -ivh /mnt/Packages/lynx-2.8.8-0.3.dev15.el7.x86_64.rpm
## lynx 127.0.0.1