Linux系统配置(应用程序)

简介: 应用程序概述、命令与程序的关系、程序的组成、软件包封装类型、RPM、RPM概述、RPM用法、编译安装、解包、配置、编译、安装、启用httpd服务

前言

     在Linux中的应用程序被视为将软件包安装到系统中后产生的各种文档,其中包括可执行文件、配置文件、用户手册等内容,这些文档被组织为一个有机的整体,为用户提供特定的功能,因此对于“安装软件包”与“安装应用程序”这两种说法,并不做严格的区分

一、应用程序概述

1、命令与程序的关系

     在Linux操作系统中,一直以来命令和应用程序并没有特别明确的区别,从长期使用习惯来看可以通过以下描述来对两者进行区别

  • 应用程序命令的执行文件大多比较小,通常放置在/bin和/sbin目录中,对于内部命令常集成在Bash程序内,而不是独立地执行文件,命令文件一般在安装操作系统时一起安装,用于辅助操作系统本身的管理,命令行大多适用于“命令字 选项 参数”形式的一般格式,命令只在字符操作界面中运行
  • 应用程序的执行文件通常放在/usr/bin、/usr/sbin和/usr/local/bin、/usr/local/sbin中,应用程序一般需要在操作系统之外另行安装,提供相对独立于操作系统的功能,有时候等同于“软件”的概念,应用程序一般没有固定的执行格式,运行方式由程序开发者自行定义,应用程序可能会用到图形界面,形式多样,有些应用程序提供的执行文件,能够使用像Linux命令一样的运行格式,所以也经常被称为程序命令

2、程序的组成

     安装完一个软件包以后,可能会向系统中复制大量的数据文件,并进行相关设置,在Linux操作系统中,典型的应用程序通常由以下几部分组成

  • 普通的可执行程序文件:一般保存在/usr/bin目录中,普通用户即可执行
  • 服务器程序、管理程序文件:一般保存在/usr/sbin目录中,只有管理员能执行
  • 配置文件:一般保存在/etc目录中,配置文件较多时会建立相应的子目录
  • 日志文件:一般保存在/var/log目录中
  • 关于应用程序的参考文档等数据:一般保存在/usr/share/doc/目录中
  • 执行文件及配置文件的man手册页:一般保存在/usr/share/man/目录中

3、软件包封装类型

     对于各种应用程序的软件包,在封装时可以采用各种不同的类型,不同类型的软件包其安装方法也各不相同,常见的软件包封装类型如下

  • RPM软件包:这种软件包文件的扩展名为“.rpm”,只能在使用RPM(RPM Package Manager, RPM软件包管理器)机制的Linux操作系统中安装,如RHEL、Fedora、CentOS等,RPM软件包一般针对特定版本的操作系统量身定制,因此依赖性较强,安装RPM软件包可使用操作系统中的rpm命令
  • DEB软件包:这种软件包文件的扩展名为“.deb”,只能在使用DPKG(Debian Package,Debian包管理器)机制的Linux操作系统中进行安装,如Debian、Ubuntu等,安装DEB软件包可使用操作系统中的dpkg命令
  • 源代码软件包:这种软件包是程序员开发完成的原始代码,一般被制作成“.tar.gz”或“.tar.bz2”等格式的压缩包文件,因多数使用tar命令打包而成,所以经常被称为“TarBall”,安装源代码软件包需要使用相应的编译工具,如Linux中的C语言编译器gcc,因此,在安装操作系统的时候尽量勾选“开发工具”一项来安装基本的编译环境
  • 附带安装程序的软件包:这种软件包的扩展名不一,但仍以TarBall格式的居多,软件包中会提供用于安装的可执行程序或脚本文件,如install、 sh、 setup等,有时候会以“.bin”格式的单个安装文件形式出现,安装时只需运行安装文件就可以根据向导程序的提示完成安装操作

     开放源代码的自由软件绝大多数选择以TarBall的形式发布,而RPM软件包、DEB软件包等则使了二进制的文件格式,代码相对比较封闭

二、RPM

1、RPM概述

     RPM软件包管理机制最早由Red Hat公司提出,后来随着版本的升级逐渐融入更多的优秀特性,成为众多Linux发行版中公认的软件包管理标准,使用RPM机制封装的软件包文件拥有约定俗成的命名格式,一般使用 “软件名-软件版本-发布次数.操作系统类型.硬件架构类型.rpm” 的文件名形式

2、RPM用法

rpm 选项
rpm -qa 显示系统中以rpm方式安装的所有软件列表
rpm -q 软件包名称 查看某个安装包是否安装
rpm -qi 软件包名称 查看指定软件包详细信息
rpm -ql 软件包名称 显示软件包安装后所在的目录及文件列表
rpm -qf 文件或目录名 查看文件或目录是由哪个软件包安装的
rpm -ivh 软件包名称 以rpm方式安装软件(不推荐,还要装依赖包,推荐使用yum)
rpm -qp 查询未安装软件
rpm -e 软件包名称 卸载安装包
rpm -U 软件包名称 升级安装或新安装
rpm -F 软件包名称 升级安装,未安装则不安装
rpm -h 软件包名 显示安装进度
rpm -v 软件包名 显示安装过程详细信息
rpm --force 软件包名 强制安装,旧版本安装
rpm --nosignature 安装时不检查密钥

三、编译安装

     以安装httpd为例

1、解包

解压依赖包sj.tar.gz
yum install 依赖包内软件包名称
yum install gcc gcc-c++ make pcre-devel expat-devel perl pcre-devel.x86_64 apr-util-devel.x86_64
解压httpd包
tar zxf httpd.tar.gz -C /usr


2、配置

httpd包解压到usr目录下后会有解压后的httpd目录,进入解压后的该目录进行后续配置
cd /usr/httpd
./configure --prefix=/指定安装参数文件位置

3、编译

make

4、安装

make install

5、启用httpd服务

cd /参数安装位置/bin
./apachectl

结语

     大多数的Linux发行版都提供了相当丰富的应用程序,而这些程序的版本往往滞后于该软件的最新源代码版本,因为大多数的开源软件总是以源代码的形式最先发布,之后才会逐渐出现.rpm、.deb等二进制封装的版本,下载应用程序的最新源代码包并编译安装,可以在程序功能、安全补丁等方面得到及时更新

相关文章
|
3月前
|
安全 Linux Shell
Linux上执行内存中的脚本和程序
【9月更文挑战第3天】在 Linux 系统中,可以通过多种方式执行内存中的脚本和程序:一是使用 `eval` 命令直接执行内存中的脚本内容;二是利用管道将脚本内容传递给 `bash` 解释器执行;三是将编译好的程序复制到 `/dev/shm` 并执行。这些方法虽便捷,但也需谨慎操作以避免安全风险。
202 6
|
4月前
|
网络协议 Linux
Linux查看端口监听情况,以及Linux查看某个端口对应的进程号和程序
Linux查看端口监听情况,以及Linux查看某个端口对应的进程号和程序
699 2
|
4月前
|
Linux Python
linux上根据运行程序的进程号,查看程序所在的绝对路径。linux查看进程启动的时间
linux上根据运行程序的进程号,查看程序所在的绝对路径。linux查看进程启动的时间
72 2
|
27天前
|
缓存 Linux 开发者
Linux内核中的并发控制机制:深入理解与应用####
【10月更文挑战第21天】 本文旨在为读者提供一个全面的指南,探讨Linux操作系统中用于实现多线程和进程间同步的关键技术——并发控制机制。通过剖析互斥锁、自旋锁、读写锁等核心概念及其在实际场景中的应用,本文将帮助开发者更好地理解和运用这些工具来构建高效且稳定的应用程序。 ####
39 5
|
1月前
|
存储 安全 关系型数据库
Linux系统在服务器领域的应用与优势###
本文深入探讨了Linux操作系统在服务器领域的广泛应用及其显著优势。通过分析其开源性、安全性、稳定性和高效性,揭示了为何Linux成为众多企业和开发者的首选服务器操作系统。文章还列举了Linux在服务器管理、性能优化和社区支持等方面的具体优势,为读者提供了全面而深入的理解。 ###
|
2月前
|
监控 安全 Java
linux服务器上启动framework应用程序流程
【10月更文挑战第17天】在Linux服务器上启动Framework应用程序需经过准备工作、部署、启动、监控及访问五个步骤。首先确保服务器满足系统要求并安装依赖项;接着上传应用文件,编译构建,配置参数;然后通过脚本、命令行或系统服务启动应用;启动后检查日志,监控性能;最后确认访问地址,验证应用运行状态。具体操作应参照应用文档。
|
2月前
|
运维 Java Linux
【运维基础知识】Linux服务器下手写启停Java程序脚本start.sh stop.sh及详细说明
### 启动Java程序脚本 `start.sh` 此脚本用于启动一个Java程序,设置JVM字符集为GBK,最大堆内存为3000M,并将程序的日志输出到`output.log`文件中,同时在后台运行。 ### 停止Java程序脚本 `stop.sh` 此脚本用于停止指定名称的服务(如`QuoteServer`),通过查找并终止该服务的Java进程,输出操作结果以确认是否成功。
61 1
|
2月前
|
网络协议 Linux 开发工具
linux系统配置固定地址
linux系统配置固定地址
|
3月前
|
消息中间件 分布式计算 Java
Linux环境下 java程序提交spark任务到Yarn报错
Linux环境下 java程序提交spark任务到Yarn报错
47 5
|
2月前
|
监控 Java Linux
linux服务器上启动framework应用程序流程
【10月更文挑战第18天】在 Linux 服务器上启动框架应用程序的流程包括:准备工作(确保访问权限、上传部署文件、了解启动要求)、检查依赖项、配置环境变量、切换到应用程序目录、启动应用程序、监控启动过程以及验证应用程序是否正常运行。具体步骤可能因应用程序类型和框架而异。