部署YUM仓库及NFS共享服务

目录

一、yum仓库简介

1.yum简介

2.yum的实现过程

二. yum配置文件及命令

1.yum配置文件

 2.yum命令

三.搭建仓库的方式

1.搭建本地yum仓库

2.搭建云仓库(http外网环境)

 3.ftp方式搭建云仓库

四、NFS共享

1.简介

2.特点

3.原理

4.优势 

5.搭建过程

五、总结


一、yum仓库简介

1.yum简介

yum是一个基于RPM包(是Red-Hat Package Manager红帽软件包管理器的缩写)构建的软件更新机制,能够自动解决软件包之间的依赖关系。解决了日常工作中的大量查找安装依赖包的时间 为什么会有依赖关系的发生 因为linux本身就是以系统简洁为自身优势,所以在安装操作系统的时候并没有将所有的库文件以及编译软件包进行安装,所以在linux操作系统上进行软件安装的时候会出现软件包依赖的情况。yum由仓库和客户端组成,也就是整个yum由两部分组成,所以yum可以存放在两台服务器上。也可以存放在一台服务器上。可以有官方来提供服务,也可以由第三方来提供,比如国内的阿里云,搜狐云,还有一些非盈利组织比如学校等。官方的源一般在国外,下载速度肯定有限,手动更改成国内的云可以大幅提升下载速度。

2.yum的实现过程

(1)先在yum服务器上创建 yum repository(仓库)

(2)在仓库中事先存储了众多rpm包,以及包相关的元数据文件(放置于特定目录repodata下)

(3)当yum客户端利用yum/dnf工具进行安装时包时,会自动下载repodata中的元数据

(4)查询远数据是否存在相关的包及依赖关系,自动从仓库中找到相关包下载并安装。

二. yum配置文件及命令

1.yum配置文件

(1)主配置文件

[root@localhost]# /etc/yum.conf
[a]
cachedir=/var/cache/yum/$basearch/$releasever

                                          硬件             版本

keepcache=0                    是否保存缓存  0代表不保存,1代表保存
debuglevel=2                    调试级别了解即可
logfile=/var/log/yum.log     日志文件位置
exactarch=1                      是否允许不同版本的rpm安装
obsoletes=1                      update 的一个参数是否可以允许旧版本的运行    
gpgcheck=1                       验证秘钥
plugins=1                           是否允许插件1代表可以
installonly_limit=5              保存几个内核 5代表5个

yum的repo配置文件中可用的变量:
$releasever: 当前OS的发行版的主版本号,如:8,7,6
$arch: CPU架构,如:aarch64, i586, i686,x86_64等
$basearch:系统基础平台;i386, x86_64
$contentdir:表示目录,比如:centos-8,centos-7
$YUM0-$YUM9:自定义变量

(2)仓库设置文件

[root@localhost]# cd /etc/yum.repos.d
[root@localhost yum.repos.d]# ls /etc/yum.repos.d/
bak               CentOS-Debuginfo.repo  CentOS-Sources.repo
CentOS-Base.repo  CentOS-fasttrack.repo  CentOS-Vault.repo
CentOS-CR.repo    CentOS-Media.repo

PS:这里默认的yum仓库是centos官方的yum源,需要联网才可以使用

(3)日志文件

[root@localhost]# cd /etc/yum.repos.d
[root@localhost yum.repos.d]# cat /var/log/yum.log (查看日志文件)

 2.yum命令

命令不加关键字加入关键词、软件包、软件包组
yum list显示所有可用包单个的可安装包
yum info显示所有可用包的信息单个具体的信息
yum search\模糊查找所有的相关信息
yum whatprovides\精确查找
yum grouplist显示所有可用包组显示具体的包组
yum groupinfo显示所有的包组具体信息显示具体的包组的具体信息
yum install\安装具体软件包
yum groupinstall\安装具体软件包组
yum update所有软件升级具体软件升级
yum groupupdate所有包组升级具体包组升级
yum remove\卸载具体软件
yum groupremove\卸载具体包组软件
yum history查看当前yum操作历史\
yum history undo加入序号卸载序号里安装的软件\

PS:红色字体为查询命令

        蓝色字体为yum安装升级

        黄色字体为软件卸载

如何删除yum安装包   yum history

                                   undo 3

                                    redo  3

三.搭建仓库的方式

1.搭建本地yum仓库

[root@localhost ~]# mount /dev/sr0 /mnt/
mount: /dev/sr0 写保护,将以只读方式挂载
[root@localhost ~]# cd /etc/yum.repos.d/
[root@localhost yum.repos.d]# mkdir bak
[root@localhost yum.repos.d]# mv *.repo bak/
[root@localhost yum.repos.d]# vim a.repo
[a]
name=a
baseurl=file:///mnt
enabled=1
gpgcheck=0
:wq
[root@localhost yum.repos.d]# yum clean all
[root@localhost yum.repos.d]# yum install -y [软件名]

2.搭建云仓库(http外网环境)

(1)切换到 yum.repo.d 目录 将自带的仓库移走

[root@localhost ~]# cd /etc/yum.repos.d/
[root@localhost yum.repos.d]# mkdir bak
[root@localhost yum.repos.d]# mv *.repo bak/

(2)新建aliyun仓库(这里以阿里云为例)

[root@localhost yum.repos.d]# vim ali.repo
[ali]
name=aliyun
#baseurl=https://mirrors.aliyun.com/centos/7/os/x86_64/       
baseurl=https://mirrors.aliyun.com/centos/$releasever/os/$basearch
gpgcheck=0

[epel]                           (epel源仓库)
name=epel
baseurl=https://mirrors.aliyun.com/centos/7/extras/x86_64/
gpgcheck=0

[update]                       (更新包仓库)
name=update
baseurl=https://mirrors.aliyun.com/centos/7/updates/x86_64/
gpgcheck=0

:wq

[root@centos7 ~]#yum -y install 【软件名】

 yum源地址

CentOS系统的yum源
#阿里云
https://mirrors.aliyun.com/centos/$releasever/ 
#腾讯云
https://mirrors.cloud.tencent.com/centos/$releasever/ 
#华为云
https://repo.huaweicloud.com/centos/$releasever/ 
#清华大学
https://mirrors.tuna.tsinghua.edu.cn/centos/$releasever/


EPEL的yum源
#阿里云
https://mirrors.aliyun.com/epel/$releasever/x86_64
#腾讯云
https://mirrors.cloud.tencent.com/epel/$releasever/x86_64
#华为云
https://mirrors.huaweicloud.com/epel/$releasever/x86_64
#清华大学
https://mirrors.tuna.tsinghua.edu.cn/epel/$releasever/x86_64

#更新源
http://mirrors.aliyun.com/centos/$releasever/updates/$basearch/ http://mirrors.aliyuncs.com/centos/$releasever/updates/$basearch/ http://mirrors.cloud.aliyuncs.com/centos/$releasever/updates/$basearch/

PS:(另外一个安装网络源的方式)

[root@localhost ~]# wget http://mirror.centos.org/centos/7/extras/x86_64/Packages/epel-release-7-11.noarch.rpm          安装yum源
[root@localhost ~]# yum install -y epel-release-7-11.noarch.rpm      安装sl命令
[root@localhost ~]# yum install -y sl

小火车

[root@localhost ~]# sl -a

勇敢牛牛,不怕困难

[root@localhost ~]#yum install -y install cowsay

 3.ftp方式搭建云仓库

服务端:192.168.174.10

客户端:192.168.174.20

服务端

(1)关闭防火墙和selinux

[root@localhost ~]# systemctl stop firewalld.service
[root@localhost ~]# setenforce 0

(2)服务端安装vsftp服务并开启

[root@localhost ~]# mount /dev/sr0 /mnt   挂载

[root@localhost ~]# yum install vsftpd.x86_64 -y

已安装:
  vsftpd.x86_64 0:3.0.2-22.el7                                      

完毕!

[root@localhost repodata]# systemctl start vsftpd 开启服务

(2) 服务端切换到 ftp目录下新建一个centos7目录

[root@localhost ~]# cd /var/ftp/
[root@localhost ftp]# ls
pub
[root@localhost ftp]# mkdir centos7 other
[root@localhost ftp]#

(3)服务端将光驱里的文件包全部拷到centos7里面(此时已经将光驱挂载到mnt目录下) 

[root@localhost ftp]# cp -rf /mnt/* centos7/ &            (&代表后台运行应为文件较大)
[root@localhost ftp]# cd centos7
[root@localhost centos7]# ls                                      (已将安装包文件拷入)
CentOS_BuildTag  GPL       LiveOS    RPM-GPG-KEY-CentOS-7
EFI              images    Packages  RPM-GPG-KEY-CentOS-Testing-7
EULA             isolinux  repodata  TRANS.TBL
[root@localhost ~]# cd /var/ftp/other
[root@localhost other]# createrepo  -g  /media/cdrom/repodata/repomd.xml  ./
(使用createrepo工具建立仓库数据文件)

客户端 

(1)安装ftp 服务并启动关闭防火墙和selinux

[root@localhost ~]# mount /dev/sr0 /mnt 
mount: /dev/sr0 写保护,将以只读方式挂载
[root@localhost ~]# cd /etc/yum.repos.d
[root@localhost yum.repos.d]# yum install ftp -y

已安装:
  ftp.x86_64 0:0.17-67.el7                                                        

完毕!

[root@localhost repodata]# systemctl stop firewalld.service
[root@localhost repodata]# setenforce 0
[root@localhost yum.repos.d]# systemctl start ftp

(2) 测试ftp服务是否正常

[root@localhost yum.repos.d]# ftp 192.168.174.10

Connected to 192.168.100.100 (192.168.174.10).
220 (vsFTPd 3.0.2)
Name (192.168.174.10:root): ftp                  随意起名
331 Please specify the password.               输入密码为空直接回车
Password:
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> ls                                                           查看下是否正常
227 Entering Passive Mode (192,168,100,100,205,112).
150 Here comes the directory listing.
drwxr-xr-x    8 0        0             220 Jun 23 09:14 centos7
drwxr-xr-x    3 0        0              22 Jun 23 09:35 other
drwxr-xr-x    2 0        0               6 Aug 03  2017 pub
226 Directory send OK.出现这个即为成功

 (3)编写yum仓库文件

[root@localhost yum.repos.d]# vim centos7.repo
[centos7]
name=centos7
baseurl=ftp://192.168.174.10/centos7
enabled=1
gpgcheck=0


[other]
name=other
baseurl=ftp://192.168.174.10/other
enabled=1
gpgcheck=0

:wq

[root@localhost yum.repos.d]# yum clean all

(4)测试是否yum可以正常使用  

[root@localhost yum.repos.d]# yum install dhcp  -y

已安装:
  dhcp.x86_64 12:4.2.5-58.el7.centos                                             

完毕!

四、NFS共享

1.简介

NFS(Network File System 网络文件服务) NFS 是一种基于 TCP/IP 传输的网络文件系统协议,最初由 Sun 公司开发。 通过使用 NFS 协议,客户机可以像访问本地目录一样访问远程服务器中的共享资源 NFS 也是 NAS 存储 设备必然支持的一种协议

2.特点

(1)采用TCP/IP传输网络文件

(2)安全性低

(3)简单易操作

(4)适合局域网环境

3.原理

4.优势 

节省本地存储空间,将常用的数据如:/home 目录,存放在NFS服务器上且可以通过网络访问,将减少本地磁盘的使用率

5.搭建过程

添加一块盘以作共享

[root@localhost httpd]#systemctl stop firewalld.service   关闭防火墙
[root@localhost httpd]#setenforce 0    关闭selinux
[root@localhost share]#yum install nfs-utils.x86_64 rpcbind -y   安装软件包
[root@localhost httpd]#mkdir /share       新建共享目录
[root@localhost httpd]#cd /share/
[root@localhost share]#chmod -R 777 /share       修改权限
[root@localhost share]#vim /etc/exports     编辑配置文件
/share * 

:wq                                                      

[root@localhost ~]# systemctl start rpcbind   开启服务
[root@localhost ~]# systemctl start nfs 
[root@localhost ~]#exportfs -vr      不重启生效
[root@localhost share]#exportfs -v    查看详细的nfs信息
#exportfs 课用于管理nfs
-v 查看本机所有nfs
-r 重读配置文件
-a 输出本机所有共享

[root@localhost ~]# netstat -anpt | grep rpc

[root@localhost ~]# showmount -e       查看本机发布的 NFS 共享目录
Export list for localhost.localdomain: 
/opt/wwwroot 192.168.7.0/24 
/var/ftp/pub 192.168.4.110,192.168.4.11

[root@localhost ~]# mount 192.168.7.250:/opt/wwwroot /var/www/html
[root@localhost ~]# vi /etc/fstab 
…… 省略部分信息 
192.168.7.250:/opt/wwwroot /var/www/html nfs defaults,_netdev 0 0   自动挂载
showmount -e 主机名  (查看远程主机nfs共享)

#强制解挂载
[root@localhost ~]# umount /mn
t umount. nfs: /mnt : device is busy 
[root@localhost ~]# umount -lf /mnt

五、总结

这次主要讲了yum仓库的搭建以及NFS,希望对大家有所帮助!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值