Linux 部署yum仓库与NFS服务

部署yum仓库与NFS服务

Yum(全称为 Yellow dog Updater, Modified)是一个在Fedora和RedHat以及CentOS中的Shell前端软件包管理器。基于RPM包管理,能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软件包,无须繁琐地一次次下载、安装。
网络文件系统,英文Network File System(NFS),是由SUN公司研制的UNIX表示层协议(pressentation layer protocol),能使使用者访问网络上别处的文件就像在使用自己的计算机一样。
对于大多数负责均衡群集来说,使用NFS协议来共享数据存储是比较常见的做法,NFS也是NAS存储设备必然支持的一种协议。
但是,NFS没有用户认证机制,而且数据在网络上明文传输,所以安全性很差,一般只能在局域网中使用。

YUM概述

YUM(Yellow dog Updater, Modified)
基于RPM包构建的软件更新机制
可以自动解决依赖关系
所有软件包由几种的YUM软件仓库提供

yum工具概述

关于yum命令
由软件包yum-…提供
用来访问yum仓库,查询,下载及安装,卸载软件包

yum的配置文件

基本设置:/etc/yum.conf
仓库设置:/etc/yum.repos.d/*.repo
日志文件:/var/log/yum.log
yum缓存目录
存放下载的软件包,仓库信息等数据
位于/var/cache/yum/basearch(硬件架构,如x8664)/
basearch(硬件架构,如x866​4)/releasever(OS版本)
清理缓存数据
yum clean all

软件包查询
查询软件包
yum list [软件名]…
yum info [软件名]…
yum search <关键词>…
查询软件包组
yum grouplist [包组名]…
yum groupinfo <包组名>…

软件安装升级与卸载

安装软件
yum install [软件名]
yum groupinstall <包组名>
升级软件
yum update
yum groupdate
yum update 更新软件包,连内核一起更新
yum upgrade 只更新软件包,但不更新内核

卸载软件
yum remove <软件名>…
yum groupremove <包组名>…

构建远程YUM仓库

在服务端

[root@localhost ~]# hostnamectl set-hostname server
[root@localhost ~]# su
[root@server ~]# mount /dev/sr0 /mnt
mount: /dev/sr0 写保护,将以只读方式挂载
[root@server ~]# df -Th
文件系统                类型      容量  已用  可用 已用% 挂载点
/dev/mapper/centos-root xfs        50G  5.1G   45G   11% /
devtmpfs                devtmpfs  1.9G     0  1.9G    0% /dev
tmpfs                   tmpfs     1.9G     0  1.9G    0% /dev/shm
tmpfs                   tmpfs     1.9G   13M  1.9G    1% /run
tmpfs                   tmpfs     1.9G     0  1.9G    0% /sys/fs/cgroup
/dev/sda1               xfs      1014M  179M  836M   18% /boot
/dev/mapper/centos-home xfs       245G   33M  245G    1% /home
tmpfs                   tmpfs     378M  4.0K  378M    1% /run/user/42
tmpfs                   tmpfs     378M   28K  378M    1% /run/user/0
/dev/sr0                iso9660   4.3G  4.3G     0  100% /mnt
[root@server ~]# yum install vsftpd -y
[root@server centos7]#cd /var/ftp/
[root@server centos7]#mkdir centos7
[root@server centos7]#cd centos7/
[root@server centos7]# cp -rf /mnt/* /var/ftp/centos7/ &
[1] 17886
[root@server centos7]# jobs
[1]+  运行中               cp -i -rf /mnt/* /var/ftp/centos7/ &
[root@server centos7]# cd ..
[root@server ftp]# mkdir other
[root@server ftp]# createrepo -g /mnt/repodata/repomd.xml  other/
Saving Primary metadata
Saving file lists metadata
Saving other metadata
Generating sqlite DBs
Sqlite DBs complete
[root@server ftp]# systemctl start vsftpd
[root@server ftp]# systemctl stop firewalld.service 
[root@server ftp]# setenforce 0

客户端

[root@localhost ~]# hostnamectl set-hostname client
[root@localhost ~]# su
[root@client ~]# yum install ftp -y
[root@client ~]# cd /etc/yum.repos.d/
[root@client yum.repos.d]# mkdir bak
[root@client yum.repos.d]# mv *.repo bak/
[root@client yum.repos.d]# vim centos7.repo
[base]
name=centos7.Packages
baseurl=ftp://14.0.0.10/centos7
enabled=1
gpgcheck=1
gpgkey=ftp://14.0.0.10/centos7/RPM-KEY-CentOS-7

[other]
name=other.Packages
baseurl=ftp://14.0.0.10/other
enabled=1
gpgcheck=0

NFS共享存储服务

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

使用NFS发布共享资源
安装nfs-utils,rpcbind软件包
提供RPC支持的服务为rpcbind,提供NFS共享的服务为nfs,安装完成后建议调整为开机自启动状态
手动加载NFS共享服务时,应先启动rpcbind,然后在启动nfs
设置共享目录

NFS的配置文件为/etc/exports,文件内容默认为空(无任何共享)

查看本机发布的NFS共享目录

showmount -e

在客户机中访问NFS共享资源
安装rpcbind软件包,并启动rpcbind服务
若要正常访问NFS共享资源,客户机中也需要安装rpcbind软件包,并启动rpcbind服务
为了可以使用showmount查询工具,建议将nfs-utils软件包也一并装上
使用 “showmount -e 服务器地址”可以查看NFS服务器端共享了那些目录

手动挂载NFS共享目录
以root用户身份执行mount操作,将NFS服务器共享的/opt/wwwroot目录挂载到本地目录/var/www/html
与挂载本地文件系统不同的是,设备位置处应指出服务器地址
完成挂在后,访问客户机的/var/www/html文件夹,相当于访问NFS服务器中的/opt/wwwroot文件夹,其中的网络映射过程对于用户程序来说是透明的

服务端

[root@localhost ~]# hostnamectl set-hostname server
[root@localhost ~]# su
[root@server ~]# vim /etc/fstab
[root@server ~]# mount -a
[root@server ~]# df -hT
Filesystem     Type      Size  Used Avail Use% Mounted on
/dev/sda2      xfs        20G  4.1G   16G  21% /
devtmpfs       devtmpfs  898M     0  898M   0% /dev
tmpfs          tmpfs     912M     0  912M   0% /dev/shm
tmpfs          tmpfs     912M  9.0M  903M   1% /run
tmpfs          tmpfs     912M     0  912M   0% /sys/fs/cgroup
/dev/sda5      xfs        10G   52M   10G   1% /home
/dev/sda1      xfs       6.0G  174M  5.9G   3% /boot
tmpfs          tmpfs     183M  8.0K  183M   1% /run/user/42
tmpfs          tmpfs     183M     0  183M   0% /run/user/0
/dev/sdb1      xfs        20G   33M   20G   1% /mnt
[root@server ~]# yum install nfs-utils rpcbind -y
[root@server ~]# systemctl enable nfs
Created symlink from /etc/systemd/system/multi-user.target.wants/nfs-server.service to /usr/lib/systemd/system/nfs-server.service.
[root@server ~]# systemctl enable rpcbind.service 
Created symlink from /etc/systemd/system/multi-user.target.wants/rpcbind.service to /usr/lib/systemd/system/rpcbind.service.
[root@server ~]# vim /etc/exports
/mnt    14.0.0.0/24(rw,sync,no_root_squash)
[root@server ~]# systemctl start nfs
[root@server ~]# systemctl start rpcbind
[root@server ~]# systemctl stop firewalld.service 
[root@server ~]# setenforce 0

客户端

[root@localhost ~]# hostnamectl set-hostname client
[root@localhost ~]# su
[root@client ~]# systemctl stop firewalld.service 
[root@client ~]# setenforce 0
[root@client ~]# yum install httpd -y
[root@client ~]# mount 192.168.197.173:/mnt /var/www/html

猜你喜欢

转载自blog.csdn.net/weixin_46355881/article/details/107379856