文章目录
前言
LINUX等同于我们常见的Windows系统,所有的程序软件都不会是自带的,都是需要安装程序的软件包之后才能进行的,于是乎我们可以了解一下程序压缩包的上传、解压、配置、编译与安装
一、Linux应用程序基础
1、应用程序与命令系统的关系
2、典型的应用程序目录结构
二、常见软件包的封装类型
三、RPM软件包
1.软件包的格式
一般命名格式为bash-4.1.2-15.el6_4.x86_64.rpm,其中bash:软件名称;4.1.2:版本号;15、el6_4:发布次数;x86_64:硬件平台;.rpm:扩展名
httpd-2.4.6-17.el7.x84_64.rpm
zip-3.8.0-4.el7.noarch.rpm
unzip-3.8.0-4.el7.i686.rpm
httpd、zip、unzip都是软件包名,一般定义为服务名方便人们识别
2.4.6-17、3.8.0-4: 这是版本号和发行次数,横杠前为版本号,横杠后面为发行次数
el7 :EL是Red Hat Enterprise Linux(EL),即红帽企业版的缩写,7就表示Red Hat 7.x,CentOS 7.x版本
x86_64 :表示支持32和64位架构,i686也是指32位架构
noarch:表示都兼容32位和64位,不挑架构
.rpm:扩展名
2.RPM命令
rpm命令能够实现几乎所有对rpm软件包的管理功能
执行“man rpm”命令可以获得关于rpm命令的详细帮助信息
rpm命令的功能:
查询、验证rpm软件包的相关信息
安装、升级、卸载rpm软件包
维护RPM数据库信息等综合管理操作
2.1rpm软件信息
rpm -q[子选项][软件名] #查看一个软件是否安装
rpm -qa 软件名: #查看系统中所有安装的软件
[root@yzq opt]# rpm -qa httpd
httpd-2.4.6-97.el7.centos.5.x86_64
rpm -qi 软件名: #显示已安装的指定软件的详细信息
rpm -qi samba-client
rpm -ql 软件名: #显示已经按抓个的全歼的文件列表
rpm -ql wget
rpm -qc 软件名: #列出已经安装的指定软件的配置文件
rpm -qc httpd
[root@yzq data1]# rpm -qc httpd
/etc/httpd/conf.d/autoindex.conf
/etc/httpd/conf.d/userdir.conf
/etc/httpd/conf.d/welcome.conf
/etc/httpd/conf.modules.d/00-base.conf
/etc/httpd/conf.modules.d/00-dav.conf
/etc/httpd/conf.modules.d/00-lua.conf
/etc/httpd/conf.modules.d/00-mpm.conf
/etc/httpd/conf.modules.d/00-proxy.conf
/etc/httpd/conf.modules.d/00-systemd.conf
/etc/httpd/conf.modules.d/01-cgi.conf
/etc/httpd/conf/httpd.conf
/etc/httpd/conf/magic
/etc/logrotate.d/httpd
/etc/sysconfig/htcacheclean
/etc/sysconfig/httpd
rpm -qd 软件名: #列出已经安装的指定软件的软件包文档所在的位置
rpm -qR 软件名: #列出已经安装的指定软件的以来的软件包及文件
rpm -qR wget
rpm -qF 文件或目录:#查询已安装的指定软件属于那个安装包
rpm -qF yum
rpm -qf: #查看指定的文件或是目录是哪一个软件包所安装的
rpm -qf /usr/bin/passwd
rpm -qa: #显示当前系统中以rpm方式安装的所有软件列表
#查询软件的postfix是否已安装
rpm -qa | grep -i postfix
[root@yzq opt]# rpm -qa | grep -i postfix
postfix-2.10.1-7.el7.x86_64
3.查询未安装的rpm软件包文件信息
rpm -qpi RPM包名文件 #查询指定的软件包的详细信息
rpm -pqi /mnt/Packages/ethtool-4.8-9.el7.x86_64.rpm
rpm -qpl RPM包名文件 #查询指定软件包的配置文件
rpm -qpl /mnt/Packages/ethtool-4.8-9.el7.x86_64.rpm
rpm -qpc RPM包名文件 #查询指定软件包的配置文件
rpm -qpc /mnt/Packages/elinks-0.12-0.37.pre6.el7.0.1.x86_64.rpm
rpm -qpd RPM包名文件 #查询指定软件包的软件包文档位置
rpm -qpd /mnt/Packages/vsftpd-3.0.2-25.el7.x86_64.rpm
安装、升级、卸载RPM软件包
1、安装或升级RPM软件
rpm [选项] RPM包文件
rpm -i:安装一个新的RPM软件包
rpm -U:升级某个新的包,若未安装过则进行安装
rpm -F:升级某个软件包,若未安装过则放弃安装
rpm -h:在安装或升级软件包的过程中,以“#”号显示安装进度
rpm -v:显示软件安装过程中的详细信息
#通常我们会将这些参数组合进行使用,如下:
rpm -ivh RPM软件包
rpm -ivh /mnt/Packages/lynx-2.8.8-0.3.dev15.el7.x86_64.rpm
2.卸载指定的RPM软件
rpm -e:卸载指定名称的软件包
rpm -e lynx
3、辅助选项
rpm –force:强制安装某个软件包,比如要安装版本更旧的软件包
rpm –nodeps: 在安装或升级、卸载一个软件包时,不检查与其他软件包的依赖关系
四、yum
配置yum仓库
yum安装源代码软件包需要进行编译与安装,需要支持C语言和C++程序语言的编译器,如:gcc、gcc-c++、make如果使用rpm方式安装,则需要先安装多个依赖包,这里会很繁琐,可以使用yum方式进行一键安装,在无法访问互联网时,我们可以通过创建本地yum源的方式来使用yum
mount /dev/cdrom /mnt/ #把光盘挂载到/mnt目录下
#因为制作本地YUM仓库,其目的是需要.rpm文件,但是不借助网络,本地只有iso镜像中有这个.rpm包,所以需要进行挂载(主要提供了共享的功能)
cd /etc/yum.repos.d/ #到yum工具识别安装文件的目录下
#因为在yum install时,yum这个工具,只通过识别/etc/yum.repos.d 下*.repo的文件来定义自己到哪下载 .rpom包,进入此目录,是为了方便之后的操作:包含转移默认.repo文件和自定义新的yum源文件
mkdir repos.bak
为了备份默认指向公共仓库的*.repo文件
mv *.repo repos.bak
#1、为了备份默认指向公共仓库的*. repo文件2、为了之后配置local.repo文件时,不要让 centos-* .repo的文件影响到yuninstall 的结果
cd /etc/yum.repos.d/
#为了再次确认当前的路径是在/etc / yum.repos.d中的
vim local.repo
#为了自定义指向本地的YUM库的文件
[ local] #本地YUM仓库类别
name=local #本地YUM仓库名称
baseurl=file:///mnt #指定URL(路径位置)访问路径为光盘挂载目录( /mnt>
enabled=1 #开启此yum源,1为开启,0为关闭
gpgcheck=O #不验证软件包的签名
#local.repo中必要的配置,配置完成后保存退出
yum clean all #为了清空之前遗留的指向公共仓库配置的缓存
yummakecache #为了重新建立指向本地YUM仓库( local.repo配置的)的缓存
#配置完成,验证测试
#在无网环境下查看是否能够正常安装软件包 ifdown ens33
yum常用命令
yum install -y 软件名 不提示,直接安装
yum remove -y 软件名 不提示,直接卸载
yum list 查看当前系统所有已安装的软件
yum list installed httpd 查看httpd是否安装
yum list available 软件包 查询仓库中未安装的软件包
yum list updates 软件包 查询可以升级的软件包
yum repolist 查看当前正在使用的软件源
yum repolist all 查看所有的yum源
yum provides httpd 查看httpd由那个软件包提供
yum upgrade 更新所有软件(不更新内核)
yum update 更新所有软件(更新内核)
yum update httpd 只更新httpd
yum search [all] 关键词 根据关键词查找软件包
yum info 软件名 查询软件包描述信息
[root@yzq opt]# yum info httpd
已加载插件:fastestmirror, langpacks
Loading mirror speeds from cached hostfile
* base: mirrors.aliyun.com
* extras: mirrors.aliyun.com
* updates: mirrors.aliyun.com
已安装的软件包
名称 :httpd
架构 :x86_64
版本 :2.4.6
发布 :97.el7.centos.5
大小 :9.4 M
源 :installed
来自源:updates
简介 : Apache HTTP Server
网址 :http://httpd.apache.org/
协议 : ASL 2.0
描述 : The Apache HTTP Server is a powerful, efficient, and
: extensible web server.
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/76575.html