补充第二讲密码破解问题
破解密码后exit卡死现象的解决办法:
Failed network
1.提前没有使bastion,workstation处于running。只需要start一下。
2.Ctrl+shift+t开新的标签页,ping servera 一定可以通,ssh root@servera 输入新密码登录,与在真机做题一样。
第6讲 YUM软件仓库技术
1.镜像文件的回环挂载(在物理机foundation上操作)
(1)下载镜像文件ftp://172.25.254.250/pub/rhel-8.0-x86_64-dvd.iso(下载到/root下)
(2)含义:把ISO文件释放成系统光盘
(3)回环挂载的用法
du -sh rhel-8.0-x86_64-dvd.iso 估算一个对象的大小
mkdir /mnt/iso
mount -o loop rhel-8.0-x86_64-dvd.iso /mnt/iso 以原子方式回环
查看系统安装光盘的全部内容:
方法一:文件夹中
cd /mnt/iso/BaseOS/Packages 基础软件包,1662个
cd /mnt/iso/AppStream/Packages 拓展应用程序包,4989个
注意:自己的笔记本上可以在foundation0上执行 cd /content/rhel8.0/x86_64/dvd/BaseOS/Packages和cd /content/rhel8.0/x86_64/dvd/AppStream/Packages测试
方法二:ll
方法三:df -Th查看映射/关联情况
/dev/loop镜像文件
du -sh /mnt/iso 成功
(4)卸载目录的方法
umount /mnt/iso
cd /mnt/iso
ll
(5)将镜像文件刻录成系统盘的方法
cdrecord /CentOS-7-x86_64-DVD-1511.iso
2.RPM软件包的使用技巧(在物理机foundation上操作)
注意:自己的笔记本上可以在foundation0上执行 cd /content/rhel8.0/x86_64/dvd/BaseOS/Packages和cd /content/rhel8.0/x86_64/dvd/AppStream/Packages测试,不需要回环挂在
Windows下的.exe文件
Linux下安装一个软件包需要得到.rpm文件
(1)如何查询指定软件包是否安装
rpm -q httpd
rpm -q cifs-utils
rpm -q vsftpd
未安装package httpd is not installed
安装cifts-utils-6.8-2.el8.x86_64
(2)如何删除指定软件包
rpm -e cifs-utils
rpm -e vsftpd
rpm -e httpd
(3)如何安装指定软件包(注意:保证在Packages目录下有需要安装的rpm包)
rpm -ivh cifs-utils-6.8-2.el8.x86_64.rpm
I:install安装 v:过程信息 h:hash百分比,安装进度
(在系统光盘挂载目标目录的BaseOS/Packages下有cifs-utils的rpm包)
rpm -ivh vsftpd* (在系统光盘挂载目标目录的AppStream/Packages下有vsftpd的rpm包)
问题:依赖性关系(rpm -e httpd)
Failed dependencies依赖性关系错误
rpm -e httpd
rpm -ivh httpd
YUM好处:自动解决在安装、删除等时候的依赖性关系问题,可以批处理。
3.YUM软件仓库的配置及使用(在物理机foundation上操作)
yellow dog updater,modified 黄狗
man yum
在RHEL8下yum等同于dnf命令,但dnf可以并行的安装软件,而yum不会
(1)回环挂载RHEL8系统镜像文件/mnt/iso
mount -o loop rhel-8.0-x86_64-dvd.iso /mnt/iso
du -sh /mnt/iso
(2)修改YUM软件仓库的配置文件
1.一定要将目录切换到YUM软件仓库的工作目录/etc/yum.repos.d/下才有效;mkdir bck备份目录 mv *.repo bck移入备份目录
2.工作目录下的配置文件必须以.repo结尾
3.文件名以字母开头
vim /etc/yum.repos.d/server.repo
录入五个参数
[base]顶格写//[]里写软件仓库的名称,一般使用base. 、
name=my rhel8 //name后写软件仓库的全称
baseurl=(file://)/mnt/iso/BaseOS //baseurl后写软件仓库的绝对路径 |
本地文件传输协议
enabled=1 //启用该软件仓库
gpgcheck=0
//不校验软件包(即不进行签名检查)
[local_app]
name=local iso app
baseurl=file:///mnt/iso/AppStream
enabled=1
gpgcheck=0
可以添加多组
注意:在笔记本测试时baseurl=file:///content/rhel8.0/x86_64/dvd/BaseOS;另一个baseurl=file:///content/rhel8.0/x86_64/dvd/AppStream
vim /etc/yum.conf
(3)验证软件仓库的方法
yum clean all //清空YUM缓存
yum makecache //建立缓存,此步可跳过
yum repolist(会看到1658/4672个包)重新计算
多组的结果
Redhat.repo里全是注释语句无影响
4.YUM常见命令使用技巧
(1)查询指定的软件包 软件仓库提供与否
yum search vsftpd
(2)查询指定软件的详细信息(可以判断该软件包是否安装)
yum info vsftpd
yum info autofs
yum info httpd
yum info httpd*
Installed Package(已安装)
Available Package(未安装)
rpm -e httpd(依赖性关系问题,无法删除)
(3)如何安装指定的软件包
yum install vsftpd
yum info vsftpd
yum -y install autofs 无需确认直接安装
(4)如何删除指定的软件包
yum -y erase httpd*
yum info httpd
(5)yum grouplist 以成组方式显示,与路径无关
(6)yum groupinstall 'Development Tools’安装
(7)Yum -y groupremove ‘Development Tools’删除(前提是位于Installed组)
(8)yum whatprovides /etc/passwd等效于yum provides /etc/passwd追根溯源,找文件来源于哪个包
!必考题:如何重构某一文件(字典文件)?先yum whatprovides 字典文件,然后-y 安装,既可重构该文件
(8)yum history清单
5.通过指定的HTTP或FTP服务器设置YUM软件仓库源(在虚拟机servera上操作)
ssh root@servera
cd /etc/yum.repos.d/
cat rhel_dvd.repo
[rhel-8.0-for-x86_64-baseos-rpms]
baseurl= http://content.example.com/rhel8.0/x86_64/dvd/BaseOS
远端服务器 已经做好的回环挂载
enabled = true/1
gpgcheck = false/0
name = Red Hat Enterprise Linux 8.0 BaseOS (dvd)
发现可以ping
[rhel-8.0-for-x86_64-appstream-rpms]
baseurl = http://content.example.com/rhel8.0/x86_64/dvd/AppStream
enabled = true
gpgcheck = false
name = Red Hat Enterprise Linux 8.0 AppStream (dvd)
装包,删包,查包同上
6.YUM软件仓库的命令配置方法(在物理机foundation上操作)
总结 yum-config-manager会将BaseOS和AppStream两个仓库源分别生成在两个文件中
yum whatprovides yum-config-manager 如果配置成功可以补齐
yum -y install dnf-utils-4.0.2.2-3.el8.noarch需手动录入工具
yum-config-manager --help
(1)yum-config-manager --disable ucf-upd //禁用该软件仓库,等效于enabled=0
yum repolist // 可以看到如下三段软件仓库ucf-rhel-8-for-x86_64-appstream-rpms,ucf-rhel-8-for-x86_64-baseos-rpms,ucf-upd
yum-config-manager --disable ucf-upd //禁用ucf-upd段软件仓库
yum repolist // 再次查看,只能看到两段软件仓库
(2)yum-config-manager --enable ucf-upd //启用该软件仓库,等效于enabled=1
cd /etc/yum.repos.d/
mkdir bck
mv *.repo bck/
yum repolist
(3)yum-config-manager --add-repo file:///content/ucf/
用该命令自动生成配置文件时,会把BaseOS和Appstream分别放置在两个文件里
//添加新的软件仓库,包括本地源与网络源 自动设置baseurl参数值
Vim打开构造的.repo文件内容:
少了gpgchack,要手动添加值为0
本地源测试:
ll /content/ucf/ //可以看到有Package包目录和repodata目录
yum-config-manager --add-repo file:///content/ucf/
yum repolist //可以看到content_ucf软件仓库(3个包)
cat content_ucf_.repo
[content_ucf_]
name=created by dnf config-manager from file:///content/ucf/
baseurl=file:///content/ucf/
enabled=1
网络源测试:
在浏览器中输入红帽8系统安装内容http://foundation0.ilt.example.com/rhel8.0/x86_64/dvd/BaseOS/可以先ping一下网址
yum-config-manager --add-repo
http://foundation0.ilt.example.com/rhel8.0/x86_64/dvd/BaseOS/
yum repolist //可以看到foundation0软件仓库(1660个包)
cat foundation0.ilt.example.com_rhel8.0_x86_64_dvd_BaseOS_.repo
[foundation0.ilt.example.com_rhel8.0_x86_64_dvd_BaseOS_]
name=created by dnf config-manager from http://foundation0.ilt.example.com/rhel8.0/x86_64/dvd/BaseOS/
baseurl=http://foundation0.ilt.example.com/rhel8.0/x86_64/dvd/BaseOS/
enabled=1
手动添加gpgcheck=0
网络源测试:
在浏览器中输入http://foundation0.ilt.example.com/rhel8.0/x86_64/dvd/AppStream/
yum-config-manager --add-repo http://foundation0.ilt.example.com/rhel8.0/x86_64/dvd/AppStream/
yum repolist //可以看到foundation0软件仓库(4672个包)
cat foundation0.ilt.example.com_rhel8.0_x86_64_dvd_AppStream_.repo
[foundation0.ilt.example.com_rhel8.0_x86_64_dvd_AppStream_]
name=created by dnf config-manager from http://foundation0.ilt.example.com/rhel8.0/x86_64/dvd/AppStream/
baseurl=http://foundation0.ilt.example.com/rhel8.0/x86_64/dvd/AppStream/
enabled=1
yum -y erase autofs
yum -y install autofs //Error: GPG check FAILED,来源于BaseOS仓库
GPG检测失败,解决方法:
方法一:在配置文件中设置不进行gpgcheck签名检查(即将gpgcheck=0)
vim foundation0.ilt.example.com_rhel8.0_x86_64_dvd_BaseOS_.repo
加入gpgcheck=0
再次安装yum -y install autofs,OK
方法二:导入GPG公钥
先将环境恢复,即去掉配置文件中的gpgcheck=0;删除软件包autofs
yum -y install autofs //Error: GPG check FAILED
在浏览器中输入http://foundation0.ilt.example.com/rhel8.0/x86_64/dvd/RPM-GPG-KEY-redhat-release,可以看到GPG公钥内容
rpm --import /content/rhel8.0/x86_64/dvd/RPM-GPG-KEY-redhat-release
再次安装yum -y install autofs,OK
方法三:将GPG公钥(对应GPG签名信息)写入repo文件中
先将环境恢复,即去掉GPG公钥
rpm -qa | grep pub //查看系统中的公钥信息,主要有publicsuffix-list-dafsa-20180723-1.el8.noarch,gpg-pubkey-d4082792-5b32db75,gpg-pubkey-530679ee-4f6b7813,gpg-pubkey-fd431d51-4ae0493b
rpm -e gpg-pubkey-d4082792-5b32db75 gpg-pubkey-530679ee-4f6b7813 gpg-pubkey-fd431d51-4ae0493b //删除GPG公钥,由于不知道是哪个,所以把后三个公钥都删除了
yum -y erase autofs //删除autofs
yum -y install autofs //Error: GPG check FAILED
vim foundation0.ilt.example.com_rhel8.0_x86_64_dvd_BaseOS_.repo
加入gpgkey=http://foundation0.ilt.example.com/rhel8.0/x86_64/dvd/RPM-GPG-KEY-redhat-release
再次安装yum -y install autofs,OK
7.通过真实的CentOS8服务器作为YUM软件仓库源
保证Linux系统是在连接外网的前提下做此实验
在百度中搜索华为镜像,即华为开源镜像站https://mirrors.huaweicloud.com/,点击CentOS,点击继续使用,选择CentOS版本为8
在Linux终端窗口中运行下方的命令wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.huaweicloud.com/repository/conf/CentOS-8-anon.repo,然后拷贝到/etc/yum.repos.d/下(原来的配置文件提前做好备份)
yum clean all
yum repolist
yum -y install mariadb-server
8.YUM软件仓库源常见错误的解决方法(yum.PID)
解决方法:按照提示信息将对应文件/run/yum.pid删除即可。