码迷,mamicode.com
首页 > 系统相关 > 详细

Linux系统中程序的安装与创建私有yum仓库(有图有真相)

时间:2019-08-20 14:07:36      阅读:197      评论:0      收藏:0      [点我收藏+]

标签:设置   扩展名   shell   开头   找不到   最新   素材   友好   源代码编译   

今天给大家介绍的是Linux系统中的程序安装和创建私有YUM仓库

文章总览
1、Linux应用和层序基础
2、RPM软件包相关命令与实际操作
3、RPM安装、卸载、升级
4、源代码编译安装
5、创建私有yum仓库

·
1、Linux应用和层序基础
(1)、应用程序与系统命令的关系
文件位置
系统命令:一般在/bin和/sbin目录中。或为shell内部指示
应用程序:通常在/usr/local目录中
·
主要用途
系统命令:完成对系统的基本管理工作
应用程序:完成对对的其他辅助任务
·
适用环境
系统命令:一般只在字符操作界面中运行
应用程序:根据实际需要,有些程序可在图形界面中进行
·
运行格式
系统命令:一般包括命令字,命令字选项和命令参数
应用程序:通常没有固定的执行格式

应用程序的目录结构

普通执行程序文件 /usr/bin
服务器执行程序文件和管理程序文件 /usr/sbin
应用程序配置文件 /etc
日志文件 /var/log
应用程序文档文件 /usr/share/doc
应用程序手册页文件 /usr/share/man

PRM管理包工具

RPM [1] 是Red-Hat Package Manager的缩写,这一文件格式名称虽然打上了RedHat的标志,但是其原始设计理念是开放式的,现在包括OpenLinux、S.u.S.E.以及Turbo Linux等Linux的分发版本都有采用,可以算是公认的行业标准了。

优点:
1、建立统一的数据库文件
2、详细记录软件包安装、卸载等变化信息
3、自动分析软件包依赖关系
·
RPM软件包:
1.软件素材参考:http://www.rpm.org
2.一般命名格式:bash-4.1.2-15.el6_4.x86_64.rpm
?bash:软件名称
? 4.1.2:版本号
? 15.el6_4:发布次数
?x86_64:硬件平台
?.rpm:扩展名

常用的软件包封装类型

1、rpm软件包:扩展名为“.rpm”,二进制文件(命令rpm)
2、deb软件包:扩展名为“.deb”,debian,ubantu(命令dpkg)
3、源代码软件包:一般为“.tar.gz”、“.tar.bz2”等格式的压缩包,包含程序的原始代码(bz2的解压效率较高)
4、绿色免安装的软件包:在压缩包内提供已编译好的执行程序文件,解开压缩包后的文件即可直接使用(会有install.sh或setup文件)

RPM软件包相关命令
查询已安装的RPM软件信息
rpm -q【子选项】【软件名】
常用选项
-qa:所有软件包
-qi:软件包详细信息
-ql:软件包包含的哪些内容
-qf:软件包当中的文件多少
-qc:软件包当中的配置文件

·
查询未安装的RPM软件包文件
rpm -qp【子选项】RPM包文件
常用选项
-qpi:检查未安装软件包的详细信息
-qpl:检查未安装软件包中包含了哪些内容
-qpc:查询未安装软件包中的配置文件
-qpd:检查未安装软件包的文档手册
·
安装、升级、卸载RPM软件包
常用选项
-i:安装软件包
-u:更新软件包
-f:查看文件属于哪一个RPM文件安装包
-e:已卸载的RPM软件包
卸载指定的软件包:rpm-e+ 软件名
辅助选项
--force:强制换行
--nodeps:依赖关系
-h:友好显示
-v:详细信息
解除软件包依赖关系方法
1、安装有依赖关系的多个软件时
被依赖的软件包需要先安装
可同时指定多个rpm包文件进行安装
2、卸载有依赖关系的多个软件时
依赖其他程序的软件包需先卸载
可同时指定多个软件名进行卸载
3、忽略依赖关系
结合"--nodeps"选项,但可能导致软件异常

接下来我们来看一下rpm的具体操作

(1)、输入man rpm 就可以进去查看rpm的详细信息
技术图片
(2)、如果想要知道我们先在的系统安装了哪些rpm包,可以输入rpm -qa查看
技术图片
(3)、如果要统计一共有多少rpm包的话输入rpm -qa | wc -l,可以查看了
技术图片
(4)、除此之外我们的RPM包还是比较多的,那么我们目前使用的rpm软件包在哪里呢?这么多的软件包其实是放在yum仓库里,输入yum list,就可以查看yum仓库里的软件包了,输入了之后会自动加载远程的yum服务器里所有的软件包。
技术图片
(5)、yum源里的软件包都是实时更新的,我们安装的都是最新的,官方会自动维护,官方的路劲在/etc里,我们可以cd /etc里,输入ls查看详细信息,往下翻可以找到以yum开头的三个文件,里面可以看到yum.repos.d就是yum源的配置地点。
技术图片
(6)、我们接下来进入到源配置文件,输入cd yum.repos.d/,再输入ls查看详细信息,这时候看到这里都是以CentOS开头的配置文件。
技术图片
(7)、如果我们此时用yum install httpd安装该服务,其中我们会发现在安装过程中自动帮我们处理了文件依赖关系,安装了多个在安装httpd服务之前需要安装的其它软件包,安装过程中显示如下图:
技术图片

·

因为这是一个网站服务,所以我们接下来需要开启此项服务,
输入:systemctl start httpd.service开启网站服务
输入:systemtcl stop firewalld关闭防火墙
输入:setenforce 0关闭增强安全功能
·

此时我们安装都是在有网络连接的情况下,如果没有网络的情况下,我们可以使用镜像文件,但是无法实时更新,接下来用的方法就是如何在离线状态下使用RPM软件包服务,并且创立私有yum仓库。
1、首先我们把网络断开,注销当前用户,点击右下角的网络配置设置,更改为仅主机模式,这时就不可以联网了。
技术图片
2、接下用管理员身份登录,配置静态ip,与Xshell的远程连接也会断开,右击桌面,打开终端
输入/vim /etc/sysconfig/network-scripts/ifcfg-enss进入网卡配置,此时BOOTPROTO为dhcp自动获取ip地址,更改为static。
技术图片
3、按大G到末行,再按$符号到末尾,保证ONBOOT状态为yes,按o进入下一行插入
4、输入IPADD=192.168.100.100设置静态ip,再按o进入下一行插入
5、输入NETMASK=255.255.255.0配置MAC地址,再按o将进入下一行插入
6、输入GATEWAY=192.168.100.1配置网关,按Esc退出到命令模式,按":"到末行模式
7、输入"wq"保存并退出
技术图片
8、输入service network restart重启服务(配置文件修改后需要重启)
技术图片
9、输入ifconfig,查看ip地址是否生效
技术图片
这时候我们访问外部网络时时不可以访问的,打开火狐浏览器,输入www.baidu.om 显示找不到服务器
技术图片
输入yum list 加载远程仓库,显示的时之前的缓存,输入yum clean all,再加载时会出现报错
技术图片
·
这个时候就需要使用离线安装,依赖于镜像文件,之后我们还要创建一个yum仓库,要使用镜像文件的话,首先就需要挂载
1、再虚拟机右下角点击虚拟光驱选择设置,在使用ISO镜像文件中有我们之前安装系统使用的镜像文件,我们此处就可以使用这个镜像文件,选择状态为已连接,点击确定。
技术图片
2、输入df -h查看光盘有没有被挂载,也可以查看相对应的挂载点(目录)
技术图片
3、输入cd /dev,进入设备文件,输入ls 查看到其中有个目录为cdrom
技术图片
4、这时候就可以挂载了,因为使用的是光驱里的文件,所以我们要把光驱挂载到自己的目录中去(这里举例为mnt),如果要使用光驱里的东西,只需要打开目录就可以了。
5、输入:mount /dev/cdrom/mut此时光驱挂载到mut目录下去了,输入df -h 查看是否挂载成功
技术图片
6、输入ls /mnt 查看目录的详细信息,可以看到其中有我们安装所需要的Package包。
技术图片
接下来我们把vim的服务卸载,输入rpm -qa | grep -l vim 安装了那几个vim包,输入rpm -evh | grepv -i vim 删除vim包
技术图片

此时vim失效了,但是vim还可以使用
我们重新安装vim输入rpm -ivh vim.enhanced-7.4.160-2.el7.x86_64,就可以正常使用了
技术图片
假如现在卸载vim-common会出现报错,输入rpm -e vim-common-7.4.160-2.el7.x86_64,敲击回车出现错误
技术图片
如果要解除这种依赖关系,我们要创建一个yum仓库,接下来就是考虑如何创建yum仓库
现在所有的rpm包都放在/mnt/Packages里面,把这个作为yum源
1、cd /etc/yum.repos.d/进入目录,ls查看详细信息,目录下的文件都是不可以使用的

技术图片
2、创建一个文件夹叫bak将以CentOS的文件全部移动bak中,输入mkdir bak ,创建bak,再输入mv CentOS.* bak/ 将以CentOS开头全部移动bak中。
技术图片

接下来就是创建yum私有仓库的步骤
创建一个yum仓库的配置文件,以“.repo”为结尾,举例创建为“vim abc.repo” 回车键写入,写入以下信息
[abc]文件名
name=test描述性信息
baseurl=file:// /mnt
enabled=1开启 0关闭
gpgcheck=0(软件包密钥0不需要验证)
:wq保存退出
再使用yum list,此时就可以看到文件了

Linux系统中程序的安装与创建私有yum仓库(有图有真相)

标签:设置   扩展名   shell   开头   找不到   最新   素材   友好   源代码编译   

原文地址:https://blog.51cto.com/14307755/2430971

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!