linux应用程序基础及安装方式(RPM,YUM和源代码编译)!
Posted 龙少。
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了linux应用程序基础及安装方式(RPM,YUM和源代码编译)!相关的知识,希望对你有一定的参考价值。
linux应用程序基础及安装方式
一.linux应用程序基础
1.应用程序和系统命令的关系
2.典型应用程序的目录结构
3.常用的软件包封装类型
二.linux系统安装程序软件的三种方式
1.rpm包管理工具
(1)rpm包管理工具
Red-Hat Package Manager的缩写
①由Red-Hat公司提出,被众多Linux发行版所采用
②建立统一的数据库文件
③详细记录软件包安装,卸载等变化信息
④自动分析软件包依赖关系
说明;如果存在依赖关系,必须先要安装依赖包才能再安装软件包
(2)rpm软件包安装
rpm -ivh +软件包的名字
1)软件包一般命名格式:bash-4.1.2-15.e16_4.x86_64.rpm
说明:bash是软件名,4.12是版本号,15是发布次数,4.x86_64是硬件平台,.rpm是扩展名
2)下载软件网址:
https://pkgs.org/
https://www.rpmfind.net/
http://www.rpm.org
3)wget+网址下载
下载:切换 cd /opt 输入wget+网址
4)相关命令:
查询一个软件包是否安装
rpm -q 软件名
[root@localhost ~]# rpm -q httpd
未安装软件包 httpd
[root@localhost ~]# rpm -q openssh
openssh-7.4p1-16.el7.x86_64
查询所有已安装的软件包
rpm -qa
查询已安装的软件包openssh
rpm -qa | grep openssh
rpm -qa | grep “^open”
[root@localhost ~]# rpm -qa | grep openssh
openssh-7.4p1-16.el7.x86_64
openssh-server-7.4p1-16.el7.x86_64
openssh-clients-7.4p1-16.el7.x86_64
[root@localhost ~]# rpm -qa |grep "^open"
openldap-2.4.44-20.el7.x86_64
openjpeg-libs-1.5.1-18.el7.x86_64
open-sans-fonts-1.10-1.el7.noarch
open-vm-tools-desktop-10.2.5-3.el7.x86_64
openssl-libs-1.0.2k-16.el7.x86_64
openssh-7.4p1-16.el7.x86_64
open-vm-tools-10.2.5-3.el7.x86_64
openssl-1.0.2k-16.el7.x86_64
openssh-server-7.4p1-16.el7.x86_64
opencc-0.4.3-3.el7.x86_64
openssh-clients-7.4p1-16.el7.x86_64
mount 挂载
将/dev/sro 挂载在/mnt 的文件里
mount /dev/sro /mnt
查看自带软件包packages里查询httpd
ls /mnt/packages/ | grep httpd
安装软件(无网络有安装包的情况下)
rpm -ivh +软件安装包名称
查看软件里的属性
rpm -qi+软件名称
查看配置文件
rpm -qc +软件包名称
查看软件httpd的主配置文件
/etc/httpd/conf/httpd.conf
查看所有文件
rpm -ql+软件包名称
查看软件httpd的日志文件
/var/log/httpd
查看软件包的配置帮助文档
rpm -qd+软件包名称
查看软件包由哪个安装包安装的
rpm -qf+路径名称
卸载软件
rpm -e +软件名称
忽略依赖关系强制卸载软件
rpm -e 软件包名称 --nodeps 慎用
启动软件
systemctl start +安装软件(httpd)
查看服务器端口是否启动
netstat -antp | grep httpd
查看80端口是否在启动、监听
netstat -antp | grep 80
查看是否开机自启
systemctl is-enable httpd
设置开启开机自启
systemctl enable+安装软件名称
关闭开机自启,开机不自启
systemctl disable+安装软件名称
vim+主配置文件
重启软件
systemctl restart+安装包软件
vim /etc/resol.conf 修改域名ip
vim /etc/hosts 修改网站网址
查看已安装文件的依赖关系,所需要的依赖包
rpm -qR+安装软件包
查看未安装的软件包的具体信息
rpm -qpi +未安装的具体软件包名称
升级;更新
rpm -U 或 -F
说明 -U:表示如果软件未安装,直接升级安装;如果已安装,就执行升级操作。
-F:表示如果软件未安装,直接放弃升级安装操作。
查看rpm数据库文件
cd /var/lib/rpm
rpm --rebuilddb 修复
rpm --initdb 修复
2.yum源
安装软件
yum install+安装软件名+ -y
-y连同依赖包一起安装
卸载软件
yum remove+安装软件名 -f
-f 连同依赖关系一起卸载
说明:当卸载主程序时,依赖包不会被卸载。当卸载依赖包,主程序也将会被卸载。
查看yum已安装的所有软件列表
yum list
查看当前在使用的软件源
yum repolist
查看所有软件源(包含禁用的)
yum repolist all
查看已安装的软件包(可用于查看软件是否已安装)
yum list installed httpd
查看命令由哪个软件包安装
yum provides+命令
yum wahtprovides+命令路径
[root@localhost ~]# yum provides rz
已加载插件:fastestmirror, langpacks
Loading mirror speeds from cached hostfile
* base: mirrors.aliyun.com
* extras: mirrors.aliyun.com
* updates: mirrors.huaweicloud.com
extras/7/x86_64/filelists_db | 231 kB 00:00:00
lrzsz-0.12.20-36.el7.x86_64 : The lrz and lsz modem communications programs
源 :base
匹配来源:
文件名 :/usr/bin/rz
lrzsz-0.12.20-36.el7.x86_64 : The lrz and lsz modem communications programs
源 :@anaconda
匹配来源:
文件名 :/usr/bin/rz
[root@localhost ~]# yum whatprovides /usr/bin/rz
已加载插件:fastestmirror, langpacks
Loading mirror speeds from cached hostfile
* base: mirrors.aliyun.com
* extras: mirrors.aliyun.com
* updates: mirrors.huaweicloud.com
lrzsz-0.12.20-36.el7.x86_64 : The lrz and lsz modem communications programs
源 :base
匹配来源:
文件名 :/usr/bin/rz
lrzsz-0.12.20-36.el7.x86_64 : The lrz and lsz modem communications programs
源 :@anaconda
匹配来源:
文件名 :/usr/bin/rz
想要下载但还没有下载(搜索软件包)
yum search + 软件名称
查看当前系统当中有哪些软件包可供更新
yum list updates
更新升级所有(只升级软件)
yum upgrade
更新升级所有(连内核一并更新)
yum undate
更新软件wget
yum undate wget
只下载到/data/packages不安装
yum install +软件包名称 --downloadonly --downloaddir=/data/packages
进入日志文件查看
cd /var/log/
tail yum.log
[root@localhost ~]# cd /var/log
[root@localhost log]# tail yum.log
Apr 29 17:34:49 Installed: tree-1.6.0-10.el7.x86_64
[root@localhost ~]# tail /var/log/yum.log
Apr 29 17:34:49 Installed: tree-1.6.0-10.el7.x86_64
yum配置文件位置
/etc/yum.repos.d/
[root@localhost ~]# cd /etc/yum.repos.d/
[root@localhost yum.repos.d]# ls
CentOS-Base.repo CentOS-CR.repo CentOS-Debuginfo.repo CentOS-fasttrack.repo CentOS-Media.repo CentOS-Sources.repo CentOS-Vault.repo
yum主配置文件
/etc/yum.conf
3.源码安装(Tarball)
(1)源代码编译概述
① 源代码安装软件的优点
获得最新软件版本,及时修复bug
可以根据用户需求进行灵活定制
② 应用场景举例
安装较新版本的应用程序时
当前安装的程序无法满足需求时
需要为应用程序添加新的功能时
③ Tarball封包
.tar.gz和.tar.bz2 格式居多
④ 确认源代码编译环境
需要安装支持C/C++程序语言的编译器,如:gcc,gcc-c++,make…
(2)源代码编译安装的过程
下载源代码安装包文件
① 步骤1:tar解包
用途:解压并释放源代码包到指定的目录
② 步骤2:.lconfigure配置
用途:设置安装目录、安装模块等选项
③ 步骤3: make编译
用途:生成可执行的二进制文件
④ 步骤4: make install安装
用途:复制二进制文件到系统,配置应用环境
测试及应用、维护软件
以上是关于linux应用程序基础及安装方式(RPM,YUM和源代码编译)!的主要内容,如果未能解决你的问题,请参考以下文章