LINUX——部署YUM仓库及NFS共享服务

1 篇文章 0 订阅

YUM仓库概述

YUM的前身是YUP( Yellow dog Updater,Yellow dog Linux的软件更新器 ),最初由TSS公司使用Python语言开发而成,后来由杜克大学的Linux开发队伍进行改进,命名为YUM(Yellow dog Updater Modified)

要成功使用 YUM 机制来更新系统和软件,需要有一个包含各种 rpm 安装包文件及其依
赖软件的软件仓库(repository),提供软件仓库的服务器也称为“源”服务器。在客户机中只 要正确指定软件仓库的地址等信息,就可以通过对应的“源”服务器来安装或更新软件

yum的配置文件

  • 基本设置:/etc/yum.conf
  • 仓库设置:/etc/yum.repos.d/*.repo
  • 日志文件:/var/log/yum.log

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 <包组名>
示例
1)安装net-tools软件包
[root@localhost ~]# yum -y install net-tools 

2)安装gnome-desktop软件包组
[root@localhost ~]# yum -y groupinstall gnome-desktop

3)即更新软件包,同时也更新系统内核
[root@localhost ~]# yum -y update 
    只更新软件包
[root@localhost ~]# yum upgrade

##############################################################################
1)安装软件包
[root@localhost ~]# yum install <软件包>

2)卸载软件包
[root@localhost ~]# yum remove <软件包>

3)查看软件列表
[root@localhost ~]# yum list

4)清空缓存
[root@localhost ~]# yum clean all

5)查看软件包详细信息
[root@localhost ~]# yum info <软件包>

6)查看文件或者目录归属于哪个软件包
[root@localhost ~]# yum whatprovides <文件或目录>

YUM搭建

1.本地yum

挂载光盘镜像文件

挂载光盘
[root@localhost ~]# mount /dev/cdrom /mnt
mount: /dev/sr0 写保护,将以只读方式挂载

永久挂载,如果不挂载本地YUM仓库不能使用
[root@localhost ~]# vim /etc/fstab
/dev/cdrom /mnt iso9660 defaults 0 0

进入yum 默认目录
[root@localhost ~]# cd /etc/yum.repos.d/ 

创建备份目录
[root@localhost yum.repos.d]# mkdir backup

将默认源移走
[root@localhost yum.repos.d]# mv C* backup/

创建本地yum
[root@localhost yum.repos.d]# vi local.repo
[local]                        ##模块名称随便写
name=local                     ##随便写
baseurl=file:///mnt            ###包源路径
enabled=1                      ###开机自启
gpgcheck=0                     ###表示对从这个源下载的rpm包不进行校验

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

已加载插件:fastestmirror, langpacks
正在清理软件源: local
Other repos take up 207 M of disk space (use --verbose for details)

更新一下
[root@localhost yum.repos.d]# yum makecache 
或者:
[root@localhost yum.repos.d]# yum list

2.FTP-YUM源服务器

##服务端的设置##

安装一下vsftpd
[root@localhost ~]# yum -y install vsftpd

进入该目录

[root@localhost ~]# cd /var/ftp/

查看下
[root@localhost ftp]# ls
pub

创建一个cENTOS7目录
[root@localhost ftp]# mkdir centos7

[root@localhost ftp]# ll
drwxr-xr-x. 2 root root 6 7  10 22:37 centos7
drwxr-xr-x. 2 root root 6 4   1 12:55 pub

挂载光盘
[root@localhost ftp]# mount /dev/cdrom /mnt
mount: /dev/sr0 写保护,将以只读方式挂载

将光盘里面的内容全部拷贝到之前创建的目录下
[root@localhost ftp]# cp -rf /mnt/* /var/ftp/centos7/

查看目录centos7目录中的内容
[root@localhost ftp]# ls centos7/
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 ftp]# setenforce 0
[root@localhost ftp]# systemctl stop firewalld

[root@localhost ftp]# mkdir other ===>创建other目录

创建索引
[root@localhost ftp]# createrepo -g /mnt/repodata/repomd.xml /var/ftp/other/
Saving Primary metadata
Saving file lists metadata
Saving other metadata
Generating sqlite DBs
Sqlite DBs complete

[root@localhost ftp]# systemctl start vsftpd
[root@localhost ftp]# systemctl status vsftpd

验证:

##客户端的设置##
[root@localhost ~]# yum -y install ftp

[root@localhost ~]# setenforce 0

[root@localhost ~]# systemctl stop firewalld

ftp连接一下服务器的IP
[root@localhost ~]# ftp 20.0.0.21

Connected to 20.0.0.21 (20.0.0.21).
220 (vsFTPd 3.0.2)
Name (20.0.0.21:root): ftp
331 Please specify the password.
Password:
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
 
ftp> ls ===>查看一下
drwxr-xr-x    8 0        0             220 Jul 10 14:38 centos7
drwxr-xr-x    3 0        0              22 Jul 10 14:42 other
drwxr-xr-x    2 0        0               6 Apr 01 04:55 pub



[root@localhost ~]# cd /etc/yum.repos.d/

[root@localhost yum.repos.d]# ll
-rw-r--r--. 1 root root 1664 4   8 06:01 CentOS-Base.repo
-rw-r--r--. 1 root root 1309 4   8 06:01 CentOS-CR.repo
-rw-r--r--. 1 root root  649 4   8 06:01 CentOS-Debuginfo.repo
-rw-r--r--. 1 root root  314 4   8 06:01 CentOS-fasttrack.repo
-rw-r--r--. 1 root root  630 4   8 06:01 CentOS-Media.repo
-rw-r--r--. 1 root root 1331 4   8 06:01 CentOS-Sources.repo
-rw-r--r--. 1 root root 7577 4   8 06:01 CentOS-Vault.repo
-rw-r--r--. 1 root root  616 4   8 06:01 CentOS-x86_64-kernel.repo

[root@localhost yum.repos.d]# mkdir backup

[root@localhost yum.repos.d]# mv C* backup/

[root@localhost yum.repos.d]# ll
总用量 0
drwxr-xr-x. 2 root root 220 7  10 22:44 backup

[root@localhost yum.repos.d]# vi ftp.repo ===>必须是.repo结尾的文件
[base]
name=base
baseurl=ftp://20.0.0.20/centos7 
enabled=1
gpgcheck=1
gpgkey=ftp://20.0.0.20/centos7/RPM-GPG-KEY-CentOS-7

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

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

[root@localhost yum.repos.d]# yum -y install httpd ===>安装一下测试一下

3.搭建阿里线网yum源

建议在一个文件里配置多个镜像,下面主要是尝试安装一个基础源,两个扩展源

[root@uplooking ~]# vim /etc/yum.repos.d/aliyun.repo  

基础源
[aliyun_jc]
name=aliyun_jc
baseurl=https://mirrors.aliyun.com/centos/7/os/x86_64/      
enabled=1
gpgcheck=0

扩展源
[aliyun_kz1]
name=aliyun_kz1
baseurl=https://mirrors.aliyun.com/centos/7/extras/x86_64/
enabled=1
gpgcheck=0

扩展源 
[aliyun_kz2]
name=aliyun_kz2
baseurl=https://mirrors.aliyun.com/epel/7/x86_64/
enabled=1
gpgcheck=0

清理yum内存,重新加载,相当于restart
[root@localhost yum.repos.d]# yum clean all
[root@localhost yum.repos.d]# yum makecache

安装一下试试
[root@localhost yum.repos.d]# yum -y install gcc gcc-c++
也可以使用这条命令直接下载到yum.d中
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo

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

再使用试试

NFS 共享存储服务

NFS是一种基于TCP/IP传输的网络文件系统协议,最初由sun公司开发。通过使用NFS协议,NFS客户机可以像访问本地目录一样访问远程NFS服务器中的共享资源。对于大多数负载均衡群集来说,使用NFS协议来共享数据存储是比较常见的做法,NFS也是NAS存储设备必然支持的一种协议。但是,NFS没有用户认证机制,而且数据在网络上明文传输,所以安全性很差,一般只能在局域网中使用。

1.如何使用NFS

NFS (Network File System)网络文件系统

  • 依赖于RPC(远程过程调用)
  • 需安装nfs-utils,rpcbind软件包
  • 系统服务:nfs,rpcbind
  • 共享配置文件:/etc/exports

在这里插入图片描述在这里插入图片描述

2.在客户机中访问 NFS 共享资源

NFS协议的目的是提供一种网络文件系统,因此对NFS共享的访问也是用mount命令来挂载,对应的文件系统类型为nfs。既可以收到挂载,也可以加入fstab配置文件来实现开机自动挂载。
在这里插入图片描述在这里插入图片描述

NFS实验

环境部署
IP网关其他
20.0.0.11020.0.0.2防火墙核心防护全关,NFS服务器
20.0.0.11120.0.0.2防火墙核心防护全关,客户机
[root@NFS ~]# Yum -y install rpcbind nfs-utils
[root@NFS ~]# Systemctl enable rpcbind
[root@NFS ~]# Systemctl enable nfs-utils

[root@NFS ~]# mkdir -p /opt/www
[root@NFS ~]# Vi /etc/exports   添加:
/opt/www/  192.168.30.100(rw,sync,no_root_squash)

[root@NFS ~]# systemctl start rpcbind
[root@NFS ~]# systemctl start nfs
[root@NFS ~]# netstat -anpt | grep rpc

[root@NFS ~]# showmount -e
/opt/www/  192.168.10.100(rw,sync,no_root_squash)
################这个时候去客户机操作验证:#################
[root@khj ~]# Yum -y install rpcbind nfs-utils
[root@khj ~]# systemctl enable rpcbind
[root@khj ~]# systemctl start rpcbind
[root@khj ~]# Systemctl enable nfs
[root@khj ~]# systemctl start  nfs

[root@khj ~]# showmount -e 192.168.30.10
/opt/www 192.168.30.100

[root@khj ~]# mkdir -p /var/www/html
[root@khj ~]# mount 192.168.30.10:/opt/www  /var/www/html/
[root@khj ~]# df -Th

[root@khj ~]# vi /etc/fstab
192.168.30.10:/opt/www /var/www/html  nfs  defaults,_netdev 0 0

 
做一个测试往/var/www/html/创造一个文件写点东西进去
[root@khj ~]# cd /var/www/html

[root@khj ~]# vi index.html
111


再回到NFS服务器查看(192.168.30.10[root@NFS ~]# Cd /opt/www/ 
[root@NFS ~]# ls
index.html

[root@NFS ~]# cat index.html
111
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值