部署YUM仓库及NFS共享服务

一、YUM仓库服务

1. YUM概述

YUM(Yellow dog Updater Modified)

基于RPM包构建的软件更新机制

可以自动解决依赖关系

所有软件包由集中的YUM软件仓库提供

2. 部署YUM软件仓库

(1)准备安装源

①YUM仓库的种类

根据软件仓库的提供方式可分为:

  1. FTP服务:ftp://……
  2. HTTP服务:http://……
  3. 本地目录:file://……
②RPM软件包的来源

CentOS发布的RPM包集合

第三方组织发布的RPM包集合

用户自定义的RPM包集合

③构建CentOS 7软件仓库

RPM包来自CentOS 7 DVD光盘

通过FTP方式提供给客户机

mkdir -p /var/ftp/centos7
cp -rf /media/cdrom/* /var/ftp/centos7
rpm -ivh /media/cdrom/Packages/vsftpd-3.0.2-21.el7.x86_64.rpm
systemctl start vsftpd
systemctl enable vsftpd

在软件仓库中加入非官方RPM包组

包括存在依赖关系的所有RPM包

使用createrepo工具建立仓库数据文件

mkdir /var/ftp/other
cd /var/ftp/other
createrepo -g /media/cdrom/repodata/repomd.xml ./

(2)访问YUM仓库

为客户机指定YUM仓库位置

配置文件:/etc/yum.repos.d/centos7.repo

vi /etc/yum.repos.d/centos7.repo
[base]
name=CentOS 7.3
baseurl=ftp://192.168.88.88/centos7
enabled=1
gpgcheck=1
gpgkey=file:///rpm-gpg/RPM-GPG-KEY-CentOS-7
[other]
name=Other RPM Packages
baseurl=ftp://192.168.88.88/other
enabled=1
gpgcheck=0

3. 使用YUM工具管理软件包

(1)关于YUM命令

由软件包yum-3.4.3-150,el7.centos.noarch提供

用来访问YUM仓库,查询、下载及安装、卸载软件包

(2)YUM的配置文件

基本设置:/etc/yum.conf

仓库设置:/et/yum.repos.d/*.repo

日志文件:/var/log/yum.log

(3)YUM缓存目录

存放下载的软件包、仓库信息等数据

位于/var/cache/yum/x86_64/7

注:x86_64为本机硬件架构,7为OS版本,需根据实际情况修改目录

通常建立新的仓库需要使用“yum clean all”清除旧yum缓存,并使用“yum makecache”创建新yum缓存

(4)软件包的查询命令

  1. yum list [软件名]
[root@localhost x86_64]# yum list httpd
已加载插件:fastestmirror, langpacks
Loading mirror speeds from cached hostfile
* base: mirrors.aliyun.com
* extras: mirrors.aliyun.com
* updates: mirrors.aliyun.com
已安装的软件包
httpd.x86_64 2.4.6-67.el7.centos @local
可安装的软件包
httpd.x86_64 2.4.6-97.el7.centos updates
  1. yum info [软件名]
[root@localhost x86_64]# yum info vsftpd
已加载插件:fastestmirror, langpacks
Loading mirror speeds from cached hostfile
* base: mirrors.aliyun.com
* extras: mirrors.aliyun.com
* updates: mirrors.aliyun.com
可安装的软件包
名称 :vsftpd
架构 :x86_64
版本 :3.0.2
发布 :29.el7_9
大小 :173 k
源 :updates/7/x86_64
简介 : Very Secure Ftp Daemon
网址 :https://security.appspot.com/vsftpd.html
协议 : GPLv2 with exceptions
描述 : vsftpd is a Very Secure FTP daemon. It was written completely from
: scratch.
  1. yum search <关键词>
[root@localhost x86_64]# yum search sshd
已加载插件:fastestmirror, langpacks
Loading mirror speeds from cached hostfile
* base: mirrors.aliyun.com
* extras: mirrors.aliyun.com
* updates: mirrors.aliyun.com
======================================= 匹配:sshd =======================================
fail2ban.noarch : Daemon to ban hosts that cause multiple authentication errors
gsi-openssh-server.x86_64 : SSH server daemon with GSI authentication
jsch.noarch : Pure Java implementation of SSH2
libnss-mysql.x86_64 : NSS library for MySQL
openssh-server.x86_64 : An open source SSH server daemon
  1. yum whatprovides <关键词>
[root@localhost x86_64]# yum whatprovides yum
已加载插件:fastestmirror, langpacks
Loading mirror speeds from cached hostfile
* base: mirrors.aliyun.com
* extras: mirrors.aliyun.com
* updates: mirrors.aliyun.com
yum-3.4.3-154.el7.centos.noarch : RPM package installer/updater/manager
源 :local yum-3.4.3-168.el7.centos.noarch : RPM package installer/updater/manager
源 :base yum-3.4.3-154.el7.centos.noarch : RPM package installer/updater/manager
源 :@anaconda

(5)查询软件包组

  1. yum grouplist [包组名]
[root@localhost x86_64]# yum grouplist gnome-desktop
已加载插件:fastestmirror, langpacks
没有安装组信息文件
Maybe run: yum groups mark convert (see man yum)
Loading mirror speeds from cached hostfile
* base: mirrors.aliyun.com
* extras: mirrors.aliyun.com
* updates: mirrors.aliyun.com
可用的环境分组:
GNOME 桌面
完成
  1. yum groupinfo <包组名>
[root@localhost x86_64]# yum groupinfo gnome-desktop
已加载插件:fastestmirror, langpacks
没有安装组信息文件
Maybe run: yum groups mark convert (see man yum)
Loading mirror speeds from cached hostfile
* base: mirrors.aliyun.com
* extras: mirrors.aliyun.com
* updates: mirrors.aliyun.com 环境分组:GNOME 桌面
环境 ID:gnome-desktop-environment
描述:GNOME 是一个非常直观且用户友好的桌面环境。
必备组:
+base
+core
+desktop-debugging
+dial-up
+directory-client
+fonts
+gnome-desktop
+guest-agents
+guest-desktop-agents
+input-methods
+internet-browser
+java-platform
+multimedia
+network-file-system-client
+networkmanager-submodules
+print-client
+x11
可选组:
+backup-client
+gnome-apps
+internet-applications
+legacy-x
+office-suite
+remote-desktop-clients
+smart-card 组:GNOME
组编号:gnome-desktop
描述:GNOME 是一个非常直观且用户友好的桌面环境。
必要的软件包:
NetworkManager-libreswan-gnome
PackageKit-command-not-found
PackageKit-gtk3-module
abrt-desktop
at-spi2-atk
at-spi2-core
avahi
baobab
caribou
caribou-gtk2-module
caribou-gtk3-module
cheese
compat-cheese314
control-center
dconf
empathy
eog
evince
evince-nautilus
file-roller
file-roller-nautilus
firewall-config
firstboot
fprintd-pam
gdm
gedit
glib-networking
gnome-bluetooth
gnome-boxes
gnome-calculator
gnome-classic-session
gnome-clocks
gnome-color-manager
gnome-contacts
gnome-dictionary
gnome-disk-utility
gnome-font-viewer
gnome-getting-started-docs
gnome-icon-theme
gnome-icon-theme-extras
gnome-icon-theme-symbolic
gnome-initial-setup
gnome-packagekit
gnome-packagekit-updater
gnome-screenshot
gnome-session
gnome-session-xsession
gnome-settings-daemon
gnome-shell
gnome-software
gnome-system-log
gnome-system-monitor
gnome-terminal
gnome-terminal-nautilus
gnome-themes-standard
gnome-tweak-tool
gnome-user-docs
gnome-weather
gucharmap
gvfs-afc
gvfs-afp
gvfs-archive
gvfs-fuse
gvfs-goa
gvfs-gphoto2
gvfs-mtp
gvfs-smb
initial-setup-gui
libcanberra-gtk2
libcanberra-gtk3
libproxy-mozjs
librsvg2
libsane-hpaio
metacity
mousetweaks
nautilus
nautilus-sendto
nm-connection-editor
orca
+redhat-access-gui
sane-backends-drivers-scanners
seahorse
setroubleshoot
sushi
totem
totem-nautilus
vinagre
vino
xdg-user-dirs-gtk
yelp
默认的软件包:
+qgnomeplatform
xdg-desktop-portal-gtk
可选的软件包:
alacarte
dconf-editor
dvgrab
fonts-tweak-tool
gconf-editor
gedit-plugins
gnome-shell-browser-plugin
gnote
libappindicator-gtk3
seahorse-nautilus
seahorse-sharing
vim-X11
xguest

4. 软件安装、升级

(1)安装软件

yum install [软件名]

yum groupinstall <包组名>

(2)升级软件

yum update

yum groupupdate

(3)卸载软件

yum remove <软件名>

yum groupmove <包组名>

二、NFS共享存储服务

1. NFS概述

NFS(Network File System)网络文件系统是一种基于TCP/IP传输的网络文件系统协议。通过使用NFS协议,客户机可以像本地目录一样访问远程服务器中的共享资源。

对于大多数负载均衡群集来说,使用NFS协议来共享数据存储是比较常见的做法,NFS也是NAS存储设备必然支持的一种协议,但是由于NFS没有用户认证机制,而且数据在网络上明文传输,所以安全性很差,一般只能在局域网中使用。

NFS服务的实现依赖于RPC(Remote Process Call,远端过程调用)机制,以完成远程到本地的映射过程。所以需要安装nfs-utils、rpcbind软件包来提供NFS共享服务,前者用于NFS共享发布和访问,后者用于RPC支持。

共享配置文件:/etc/exports

2. 使用NFS发布共享资源

  1. 安装nfs-utils、rpcbind软件包

    rpm -q nfs-utils rpcbind

    yum -y install nfs-utils rpcbind

  2. 设置共享目录

mkdir -p /opt/wwwroot
chmod 777/opt/wwwroot
vim /etc/exports
/opt/wwwroot 192.168.80.0/24(rw,sync,no_root_squash)
/var/ftp/pub 192.168.88.188(ro) 192.168.88.111(rw)
/share *(rw,sync)

客户机地址可以是主机名、IP地址、网段地址,允许使用“*”、“?”通配符

“rw”表示允许读写,“ro”表示为只读

sync:表示同步写入到内存与硬盘中

no_root_squash:表示当客户机以root身份访问时赋予本地root权限(默认是root_squash)

root_squash:表示客户机用root用户访问该共享目录时,将root用户映射成匿名用户

其它常用选项:

all_squash:所有访问用户都映射为匿名用户或用户组

async:将数据先保存在内存缓冲区中,必要时才写入磁盘

subtree_check(默认):若输出目录是一个子目录,则nfs服务器将检查其父目录的权限

no_subtree_check:即使输出目录是一个子目录,,nfs服务器也不检查其父目录的权限,这样可以提高效率

  1. 启动DNS服务程序

    手动加载NFS共享服务时,应该先启动rpcbind,再启动nfs
systemctl start rpcbind
systemctl start nfs
systemctl enable rpcbind
systemctl enable nfs
netstat -anpt | grep rpcbind #查看rpcbind端口是否开启,rpcbind服务默认使用tcp端口111
  1. 查看本机发布的NFS共享目录

    showmount -e

3. 在客户端访问NFS共享

  1. 安装nfs-utils、rpcbind软件包
rpm -q rpcbind nfs-utils
yum -y install nfs-utils rpcbind
systemctl start rpcbind
systemctl ennbale rpcbind
showmount -e 192.168.88.88 #查看NFS服务器共享目录
  1. 手动挂载NFS共享目录
mkdir /myshare
mount 192.168.88.88:/opt/wwwroot /myshare
mount #确认挂载结果,也可以使用df -hT
  1. 设置自动挂载
vim /etc/fstab
192.168.88.88:/opt/wwwroot /myshare nfs defaults,_netdev 0 0

_netdev:表示挂载设备需要网络

  1. 强制卸载NFS

    如果服务局端NFS服务突然间停掉了,而客户端正在挂载使用时,在客户端就会出现执行df -h命令卡死的现象。这个时候直接使用umount命令时无法直接卸载的,需要加上-lf选项才能卸载

    umount -lf /myshare

部署YUM仓库及NFS共享服务的更多相关文章

  1. 部署yum仓库以及NFS共享服务

    目录: 一.YUM概述 二.准备安装源 三.访问YUM仓库 四.本地YUM仓库 五.YUM工具概述 六.软件包查询.安装.卸载 七.NFS共享 一.YUM概述 YUM(Yellow dog Updat ...

  2. 懂得分享 Linux 配置NFS共享服务

    部署YUM仓库及NFS共享服务一.YUM概述    YUM (Yellow dog Updater Modified)二.准备安装源    ① 软件仓库的提供方式    ② RPM软件包的来源    ...

  3. 部署YUM源仓库与NFS共享存储服务

    镜像下载.域名解析.时间同步请点击 阿里巴巴开源镜像站 一.YUM YUM (Yellow dog Updater Modified) ●基于RPM包构建的软件更新机制 ●可以自动解决依赖关系 ●所有 ...

  4. Linux网络服务第四章部署yum仓库

    第四章部署yum仓库服务 1.笔记 systemctl start 命令 :重启 systemctl enable 命令 :开机自启动 netstat -anput | grep 命令:查看是否开启 ...

  5. 自动化部署必备技能—部署yum仓库、定制rpm包

    部署yum仓库.定制rpm包 目录 第1章 扩展 - yum缓存 1.1 yum缓存使用步骤... 1 1.1.1 导言... 1 1.1.2 修改配置文件... 1 1.1.3 使用缓存... 1 ...

  6. NFS共享服务

    一.网络文件系统共享服务 NFS( Network File System,网络文件系统 )是一种基于TCP/IP传输的网络文件系统协议,最初由SUN公司开发,通过使用NFS协议,客户机可以像访问本地 ...

  7. 配置samba和NFS共享服务

                            配置samba和NFS共享服务 1案例1:配置SMB文件夹共享 1.1问题 本例要求在虚拟机server0上发布两个共享文件夹,具体要求如下: 此服务器 ...

  8. Linux网络服务第五章NFS共享服务

    1.笔记 NFS一般用在局域网中,网络文件系统c/s格式 服务端s:设置一个共享目录 客户端c:挂载使用这个共享目录 rpc:111远程过程调用机制 Showmount -e:查看共享目录信息 def ...

  9. 部署YUM仓库 (最近睡眠质量很差,你什么时候搬过来住)

    部署YUM仓库 1.YUM概述 YUM(Yellow dog Updater Modified) 基于RPM包构建的软件更新机制 可以自动解决依赖关系 所有软件由集中的YUM软件仓库提供 2.主备安装 ...

随机推荐

  1. Java支持IPv6研究

    1.Java对IPv6的支持 相对其他开发语言而言,Java对IPv6的支持是比较透明的, 如果全部采用域名(主机名)的方式进行通信,那么基本不需要修改也无需编译原来的代码就可以直接在IPv6上运行. ...

  2. Git_使用SSH密钥操作远端仓库

    git支持多种传输协议,ssh协议是其中一种. 初次使用git的用户要使用ssh协议大概需要三个步骤: 生成密钥 设置远程仓库(本文以github为例)上的公钥 把git的 remote url 修改 ...

  3. [ flask ] 解耦models(解决models文件太臃肿的问题)

    问题描述 用博客项目来描述,我们在models中定义了用户表(User).文章表(Post).通知表(Notification).等等.随着我们开发的深入,添加的功能越来越多,到后期models文件会 ...

  4. java mapreduce实现网站PV分析

    原文链接: https://www.toutiao.com/i6765677128022229517/ PV 是Page Views的缩写,即页面浏览量,用户每一次对网站中的每个网页访问均被记录一次. ...

  5. vue2.0与vue3.0项目创建

    脚手架安装与卸载 安装 npm install -g vue-cli //or npm install -g @vue/cli 卸载 npm uninstall -g vue-cli //or npm ...

  6. 深入浅出 CSS 动画

    本文将比较全面细致的梳理一下 CSS 动画的方方面面,针对每个属性用法的讲解及进阶用法的示意,希望能成为一个比较好的从入门到进阶的教程. CSS 动画介绍及语法 首先,我们来简单介绍一下 CSS 动画 ...

  7. ADD software version display

    ADD software version display ADD software version display1. Problem Description2. Analysis3. Solutio ...

  8. kali 2020.4 在安装typecho时,无法连接数据库的问题

    问题与环境 linux的环境为 kali 2020.4 php版本为:PHP 7.4.11 安装的typecho版本为:typechov1.0 遇到的问题是:在typecho初始化时,数据库的信息都填 ...

  9. 【刷题-LeetCode】209. Minimum Size Subarray Sum

    Minimum Size Subarray Sum Given an array of n positive integers and a positive integer s, find the m ...

  10. golang中的配置管理库viper

    viper简介 Viper是适用于Go应用程序的完整配置解决方案.它旨在在应用程序中工作,并且可以处理所有类型的配置需求和格式.它支持: 设置默认值 从JSON,TOML,YAML,HCL,envfi ...