Linux yum源
(一)yum源概述
yum需要一个yum库,也就是yum源。默认情况下,CentOS就有一个yum源。在/etc/yum.repos.d/目录下有一些默认的配置文件(可以将这些文件移到/opt下,或者直接在yum.repos.d/下重命名)。
首先要找一个yum库(源),然后确保本地有一个客户端(yum这个命令就是客户端),由yum程序去连接服务器。连接的方式是由配置文件决定的。通过编辑/etc/yum.repos.d/CentOS-Base.repo文件,可以修改设置。
打开CentOS-Base.repo文件,可以看到url路径是CentOS的官网自身的yum源,http://mirrorlist.centos.org/?release=releasever&arch=releasever&arch= basearch&repo=os。可以将这个mirrorlist注释掉,然后将baseurl设置成国内的阿里云源http://mirrors.aliyun.com/repo/Centos-6.repo,也可以在用于大量的rpm包的前提下设置成自己的本地文件系统(挂载目录),需要移除CentOS-Base.repo文件,并编辑CentOS-Media.repo文件。
name=Description#一个描述,随意。
baseurl=#设置资源库的地址,可以写阿里云也可以是自己的yum
ftp:// http:// file:///enabled={1|0}#enabled=1开启本地更新模式
gpgcheck={1|0}# gpgcheck=1表示检查;可以不检查gpgcheck=0
gpgkey=#检查的key;如果上面不检查这一行可以不写。
(二)yum源配置方法一(阿里云源)
1) 安装wget
yum install -y wget
2) 备份/etc/yum.repos.d/CentOS-Base.repo文件
cd /etc/yum.repos.d/mv CentOS-Base.repo CentOS-Base.repo.back
3) 下载阿里云的Centos-6.repo文件
wget -O CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-6.repo
4) 重新加载yum
yum clean allyum makecache
(三)yum源配置方法二(本地挂载目录)
1) 下载iso文件
从CentOS的官网下载CentOS的完整版iso文件,并上传到Linux文件系统中,例如/opt/tools/。
2) 创建挂载目录
为iso文件的挂载创建目录。
mkdir /mnt/vcdrom
3) 挂载
将iso文件挂载到挂载目录。
mount -o loop -t iso9660 /opt/tools/CentOS-6.7-x86_64-bin-DVD1.iso /mnt/vcdrom
4) 移除或备份Centos-Base.repo文件
cd /etc/yum.repos.d/mv Centos-Base.repo Centos-Base.repo.back
5) 编辑Centos-Media.repo文件
vim /etc/yum.repos.d/Centos-Media.repo
name=CentOS-$releasever - Media
baseurl=file:///mnt/vcdrom/#将baseurl修改为DVD的挂载目录
gpgcheck=1
enabled=1#开启本地更新模式
6) 重新加载yum
yum clean allyum makecache
7) 编写脚本并开机自动挂载
首先,编写脚本。
vim /opt/shell/mymount.sh
#!/bin/bash
#mount -o loop -t iso9660 /opt/tools/CentOS-6.7-x86_64-bin-DVD1.iso /mnt/vcdrom
其次,修改脚本执行权限。
chmod 777 /opt/shell/mymount.sh
再次,修改/etc/rc.local配置文件。
vim /etc/rc.local
在文件最后一行加上如下
/opt/shell/mymount.sh
最后,重启机器测试。
init 6
(四)yum源配置方法三(远程挂载目录)
1) 服务端配置
第一,安装nfs-utils和rpcbind。
yum -y install nfs-utils rpcbind
第二,设置开机启动服务。
chkconfig nfs on
chkconfig rpcbind on
第三,启动相关服务。
service rpcbind start #需要先启动rpcbind
service nfs start
第四,创建共享目录。
mkdir -p /mnt/vcdrom/
第五,编辑/etc/exports文件,添加如下内容。
vi /etc/exports
/mnt/vcdrom/ 192.168.94.5(rw,async,no_root_squash,no_subtree_check)
注:配置文件说明:/mnt/vcdrom/为共享的目录,使用绝路径。对192.168.94.5(rw,no_root_squash,no_all_squash,sync) 为客户端的地址及权限,地址可以是一个网段,一个IP地址或者是一个域名,域名支持通配符,如:*youxia.com。
权限说明:rw:read-write,可读写;ro:read-only,只读;sync:文件同时写入硬盘和内存;async:文件暂存于内存,而不是直接写入内存;no_root_squash:NFS客户端连接服务端时如果使用的是root的话,那么对服务端分享的目录来说,也拥有root权限。显然开启这项是不安全的。root_squash:NFS客户端连接服务端时如果使用的是root的话,那么对服务端分享的目录来说,拥有匿名用户权限,通常他将使用nobody或nfsnobody身份;all_squash:不论NFS客户端连接服务端时使用什么用户,对服务端分享的目录来说都是拥有匿名用户权限;anonuid:匿名用户的UID值,通常是nobody或nfsnobody,可以在此处自行设定;anongid:匿名用户的GID值。
第六,参考yum源配置方法二,将/opt/tools/下的ios文件挂载到/mnt/vcdrom,需要设置开机自动挂载。
2) 客户端配置
第一,安装nfs-utils和rpcbind。
yum install -y nfs-utils rpcbind
第二,设置开机启动服务。
chkconfig nfs on
chkconfig rpcbind on
第三,启动服务。
service rpcbind start
service nfs start
第四,创建挂载点。
mkdir -p /mnt/vcdrom/
第五,挂载目录。
mount -t nfs server_ip:/mnt/vcdrom /mnt/vcdrom
第六,编辑/etc/fstab,配置开机自动挂载
这里可以参考yum源配置方法二的介绍,编写脚本,使脚本开机运行。下面给出第二种方法:
vim /etc/fstab
server_ip:/mnt/vcdrom /mnt/vcdrom nfs rw,tcp,intr 0 1
第七,修改yum源设置。
参考yum源配置方法二。
如果CentOS服务器处在内网环境中时,如果缺少依赖手动安装那么会非常麻烦,要花费很多时间来寻找rpm包,现在如果搭建本地的yum源,就非常方便了,如果搭建http的,那么局域网内其他服务器就都可以使用了,使用yum源首先需要一个CentOS安装镜像,这里是:CentOS-7-x86_64-DVD-1511.iso,下面是http yum源搭建和配置过程
首先需要一个web服务器,比如apache httpd或者nginx均可以,如果是nginx要开启访问目录列表权限,一般安装CentOS的时候都会安装httpd服务器,所以这里直接使用apache httpd;如果没有安装的话可以通过rpm或者从官网下载源码包来编译安装,之前专门写过一篇文章来安装apache的,具体过程不再叙述;如果能联网的话,可以直接使用 yum -y install httpd 来安装,我这里已经安装了,所以直接使用 systemctl start httpd.service 启动httpd服务,启动之后执行命令 systemctl status httpd.service 来查看运行状态,如下图所示,就是启动成功了:
然后通过浏览器访问测试,如下图:
现在服务器运行正常,并且服务器的根目录在/var/www/html下,可以解析静态页面以及显示目录列表,接下来需要挂载光盘镜像,挂载点在/mnt/cdrom下
mkdir /mnt/cdrom
mount -t iso9660 -o loop CentOS-7-x86_64-DVD-1511.iso /mnt/cdrom/
挂载之后创建软链接到/var/www/html下
ln -s /mnt/cdrom/ /var/www/html/CentOS7
然后访问浏览器测试,这里是:http://192.168.182.128/CentOS7
现在就成功看到光盘内容,yum源配置成功,现在配置主机的yum指向这个yum源
编辑配置文件:/etc/yum.repos.d/CentOS-Base.repo,[base]块默认如下:
然后注释mirrorlist,放开baseurl配置成yum源位置,还有gpgkey也配置成对应位置,如下图:
配置完这些以后,然后在[updates]和[extras]都添加一个enabled=0配置项,表示不生效,一般只用[base]中的配置即可,配置好之后保存退出
然后执行 yum repolist 查看yum源信息
之前联网情况如下图:
可以看到有互联网镜像站来源,配置本地之后如下图:
现在本地的yum源都配置好了,直接使用yum命令安装软件即可
有些特殊情况下,如果配置了CentOS-Base.repo还是会出现连接一些网址并且失败,这时候手动检查一下/etc/yum.repos.d/下面其他一些配置文件,看看是否有连接外网的配置,如果有的话直接enabled=0禁用掉就可以了;需要注意一点就是/etc/yum.repos.d/下面所有的配置文件都可以用,包括自己建的比如CentOS.repo也是可以的,只要是启用的,yum都会进行加载,一般都是启用CentOS-Base.repo,其余禁用就可以了
Linux yum源的更多相关文章
- Linux yum源配置
Linux yum源配置 本文介绍Red Hat下yum源配置方法,Redhat使用yum网络源需要购买服务,但是本地yum源不会收费. CentOS用户自带yum源,并且yum不收费. 准备工具: ...
- Linux yum源完全配置
一.简介 yum主要功能是更方便的添加/删除/更新RPM包,自动解决包的依赖性问题,便于管理大量系统的更新问题,其理念是使用一个中心仓库(repository)管理一部分甚至一个distributio ...
- Linux yum源详解
软件包安装方式 0.默认从官网下载包(国内,雅虎,网易,阿里云) cat /etc/yum.repos.d/rhel-source.repo [yum文件目录--redhat6版] [ ...
- linux yum源配置及vim运用
redhat7默认没有yum模板,需要自己创建[root@localhost ~]# mount /dev/cdrom /root/iso/(挂载镜像)mount: /dev/sr0 写保护,将以只读 ...
- Linux yum 源配置
CentOS 7 使用 163 的 yum 源,配置步骤如下: 下载镜像源文件 http://mirrors.163.com/.help/centos.html 备份原配置文件,将下载的文件的名字改成 ...
- Linux yum源码包安装和卸载
Linux 下的绝大多数源码包都是用 C 语言编写的,还有少部分是用 C++ 等其他程序语言编写的.所以,要想安装源码包,必须安装 C 语言编译器 gcc(如果是用 C++ 编写的程序,则还需要安装 ...
- 如何更改Linux yum源?
centos下可以通过yum很方便快捷的安装所需的软件和库,如果yum的源不好,安装速度会非常慢,centos默认官方源似乎都是国外的,所以速度无法保证,我一直使用163的源,感觉速度不错.下面就说说 ...
- 阿里云linux yum源配置
1.备份 mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup 2.下载新的CentOS-Base ...
- linux yum源安装
#1.安装remi源mkdir /disk1/toolscd /disk1/toolsrpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-relea ...
随机推荐
- netty拆包粘包
客户端 tcp udp socket网络编程接口 http/webservice mqtt/xmpp 自定义RPC (dubbo) 应用层 服务端 ServerSocket ss = new serv ...
- 2019.1.17 homework
1.求两个整型数较大值 #include<stdio.h>int compare_big(int var1,int var2);int main(void){ int big,x,y ...
- php7 使用simplexml扩展处理xml
<?php $xmldoc = "<?xml version=\"1.0\" encoding=\"gb2312\"?> <s ...
- Javascript校验密码复杂度的正则表达式
1.密码中必须包含大小字母.数字.特称字符,至少8个字符,最多30个字符. var regex = new RegExp('(?=.*[0-9])(?=.*[A-Z])(?=.*[a-z])(?=.* ...
- MySQL 数据库索引
数据库索引 在数据库中.索引使数据库程序无须对整个表进行全表扫描就可以在其中找到所需的数据: 数据库中的索引是某个表中一列或者若干列值的集合.以及物理标识这些值的数据页的逻辑指针清单: MySQL 索 ...
- Python抓取百度汉字笔画的gif
偶然发现百度汉语里面,有一笔一划的汉字顺序: 觉得这个动态的图片,等以后娃长大了,可以用这个教写字.然后就去找找常用汉字,现代汉语常用字表 .拿到这里面的汉字,做两个数组出来,一共是 ...
- 自定义项目启动初始化信息的listener报错
自定义初始化组件代码如下: @Component public class InitComponent implements ServletContextListener, ApplicationCo ...
- java封装的概念学习笔记
继承.封装.多态.抽象是面向对象编程的四大基本概念,其中封装装为重要,因为从我们学习JAVA开始,就基本上接触了封装,因为JAVA中的所有程序都是写在类中的,类也能当做一种封装. 在面向对象中封装 ...
- flutter 列表展示
内容: 1.列表展示 2.轮播图 3.其他 本次的内容也是在上一节的基础上进行操作 我们就搞这个story模块. 目录: story.dart story主页面 import 'package:fl ...
- WPF xml配置文件里面的大于小于号转义
转义字符:<![CDATA[]]>,将要转义的字符放到中括号中,比如要转小于号:<,则换为<![CDATA[<]]> <?xml version=" ...