Linux中的YUM源仓库和NFS文件共享服务(うたかたの夢)

YUM仓库源的介绍和相关信息

简介

yum是一个基于RPM包(是Red-Hat Package Manager红帽软件包管理器的缩写)构建的软件更新机制,能够自动解决软件包之间的依赖关系。

yum由仓库和客户端组成,也就是整个yum由两部分组成,所以yum可以存放在两台服务器上。也可以存放在一台服务器上。可以有官方来提供服务,也可以由第三方来提供,比如国内的阿里云,搜狐云,还有一些非盈利组织比如学校等。官方的源一般在国外,下载速度肯定有限,手动更改成国内的云可以大幅提升下载速度。

Linux系统各家厂商用的安装源

centos7和rhel 7 默认使用的时 yum仓库源 ,软件包的结尾是".rpm"

centos8 和 rhel 8 可以使用 dhf (是yum的衍生产品)

Ubuntu debian 使用的是 apt 软件包是以“.deb”结尾

yum命令的运用

1.查询需要安装的软件

//显示可用的安装包(不加软件名显示所有安装包)
[root@localhost ~]# yum list 软件名
//显示安装包详细信息
[root@localhost ~]#yum info 软件名
//根据关键字查找相关的软件安装包
[root@localhost ~]#yum search 关键词
//查找某个命令是哪个软件提供的
[root@localhost ~]#yum whatprovides 命令名

2.安装软件

[root@localhost ~]# yum [选项] install 软件名
-y 提示信息全部yes
-q 不显示安装过程

3.卸载软件

//卸载已安装的软件必须加软件名
[root@localhost ~]# yum remove httpd
//查看历史的使用记录,选择ID 1,2,3,4,5,可以使用yum history undo 4 进行卸载,这样对比remove好处是可以将所有的依赖都删除
[root@localhost ~]# yum history
[root@localhost ~]# yum history undo 3 //3代表id号
//如果后悔 卸载 可以使用两种方式
yum history redo 4 (重新安装一遍)
再次使用yum history undo 6 (反悔卸载等于重新安装一遍)

4.其他

//仅下载安装包
[root@localhost ~]# yum install --downloadedonly --downloaddir=保存的路径
//清除yum缓存目录
[root@localhost ~]# yum clean all
//新建yum源后重新建立元数据
[root@localhost ~]# yum makecache
//显示所有yum源
[root@localhost ~]# yum repolist all

yum配置文件

yum主配置文件位置 /etc/yum.conf/

[root@localhost ~]#vim /etc/yum.conf/
[main]
cachedir=/var/cache/yum/$basearch/$releasever --yum下载的RPM包的缓存目录
keepcache=0                      --是否保存缓存  0代表不保存,1代表保存
debuglevel=2                     --调试级别了解即可
logfile=/var/log/yum.log		 --日志文件位置
exactarch=1						 --是否允许不同版本的rpm安装
obsoletes=1					     --update 的一个参数是否可以允许旧版本的运行	
gpgcheck=1                       --验证秘钥
plugins=1                        --是否允许插件
installonly_limit=5              --保存几个内核
bugtracker_url=http://bugs.centos.org/set_project.php?project_id=23&ref=http://bugs.centos.org/bug_report_page.php?category=yum
distroverpkg=centos-release

2.yum源配置文件位置 /etc/yum.repos.d/

[root@localhost2 ~]#cd /etc/yum.repos.d/
 
//默认已有的yum源,均为国外官方的在线源,可自己搭建
[root@localhost2 yum.repos.d]#ls
CentOS-Base.repo  CentOS-Debuginfo.repo  CentOS-Media.repo    CentOS-Vault.repo
CentOS-CR.repo    CentOS-fasttrack.repo  CentOS-Sources.repo  CentOS-x86_64-kernel.repo

手动搭建yum源

yum源分类:

本地源:file://
在线源:http:// 或 https://
ftp源:ftp://

搭建在线yum源(以阿里云yum源为例)

//将自带的yum备份到repo.bak下
[root@localhost2 yum.repos.d]#cd /etc/yum.repos.d
[root@localhost2 yum.repos.d]#ls
CentOS-Base.repo  CentOS-Debuginfo.repo  CentOS-Media.repo    CentOS-Vault.repo
CentOS-CR.repo    CentOS-fasttrack.repo  CentOS-Sources.repo  CentOS-x86_64-kernel.repo
[root@localhost2 yum.repos.d]#mkdir repo.bak
[root@localhost2 yum.repos.d]#mv *.repo repo.bak
[root@localhost2 yum.repos.d]#ls
repo.bak
 
//新建阿里云yum源配置文件
[root@localhost2 yum.repos.d]#vim ali.repo
[ali]
name=ali
baseurl=https://mirrors.aliyun.com/centos/7/os/x86_64/   --阿里云镜像源地址
gpgcheck=0   --不校验
 
//可增设更新源
[aliupdate]
name=update
baseurl=https://mirrors.aliyun.com/centos/7/updates/x86_64/
gpgcheck=0
 
//清除yum缓存目录和重新建立元数据
[root@localhost2 yum.repos.d]#yum clean all
已加载插件:fastestmirror, langpacks
正在清理软件源: ali aliupdate
Cleaning up list of fastest mirrors
Other repos take up 68 k of disk space (use --verbose for details)
 
[root@localhost2 yum.repos.d]#yum makecache 
已加载插件:fastestmirror, langpacks
Determining fastest mirrors
ali                                                                       | 3.6 kB  00:00:00     
aliupdate                                                                 | 2.9 kB  00:00:00     
(1/7): ali/group_gz                                                       | 153 kB  00:00:00     
(2/7): ali/primary_db                                                     | 6.1 MB  00:00:22     
(3/7): ali/filelists_db                                                   | 7.2 MB  00:00:25     
(4/7): ali/other_db                                                       | 2.6 MB  00:00:09     
(5/7): aliupdate/filelists_db                                             | 9.4 MB  00:00:35     
(6/7): aliupdate/other_db                                                 | 1.1 MB  00:00:04     
(7/7): aliupdate/primary_db                                               |  17 MB  00:01:01     
元数据缓存已建立
 
//测试下载软件成功
[root@localhost2 yum.repos.d]#yum install -y mysql
已加载插件:fastestmirror, langpacks
Loading mirror speeds from cached hostfile
正在解决依赖关系
--> 正在检查事务
---> 软件包 mariadb.x86_64.1.5.5.68-1.el7 将被 安装
--> 解决依赖关系完成
 
依赖关系解决
 
============================================================================================================================================================
 Package                             架构                               版本                                          源                               大小
============================================================================================================================================================
正在安装:
 mariadb                             x86_64                             1:5.5.68-1.el7                                ali                             8.8 M
 
事务概要
============================================================================================================================================================
安装  1 软件包
 
总下载量:8.8 M
安装大小:49 M
Downloading packages:
mariadb-5.5.68-1.el7.x86_64.rpm                                                                                                      | 8.8 MB  00:00:34     
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
  正在安装    : 1:mariadb-5.5.68-1.el7.x86_64                                                                                                           1/1 
  验证中      : 1:mariadb-5.5.68-1.el7.x86_64                                                                                                           1/1 
 
已安装:
  mariadb.x86_64 1:5.5.68-1.el7                                                                                                                             
 
完毕!

搭建ftp yum源

ftp服务端

//下载vsftp
[root@localhost2 yum.repos.d]#yum install -y vsftpd
 
//开启服务
[root@localhost2 yum.repos.d]#systemctl start vsftpd
 
//关闭防火墙和selinux
[root@localhost2 ~]#systemctl stop firewalld
[root@localhost2 ~]#setenforce 0
 
//搭建ftp源(这里使用镜像里的软件包)挂载到/var/ftp/centos7
[root@localhost2 ~]#cd /var/ftp
[root@localhost2 ftp]#ls
pub
[root@localhost2 ftp]#mkdir centos7
[root@localhost2 ftp]#mount /dev/sr0 /var/ftp/centos7/
mount: /dev/sr0 写保护,将以只读方式挂载

客户端

//关闭防火墙和selinux
[root@localhost2 ~]#systemctl stop firewalld
[root@localhost2 ~]#setenforce 0
 
//将自带的yum备份到repo.bak下
[root@localhost1 ~]#cd /etc/yum.repos.d
[root@localhost1 yum.repos.d]#ls
CentOS-Base.repo  CentOS-Debuginfo.repo  CentOS-Media.repo    CentOS-Vault.repo
CentOS-CR.repo    CentOS-fasttrack.repo  CentOS-Sources.repo  CentOS-x86_64-kernel.repo
[root@localhost1 yum.repos.d]#mkdir repo.bak
[root@localhost1 yum.repos.d]#mv *.repo repo.bak/
[root@localhost1 yum.repos.d]#ls
repo.bak
 
//新建ftp源配置文件
[root@localhost1 yum.repos.d]#vim ftp.repo
[ftp]
name=ftp
baseurl=ftp://192.168.116.20/centos7   --指定ftp服务器镜像源地址(由于远程传输文件用户登录的根目录在/var/ftp 下,所以这里指定服务器地址/centos7目录,就是服务器的/var/ftp/centos7 目录)
gpgcheck=0
 
清除yum缓存目录和重新建立元数据
[root@localhost1 yum.repos.d]#yum clean all
已加载插件:fastestmirror, langpacks
正在清理软件源: ftp
Cleaning up list of fastest mirrors
Other repos take up 1.1 G of disk space (use --verbose for details)
[root@localhost1 yum.repos.d]#yum makecache
已加载插件:fastestmirror, langpacks
Determining fastest mirrors
ftp                                                                                                                               | 3.6 kB  00:00:00     
(1/4): ftp/group_gz                                                                                                               | 153 kB  00:00:00     
(2/4): ftp/primary_db                                                                                                             | 3.3 MB  00:00:00     
(3/4): ftp/filelists_db                                                                                                           | 3.3 MB  00:00:00     
(4/4): ftp/other_db                                                                                                               | 1.3 MB  00:00:00     
元数据缓存已建立
 
//测试安装软件成功
[root@localhost1 yum.repos.d]#yum install -y tftp
已加载插件:fastestmirror, langpacks
Loading mirror speeds from cached hostfile
正在解决依赖关系
--> 正在检查事务
---> 软件包 tftp.x86_64.0.5.2-22.el7 将被 安装
--> 解决依赖关系完成
 
依赖关系解决
 
=========================================================================================================================================================
 Package                           架构                                版本                                       源                                大小
=========================================================================================================================================================
正在安装:
 tftp                              x86_64                              5.2-22.el7                                 ftp                               38 k
 
事务概要
=========================================================================================================================================================
安装  1 软件包
 
总下载量:38 k
安装大小:52 k
Downloading packages:
tftp-5.2-22.el7.x86_64.rpm                                                                                                        |  38 kB  00:00:00     
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
  正在安装    : tftp-5.2-22.el7.x86_64                                                                                                               1/1 
  验证中      : tftp-5.2-22.el7.x86_64                                                                                                               1/1 
 
已安装:
  tftp.x86_64 0:5.2-22.el7                                                                                                                               
 
完毕!

配置yum源优先级

当既有本地yum源又有aliyun源或其他yum源的时候,我们在装软件包的时候当然希望先用本地的yum源去安装,本地找不到可用的包时再使用aliyun源去安装软件,这里就涉及到了优先级的问题,yum提供的插件yum-plugin-priorities.noarch可以解决这个问题。

//查看是否安装了yum-plugin优先级插件
[root@localhost2 ~]# rpm -q yum-plugin-priorities.noarch
未安装软件包 yum-plugin-priorities.noarch 
 
//如果未安装就需要安装一下
[root@localhost2 ~]# yum install -y yum-plugin-priorities.noarch
 
//如果我们需要优先使用哪个yum源,就在其配置文件添加priority=1 字段(数字越小优先级越高)
[root@localhost2 ~]vim local.repo
[local]
name=local
baseurl=file:///mnt/
enabled=1
gpgcheck=1 
priority=1   --数字越小优先级越高

NFS共享服务的介绍和相关知识

简介

NFS(Network File System 网络文件服务),是一种基于 TCP/IP 传输的网络文件系统协议,最初由 Sun 公司开发。

NFS 服务的实现依赖于 RPC(Remote Process Call,远端过程调用)机制,通过使用 NFS 协议,客户机可以像访问本地目录一样访问远程服务器中的共享资源。(远端过程调用:自己没有这种功能,调用别人的功能) NFS 也是 NAS 存储 设备必然支持的一种协议,以完成远程到本地的映射过程。
在这里插入图片描述

linux中要使用NFS需要下载的软件包

在 CentOS 7 系统中,需要安装 nfs-utils、rpcbind 软件包来提供 NFS 共享服务,前者用于 NFS 共享发布和访问,后者用于 RPC 支持。手动加载 NFS 共享服务时,应该先启动 rpcbind,再启动 nfs。

软件包 (包括服务器端和客户端):

nfs-utils (nfs端口号 2049/tcp):共享服务
rpcbind (RPC端口号 111/tcp):远程共享调用
检查软件包的下载:rpm -q rpcbind nfs-utils

软件包下载:yum install -y nfs-utils rpcbind

NFS相关配置文件及其配置作用

NFS 的配置文件为/etc/exports

格式为: 共享的目录位置 客户机地址(权限选项)

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值