Linux中搭建YUM

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux中搭建YUM相关的知识,希望对你有一定的参考价值。

Linux中如何搭建YUM服务

什么是yum,有何作用?

YUM,yellow Updater Modified

  • 为客户机集中提供软件仓库,基于红帽RPM安装包构建
  • 能够自动解决软件安装依赖关系
  • 简单说就是linux的应用商店

实验环境

  • CentOS7
  • 在虚拟机上使用VMNAT 8模式
  • 配好IP地址,能够跟物理机ping通

敲起来

准备软件仓库

首先,挂载CentOS7光盘

[[email protected] ~] ls  /dev/cdrom   // 查看光驱设备
/dev/cdrom
[[email protected] ~] mkdir  /dvd   // 创建dvd目录
[[email protected] ~] ls  /dvd   //查看创建的dvd目录
[[email protected] ~] mount  /dev/cdrom   /dvd/   //将光盘挂载到创建的dvd目录下
[[email protected] ~] ls /dvd   //查看挂载是否成功 看dvd目录下是否有挂载文件
[[email protected] ~] ls /dvd/Packages   //查看dvd目录下软件包目录

[[email protected] ~] mkdir  -p  /repo/cos7dvd   //创建仓库目录
[[email protected] ~] ls  /repo/cos7dvd/    //查看创建是否成功
[[email protected] ~]# cp  -r  /dvd/*  /repo/cos7dvd/   //复制dvd下所有文档到仓库

确认仓库数据

[[email protected] ~]# ls /repo/cos7dvd/   //查看仓库数据
CentOS_BuildTag  LiveOS
EFI              Packages
EULA             repodata
GPL              RPM-GPG-KEY-CentOS-7
images           RPM-GPG-KEY-CentOS-Testing-7
isolinux         TRANS.TBL

为yum设置软件源

[[email protected] ~] mkdir /etc/yum.repos.d/oldrepo   //在仓库下创建一个目录
[[email protected] ~] mv /etc/yum.repos.d/*.repo  /etc/yum.repos.d/oldrepo/   //将仓库中所有.repo移动到oldrepo中
[[email protected] ~] ls /etc/yum.repos.d/oldrepo/   //查看是否移动成功
[[email protected] ~] yum-config-manager  --add-repo file:/ // repo / cos7dvd   //建立配置文件
[[email protected] ~] vim /etc/yum.repos.d/yum.repo   //修改配置文件
[yum]    # 仓库标识,随意起一个名
name=yum    # 仓库描述信息
baseurl=file:// /repo/cos7dvd    # 指定服务端位置
enabled=1    # 本文件是否生效   1代表生效
gpgcheck=0    # 是否检测红帽签名信息   0代表不检测
[[email protected] ~] yum repolist   #列出仓库信息

清理yum缓存数据

[[email protected] ~] yum  clean  all   // 清除缓存
[[email protected] ~] yum  repolis   // 列出仓库信息
# 为了提高检索数据,yum会在本机缓存数据
# 当软件源地址发生变化时,需要检索仓库时,需要清除缓存,才能生效

软件安装与查询

[[email protected] svr7 ~] yum -y install  httpd   //安装httpd
[[email protected] svr7 ~] yum -y install  sssd   //安装sssd
[[email protected] svr7 ~] yum -y install  bind-chroot   //安装bin-chroot
[[email protected] svr7 ~] yum -y install  maridb-server   //安装maridb-server

[[email protected] ~] yum list firefox   //查看firefox软件是否安装
已安装的软件包
firefox.x86_64     45.4.0-1.el7.centos     @ anaconda
[[email protected] svr7 ~] yum info firefox   //查看软件详细信息

[[email protected] svr7 ~] yum provides /usr/bin/hostname   //查看hostname指令由哪个软件包产生
[[email protected] ~] yum provides */guestmount   //模糊搜索哪个路径下有  /guestmount

卸载软件

[[email protected] ~]# yum remove httpd   //卸载软件
[[email protected] ~]# yum list httpd   //查看httpd还是否存在
[[email protected] ~]# yum -y reinstall httpd   //重新安装httpd服务

部署FTP服务

FTP通信解析

  • 基于C/S架构的文档下载/上传通信
  • 服务端:支持FTP协议的下载/上传资源提供程序
  • 客户端:与服务端通信实现文档下载/上传功能的控制程序

FTP控制连接使用的端口为21
FTP数据连接的建立
服务端主动:从20端口连接客户端
服务器被动:在随机端口等待客户端来连接

FTP用户

  • 匿名访问
    登录名为ftp或anonymous 密码任意
  • 验证访问
    直接使用linux服务器的系统用户,需要输入正确密码
    在高级应用中可以使用数据库中的虚拟用户访问

部署及访问FTP服务

[[email protected] ~] yum -y install vsftpd   //安装提供FTP服务的软件
[[email protected] ~] yum info vsftpd  #查看软件详细信息
[[email protected] ~] systemctl restart vsftpd   #重启服务
[[email protected] ~] systemctl enable vsftpd    #设置开机自启动
Created symlink from /etc/systemd/system/multi-user.target.wants/vsftpd.service to /usr/lib/systemd/system/vsftpd.service.
[[email protected] ~] firefox ftp://192.168.4.7   //测试访问
#  匿名用户显示为/var/ftp目录内容,本地系统用户显示该用户家目录的内容
[[email protected] ~] ls /var/ftp/   //查看目录是否存在
[[email protected] ~] touch /var/ftp/anon.txt   //目录下创建anon文档
[[email protected] ~] ls /var/ftp/   //查看文档是否创建成功
[[email protected] ~] firefox ftp://192.168.4.7   //访问ftp

[[email protected] ~] id xxx    //查询是否有xxx用户
[[email protected] ~] ls /home/xxx/   //查看xxx的家目录
[[email protected] ~] touch /home/xxx/xxx.txt   //在xxx用户家目录下创建文档
[[email protected] ~] ls /home/xxx/   //查看文档是否创建成功
[[email protected] ~] firefox ftp://xxx:[email protected]
#  格式  firefox ftp://用户名:密码@自己的IP地址

利用物理机访问FTP服务

  • 虚拟机跟物理机能够ping通
  • 选择VMNAT 8模式
[[email protected] ~] systemctl  stop  firewalld    //立即关闭防火墙
[[email protected] ~] systemctl  disable  firewalld   //永久关闭防火墙
Removed symlink /etc/systemd/system/dbus- org.fedoraproject.FirewallD1.service.
 Removed symlink /etc/systemd/system/basic.target.wants/firewalld.service.

[[email protected] ~] getenforce   //查看当前SELinux状态
[[email protected] ~] setenforce  0     //当前使SELinux失效
[[email protected] ~] vim  /etc/selinux/config  //开机禁用,下一次开机生效
SELINUX=disabled
# 修改第一个SELINUX

最后

最近时间太少,来不及挂图片,大家就将就一下看吧
这个呢纯属个人笔记的延伸
有什么不严谨不对的地方希望大家指出,好便及时更正
由于路径的双斜杠跟文本编辑的语法可能有些冲突,颜色上可能有所差异
这个适合有点linux基础的看,不会linux的话看起来会有些吃力

大体思路:挂载---搭建仓库---设置软件源---安装需要的软件包---卸载---搭建FTP---root用户测试访问FTP---普通用户访问FTP

以上是关于Linux中搭建YUM的主要内容,如果未能解决你的问题,请参考以下文章

Linux yum 使用手册,以及内网源搭建

linux下Yum搭建lamp网站架构

Linux中如何搭建本地yum源

Linux 用脚本编写搭建yum本地仓库

linux 中 yum 源本地的搭建 ----以及webftp服务器的搭建

Linux系统中搭建本地光盘yum源