NSD ADMIN DAY05
- 往日回顾:发现光、靠近光、变成光!
- 环境准备
- RPM软件包简介
- RPM包的一般安装位置(分散)
- 查询软件信息
- 软件包的依赖关系
- Yum仓库构建(光来啦!)
- 命令补充
- 案例:查询已安装的软件信息
- 案例:查询待安装的.rpm包
- 案例:RPM软件的安装和卸载
- 案例:配置Yum.d仓库及客户端及验证
- 课后基础习题:
1 往日回顾:发现光、靠近光、变成光!
1.1 将/root/backup.tar.gz压缩包,释放到/opt目录下请写出该命令
tar -xf /root/backup.tar.gz -C /opt
1.2 利用find查找处/etc目录下,所有以".conf"结尾的数据,请写出该命令
find /etc -name "*.conf"
1.3 利用find查找处/etc目录下,只要是目录即可,请写出该命令
find /etc -type d
1.4 如何将/boot目录大于10M的数据,快速拷贝到/opt目录下,请写出该命令
find /boot -size +10M -exec cp {} /opt \;
1.5 统计/var目录三个月之前数据的个数,如何操作?
find /var -mtime +90
1.6 显示/etc/login.txt文件有效信息,请写出该命令
grep -v ^# /etc/login.txt | grep -v ^$
1.7 vim编辑器,如何实现,复制光标所在的一行?
命令模式 yy
1.8 vim编辑器,将全文的man替换为MAN如何操作?
末行模式 :%s/man/MAN/g
1.9 vim编辑器中如何开启行号功能?
末行模式 :set nu
1.10 将"hello world"快速写入到,/opt/cbd.txt文件的最后一行,如何操作?
echo hello world >> /opt/cbd.txt
1.11 显示ifconfig命令输出的前两行,如何操作?
ifconfig | head -2
2 环境准备
- 方案一:KVM虚拟机(如图-1)
图-1
- 方案二:VMware虚拟机(如图-2、图-3)
图-2
图-3
- [root@localhost ~]# mount /dev/cdrom /mnt
- mount: /dev/sr0 写保护,将以只读方式挂载
- [root@localhost ~]# ls /mnt
3 RPM软件(Redhat,suse)
RPM包文件名特征
软件名 -版本信息. 操作系统. 硬件架构. rpm
firefox -91.9.0-1. el8_5. x86_64. rpm
软件名:firefox
软件包名:firefox-91.9.0-1.el8_5.x86_64.rpm
(软件包高于系统 容易有bug,尽量贴近系统)
下载软件包的网站:
4 RPM包的一般安装位置(分散安装)(Linux中动用命令直接安装,m没有下一步)
普通执行程序:/usr/bin/ 、/bin/
服务器程序、管理工具:/usr/sbin/ 、/sbin/
配置文件 :/etc/、/etc/软件名/ 大多数的配置文件大多数在/etc/下
日志文件 :/var/log/、/var/log/软件名/
程序文档、man帮助手册页 :/usr/share/doc/ 、/usr/share/man/
5 查询软件信息
查询是否安装此软件(参数是软件名)
- [root@localhost /]# rpm -qa #当前系统中所有已安装的软件包
- [root@localhost /]# rpm -q firefox #查看firefox是否安装
- firefox-52.7.0-1.el7.centos.x86_64
- [root@localhost /]# rpm -q httpd #httpd构建Web服务器软件
- 未安装软件包 httpd
- [root@localhost /]# rpm -q bash
- bash-4.2.46-30.el7.x86_64
- [root@localhost /]# rpm -qa | grep firefox(包容性更强,比-q更好筛选)
- [root@localhost /]# rpm -qa | wc -l #显示安装个数
查询软件信息(参数是软件名)
- [root@localhost /]# rpm -qi firefox #查询软件信息
- [root@localhost /]# rpm -ql firefox #查询软件当初安装了哪些内容(安装清单)
- [root@localhost /]# rpm -ql firefox | less
- [root@localhost /]# rpm -ql firefox | wc -l #统计行数
- [root@localhost /]# rpm -qi bash #查询软件信息
- [root@localhost /]# rpm -ql bash #查询软件安装了哪些内容(安装清单)
- [root@localhost /]# rpm -ql bash | less
- [root@localhost /]# rpm -ql bash | wc -l #统计行数
查询某个目录/文件是哪个RPM包带来的
格式:rpm -qf [文件路径]…
即使目标文件被删除,也可以查询
- [root@localhost ~]# which vim #which 查询命令对应的程序文件
- /usr/bin/vim
- [root@localhost ~]# rpm -qf /usr/bin/vim
- vim-enhanced-8.0.1763-16.el8_5.13.x86_64
- [root@localhost ~]# rpm -q vim-enhanced
- vim-enhanced-8.0.1763-16.el8_5.13.x86_64
- [root@localhost ~]# rpm -qf /usr/sbin/poweroff
- [root@localhost ~]# rpm -qf /usr/sbin/ifconfig
查询软件包(参数软件包名)
qpl:产生哪些东西(安装清单) qpi:查看软件信息
- [root@localhost /]# rpm -q vsftpd #查询vsftpd软件是否安装
- 未安装软件包 vsftpd
- [root@localhost /]# ls /mnt/AppStream/Packages/v/vsftpd-3.0.3-35.el8.x86_64.rpm(tab键自动生成)(查看包下信息)
- /mnt/AppStream/Packages/v/vsftpd-3.0.3-35.el8.x86_64.rpm
- 查询软件包的安装清单:
- [root@localhost /]# rpm -qpl /mnt/AppStream/Packages/v/vsftpd-3.0.3-35.el8.x86_64.rpm
- 查询软件包信息
- [root@localhost /]# rpm -qpi /mnt/AppStream/Packages/v/vsftpd-3.0.3-35.el8.x86_64.rpm
- 注意:
- 红帽签名:加密手段放在软件包当中 NOKEY没有红帽签名,
- 上千个红帽软件包签名信息
导入红帽签名信息(了解)
- [root@localhost /]# rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-rockyofficial
- 查询软件包信息(没有警告输出)
- [root@localhost /]# rpm -qpi /mnt/AppStream/Packages/v/vsftpd-3.0.3-35.el8.x86_64.rpm
6 软件包的依赖关系
rpm命令方式:不能自动解决依赖关系
yum命令方式:能自动解决依赖关系
7 Yum仓库构建(光来啦!)基于软件仓库
作用:自动解决依赖关系安装软件
服务端(本机): 1.众多的软件 2.仓库数据文件(repodata)
Appstream是光盘里面的文件,固定名称因为光盘内容是只读的 、mnt是不固定的
本地Yum仓库:服务端需要有光盘内容即可
客户端(本机):指定服务端位置
仓库配置文件:/etc/yum.repos.d/*.repo
错误的文件会影响正确的文件
yum命令执行流程:
yum命令--->读取/etc/yum.repos.d/*.repo配置文件内容--->从而找到仓库的具体位置
(yum.r后可加tab键)(错误文件会影响正确文件)
发现有错误(文件后缀名有错误可以移动到新夹子):
客户端文件配置内容:
[源名称] :自定义名称,具有唯一性
name:本软件源的描述字串
baseurl:指定YUM服务端的URL地址
enabled:是否启用此频道
gpgcheck:是否验证待安装的RPM包
gpgkey:用于RPM软件包验证的密钥文件
完整示例:
- [root@localhost /]# vim /etc/yum.repos.d/mydvd.repo #(显示新目录是正确的 新文件是不对的)
- [xixi] # 必须是中括号 括号内名字任意字母数字组成
- name=xixi #name=代表描述的信息 eg:name=rocky8.6
- baseurl=file:///mnt/AppStream #代表仓库就在自己本机,要保证打开数据包就能看到两要素
- enabled=1 #代表仓库是否正常使用 1正常
- gpgcheck=1 #装包要不要检查红帽信息 等于1要多写下行话 建议等于0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-rockyofficial- [root@localhost/]#cat /etc/yum.repos.d/haha.
- [haha]
- name=xixi
- baseurl=file:///mnt/BaseOS
- enabled=1
- gpgcheck=1
- gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-rockyofficial
书写仓库配置文件:
- [root@localhost /]# vim /etc/yum.repos.d/haha.repo
- [xixi] #仓库的标识
- name=xixi #仓库描述信息,可以省略
- baseurl=file:///mnt/AppStream #指定仓库位置file://表示本地为服务端
- enabled=1 #本文件启用,可以省略
- gpgcheck=0 #不检测红帽签名信息
- [haha] #仓库的标识,不能重复
- name=xixi #仓库描述信息,可以省略
- baseurl=file:///mnt/BaseOS #指定仓库位置file://表示本地为服务端
- enabled=1 #本文件启用,可以省略
- gpgcheck=0 #不检测红帽签名信息
- [root@localhost /]# yum repoinfo #列出仓库信息
- [root@localhost /]# yum -y install httpd #安装软件包测试
- [root@localhost /]# rpm -q httpd #查询是否安装成功
- [root@localhost /]# mkdir /mydvd
- [root@localhost /]# mount /dev/cdrom /mydvd #挂载光驱设备
- [root@localhost /]# ls /mydvd
- [root@localhost /]# rm -rf /etc/yum.repos.d/*
- [root@localhost /]# vim /etc/yum.repos.d/haha.repo
- [xixi]
- name=xixi
- baseurl=file:///mydvd/AppStream
- enabled=1
- gpgcheck=0
- [haha] #仓库的标识,不能重复
- name=xixi #仓库描述信息,可以省略
- baseurl=file:///mydvd/BaseOS #指定仓库位置file://表示本地为服务端
- enabled=1 #本文件启用,可以省略
- gpgcheck=0 #不检测红帽签名信息
- [root@localhost /]# yum repoinfo #列出仓库信息
- [root@localhost /]# yum -y install mariadb-server #安装软件包测试
- [root@localhost /]# rpm -q mariadb-server #查询是否安装成功
总结:本地Yum仓库构建方法
1.显示光盘的内容,挂载光驱设备mount /dev/cdrom /mnt
2.书写仓库配置文件,指定仓库位置/etc/yum.repos.d/*.repo
3.执行流程:
yum命令--->/etc/yum.repos.d/*.repo--->baseurl=file:///mnt/AppStream
yum命令--->/etc/yum.repos.d/*.repo--->baseurl=file:///mnt/BaseOS3
总结:本地Yum仓库排除错误
1.没有挂载光驱设备
2./etc/yum.repos.d目录下的仓库配置文件内容写错
3./etc/yum.repos.d目录下,错误的配置文件影响
安装软件
- [root@localhost ~]# yum -y install httpd
- [root@localhost ~]# rpm -q httpd #检测是否安装成功
- [root@localhost ~]# yum -y install bind-chroot
- [root@localhost ~]# rpm -q bind-chroot
- [root@localhost ~]# yum -y install sssd
- [root@localhost ~]# rpm -q sssd
- [root@localhost ~]# yum -y install gcc
- [root@localhost ~]# rpm -q gcc
卸载(remove)软件(建议不要使用-y选项)
- [root@localhost ~]# yum remove gcc
- [root@localhost ~]# yum remove httpd
- [root@localhost ~]# rpm -q gcc
- [root@localhost ~]# rpm -q httpd
Yum仓库的查询
- [root@localhost /]# yum list ftp #查询仓库是否有ftp软件
- 可安装的软件包 #表示当前系统没有安装该软件
- ftp.x86_64 0.17-67.el7 nsd20
- [root@localhost /]# yum list httpd
- [root@localhost /]# yum search ftp #包含ftp就匹配
- [root@localhost /]# yum provides /usr/bin/hostname (pro+tab键)
- [root@localhost /]# yum provides /etc/passwd #仓库中那个软件包产生该文件(比rpm -qf 【只能查已经装过的】更加全面)
- [root@localhost /]# yum provides "*/guestmount" #查询仓库中那个软件可以在任意路径下产生该程序
- [root@localhost /]# yum -y install libguestfs-tools-c
- [root@localhost /]# guestmount --help #查看帮助信息
搭建yum总过程:
删除/usr/bin/zip程序,然后通过yum工具进行恢复
- [root@svr1 ~]# rm -rf /usr/bin/zip
- [root@svr1 ~]# ls /usr/bin/zip
- ls: 无法访问/usr/bin/zip: 没有那个文件或目录
- [root@svr1 ~]# yum provides /usr/bin/zip #查询仓库中那个软件,产生了此程序
- [root@svr1 ~]# yum -y reinstall zip #覆盖安装
- [root@svr1 ~]# ls /usr/bin/zip
- /usr/bin/zip
清空缓存(了解)
执行流程: yum命令--->/etc/yum.repos.d/*.repo--->baseurl=file:///mnt
- [root@localhost ~]# yum clean all #清空Yum的缓存
- [root@localhost ~]# yum repoinfo #列出仓库信息
8 命令补充
获取命令帮助
- 方式一:命令 --help
- [root@localhost ~]# cat --help
- [root@localhost ~]# yum --help
- 方式二:man 命令
- [root@localhost ~]# man cat #按q退出
- [root@localhost ~]# man passwd #显示passwd命令帮助
- [root@localhost ~]# man 5 passwd
- 数字5表示帮助的类型,表示配置文件类型
历史命令
管理/调用曾经执行过的命令
history:查看历史命令列表
history -c:清空历史命令
history -w:记录历史命令为空的状态
!n:执行命令历史中的第n条命令
!str:执行最近一次以str开头的历史命令
- [root@svr7 ~]# vim /etc/profile
- HISTSIZE=1000 #默认记录1000条
- [root@localhost ~]# history #显示历史命令列表
- [root@localhost ~]# history -c #清空历史命令
- [root@localhost ~]# history -w #记住历史命令为空
- [root@localhost ~]# history
- [root@localhost ~]# cat /etc/redhat-release
- [root@localhost ~]# ls /root
- [root@localhost ~]# history
- [root@localhost ~]# !cat #指定最近一条以cat开头的历史命令
- [root@localhost ~]# !ls #指定最近一条以ls开头的历史命令
两段命令达到的效果一致:
date,查看/调整系统日期时间
- [root@localhost /]# date
- [root@localhost /]# date -s "2008-9-6 11:17:11" #修改系统时间
- [root@localhost /]# date
- [root@localhost /]# date -s "2023-02-21 15:55:11"
- [root@localhost /]# date
date单独显示时间
- [root@localhost ~]# date +%Y #显示年
- [root@localhost ~]# date +%m #显示月
- [root@localhost ~]# date +%d #显示日期
- [root@localhost ~]# date +%H #显示时
- [root@localhost ~]# date +%M #显示分
- [root@localhost ~]# date +%S #显示秒
- [root@localhost ~]# date +%F #显示年-月-日
- [root@localhost ~]# date +%T #显示时:分:秒
bc计算器
du,统计目录占用硬盘的空间
-s:只统计每个参数所占用的总空间大小(只统计目录本身)
-h:提供易读容量单位(K、M等)
- [root@localhost ~]# du -sh /root
- [root@localhost ~]# du -sh /etc
- [root@localhost ~]# du -sh /boot
- [root@localhost ~]# du -sh /
制作链接文件(制作符号链接)(制作快捷方式)
方式一:软链接
格式:ln -s /路径/源数据 /路径/快捷方式的名称 #软链接
- [root@localhost /]# ls /etc/hosts
- [root@localhost /]# ln -s /etc/hosts /hs
- [root@localhost /]# ls /
- [root@localhost /]# ls -l /hs
- [root@localhost /]# ls /opt
- [root@localhost /]# ln -s /opt /haxi
- [root@localhost /]# ls -l /haxi #查看快捷方式详细属性
- [root@localhost /]# ls -l /haxi/ #查看源目录内容详细数据
软链接优势:可以针对目录与文件制作快捷方式,支持跨分区
软链接缺点:源数据消失,快捷方式失效
方式二:硬链接
格式:ln /路径/源数据 /路径/快捷方式的名称 #硬链接
硬链接优势:源数据消失,快捷方式仍然有效
硬链接缺点:只能针对文件制作快捷方式,不支持支持跨分区
- [root@A ~]# rm -rf /opt/*
- [root@A ~]# echo 123 > /opt/A.txt
- [root@A ~]# ln -s /opt/A.txt /opt/B.txt #软链接
- [root@A ~]# ls /opt/
- [root@A ~]# ln /opt/A.txt /opt/C.txt #硬链接(没有-s)
- [root@A ~]# ls /opt/
- [root@A ~]# cat /opt/B.txt
- [root@A ~]# cat /opt/C.txt
- [root@A ~]# ls -i /opt #查看硬盘存储i节点编号
- [root@A ~]# rm -rf /opt/A.txt
- [root@A ~]# ls /opt/
- [root@A ~]# cat /opt/B.txt #软链接失效
- cat: /opt/B.txt: 没有那个文件或目录
- [root@A ~]# cat /opt/C.txt #硬链接仍然有效
- 123
zip归档工具,跨平台(Windows与Linux)
- 归档+压缩操作: zip [-r] 备份文件.zip 被归档的文档...
- [-r]:被归档的数据有目录,必须加上此选项
- [root@localhost /]# ls /usr/bin/zip
- [root@localhost /]# zip -r /opt/abc.zip /etc/passwd /home
- [root@localhost /]# ls /opt/
释放归档+解压操作: unzip 备份文件.zip [-d 目标文件夹]
- [root@localhost /]# unzip -l /opt/abc.zip #查看压缩包的内容
- [root@localhost /]# mkdir /nsd20
- [root@localhost /]# unzip /opt/abc.zip -d /nsd20
- [root@localhost /]# ls /nsd20
- [root@localhost /]# ls /nsd20/etc
- [root@localhost /]# ls /nsd20/home
9 案例:查询已安装的软件信息
9.1 问题
- 列出当前主机已安装的所有RPM软件
- 查看firefox软件包的安装清单
- 查询ifconfig命令程序是安装哪个软件包后产生的
- 查看firefox软件包的用途
9.2 方案
查询所有已安装的rpm包,可以利用命令rpm -qa。
查询一个软件安装清单,可以利用命令rpm -ql 软件名。
查询一个文件是由哪个软件包安装后产生,可以利用命令rpm -qf 文件绝对路径。本题中首先要找到,ifconfig命令的可执行程序在哪里,可以利用which命令。
查看软件的用途,可以利用命令rpm -qi 软件名。
9.3 步骤
实现此案例需要按照如下步骤进行。
步骤一:列出当前主机已安装的所有RPM软件
命令操作如下所示:
- [root@localhost ~]# rpm -qa
步骤二:查看firefox软件包的安装清单
命令操作如下所示:
- [root@localhost ~]# rpm -ql firefox
步骤三:查询ifconfig命令程序是安装哪个软件包后产生的
命令操作如下所示:
- [root@localhost ~]# which ifconfig #查询命令所对应的程序
- /sbin/ifconfig
- [root@localhost ~]# rpm -qf /sbin/ifconfig
- net-tools-2.0-0.52.20160912git.el8.x86_64
- [root@localhost ~]#
步骤四:查看firefox软件包的用途
命令操作如下所示:
- [root@localhost ~]# rpm -qi firefox
- Name : firefox
- Version : 91.9.0
- Release : 1.el8_5
- Architecture: x86_64
- Install Date: 2023年03月01日 星期三 09时37分59秒
- Group : Unspecified
- Size : 274681709
- License : MPLv1.1 or GPLv2+ or LGPLv2+
- Signature : RSA/SHA256, 2022年05月04日 星期三 14时37分51秒, Key ID 15af5dac6d745a60
- Source RPM : firefox-91.9.0-1.el8_5.src.rpm
- Build Date : 2022年05月04日 星期三 13时16分20秒
- Build Host : ord1-prod-x86build001.svc.aws.rockylinux.org
- Relocations : (not relocatable)
- Packager : infrastructure@rockylinux.org
- Vendor : Rocky
- URL : https://www.mozilla.org/firefox/
- Summary : Mozilla Firefox Web browser
- Description :
- Mozilla Firefox is an open-source web browser, designed for standards
- compliance, performance and portability.
10 案例:查询待安装的.rpm包
10.1 问题
- 查询光盘中的 vsftpd软件包的用途、安装清单
- 查询光盘中的 bind-chroot 软件包的用途、安装清单
10.2 方案
注意在查询未安装的.rpm包信息时,提供的命令参数应该是准确的包文件路径,仅指定软件名是不行的。指定文件路径时,多利用Tab键补全。提前将系统光盘挂载到/media目录,以便使用相关包文件。
10.3 步骤
实现此案例需要按照如下步骤进行。
步骤一:查询光盘中的 vsftpd 软件包的用途、安装清单
首先将光盘设备手动挂载到/media目录,进行查询操作。
命令操作如下所示:
- [root@localhost ~]# mount /dev/cdrom /media/
- mount: /media: WARNING: device write-protected, mounted read-only.
- [root@localhost /]# rpm -qpi /media/AppStream/Packages/v/vsftpd-3.0.3-35.el8.x86_64.rpm
- ……
- [root@localhost /]# rpm -qpl /media/AppStream/Packages/v/vsftpd-3.0.3-35.el8.x86_64.rpm
- ……
步骤二:查询光盘中的 bind-chroot 软件包的用途、安装清单
命令操作如下所示:
- [root@localhost /]# rpm -qpi /media/AppStream/Packages/b/bind-chroot-9.11.36-3.el8.x86_64.rpm
- [root@localhost /]# rpm -qpl /media/AppStream/Packages/b/bind-chroot-9.11.36-3.el8.x86_64.rpm
11 案例:RPM软件的安装和卸载
11.1 问题
- 找出vim、vi是由哪两个包产生的
- 删除vim、vi命令程序
- 修复vim、vi
- 安装bind-chroot包,体验Linux依赖关系
11.2 方案
本题的思路是,首相通过which命令查找到vim、vi命令可执行程序所在位置,在通过“rpm –qf 文件绝对路径”命令查看该可执行程序,是由那个包产生的。删除该可执行程序后,再将软件包安装重新产生即可。但在安装时需注意,系统会提示改程序已经安装,需加上“--force”选项强制安装。
11.3 步骤
实现此案例需要按照如下步骤进行。
步骤一:找出vim、vi是由那两个包产生的
命令操作如下所示:
- [root@localhost ~]# which vi vim
- /usr/bin/vi
- /usr/bin/vim
- [root@localhost ~]# rpm -qf /usr/bin/vi
- vim-minimal-8.0.1763-16.el8_5.13.x86_64
- [root@localhost ~]# rpm -qf /usr/bin/vim
- vim-enhanced-8.0.1763-16.el8_5.13.x86_64
步骤二:删除vim、vi命令程序
命令操作如下所示:
- [root@localhost ~]# rm -rf /usr/bin/vi /usr/bin/vim
- [root@localhost ~]#
步骤三:修复vim、vi
首先将光盘设备手动挂载到/media目录,进行修复操作。
命令操作如下所示:
- [root@localhost ~]# mount /dev/cdrom /media/
- mount: block device /dev/sr0 is write-protected, mounting read-only
- [root@localhost ~]# rpm -ivh --force /media/BaseOS/Packages/v/vim-minimal-8.0.1763-16.el8_5.13.x86_64.rpm
- [root@localhost ~]# rpm -ivh --force /media/AppStream/Packages/v/vim-enhanced-8.0.1763-16.el8_5.13.x86_64.rpm
- ……
- [root@localhost ~]#
步骤四:安装bind-chroot包,体验Linux依赖关系
命令操作如下所示:
- [root@localhost ~]# cd /media/AppStream/Packages/b
- [root@svr5 Packages]# rpm -ivh bind-chroot-9.11.36-3.el8.x86_64.rpm
- error: Failed dependencies:
- ……
- [root@svr5 Packages]# rpm -ivh bind-9.11.36-3.el8.x86_64.rpm
- Preparing... ########################################### [100%]
- 1:bind ########################################### [100%]
- [root@svr5 Packages]# rpm -ivh bind-chroot-9.11.36-3.el8.x86_64.rpm
- Preparing... ########################################### [100%]
- 1:bind-chroot ########################################### [100%]
12 案例:配置Yum仓库及客户端及验证
12.1 问题
- 将光盘挂载到/dvd,搭建本地Yum
- 将本机设置为客户端,进行Yum验证
- 查询Yum库中是否有firefox包
- 使用yum命令安装bind包
- 利用Yum安装bind
- 利用Yum卸载bind
- 利用yum search查询与httpd相关的包
- 利用yum info查询firefox包描述信息
12.2 步骤
实现此案例需要按照如下步骤进行。
步骤一:搭建一个本地Yum,将光盘手动挂载到/dvd
命令操作如下所示:
- [root@localhost ~]# mkdir /dvd
- [root@localhost ~]# ls /dvd
- [root@localhost ~]# mount /dev/cdrom /dvd/
- mount: /dev/sr0 写保护,将以只读方式挂载
- [root@localhost ~]# ls /dvd/
步骤二:将本地设置为客户端,进行Yum验证
Yum客户端需编辑配置文件,命令操作如下所示:
- [root@localhost ~]# ls /etc/yum.repos.d/
- [root@localhost ~]# mkdir /etc/yum.repos.d/repo
- [root@localhost ~]# mv /etc/yum.repos.d/*.repo /etc/yum.repos.d/repo
- [root@localhost ~]# ls /etc/yum.repos.d/
- [root@localhost ~]# vim /etc/yum.repos.d/dvd.repo
- [App] #仓库标识,可以任意
- name=App #仓库的描述信息,可以任意
- baseurl=file:///dvd/AppStream #指定服务端位置,file://代表本地为服务端
- enabled=1 #是否启用本文件
- gpgcheck=0 #是否检测红帽签名信息
- [Base] #仓库标识,可以任意
- name=Base #仓库的描述信息,可以任意
- baseurl=file:///dvd/BaseOS #指定服务端位置,file://代表本地为服务端
- enabled=1 #是否启用本文件
- gpgcheck=0 #是否检测红帽签名信息
- [root@localhost ~]# yum repoinfo -v #列出仓库信息
- [root@localhost ~]# yum repoinfo #列出仓库信息
步骤三:查询yum库中是否有firefox包
命令操作如下所示:
- [root@localhost /]# yum list | grep firefox
步骤四:利用yum安装bind包
命令操作如下所示:
- [root@localhost /]# yum -y install bind
- ……
步骤二:利用Yum卸载bind
命令操作如下所示:
- [root@localhost /]# yum -y remove bind
- ……
步骤四:利用yum search查询与httpd相关的包
命令操作如下所示:
- [root@localhost /]# yum search httpd
- ……
步骤四:利用yum info查询firefox包描述信息
命令操作如下所示:
- [root@localhost /]# yum info firefox
- ……
13 课后基础习题:
思路:yum----仓库配置文件---仓库位置
案例:Yum软件仓库管理
1. 将光驱设备挂载到/iso/linux目录,以/iso/linux目录作为其访问点
2. 利用/iso/linux目录提供光盘内容作为软件源,构建本地Yum仓库
3. 安装软件包httpd
4.删除/usr/bin/zip程序,然后通过yum工具进行恢复
案例:虚拟机上操作,查找并提取文件内容
1. 查看内核版本,将显示结果重定向到/root/version.txt
- [root@localhost ~]# uname -r #查看内核版本命令
- 3.10.0-862.el7.x86_64
- [root@localhost ~]# uname -r > /root/version.txt
- [root@localhost ~]# cat /root/version.txt
2. 查看红帽系统版本,将显示结果追加到/root/version.txt
- [root@localhost ~]# cat /etc/redhat-release
- [root@localhost ~]# cat /etc/redhat-release >> /root/version.txt
- [root@localhost ~]# cat /root/version.txt
3. 查看主机名将显示结果追加到/root/version.txt
- [root@localhost ~]# hostname
- localhost.localdomain
- [root@localhost ~]# hostname >> /root/version.txt
- [root@localhost ~]# cat /root/version.txt
4. 将/etc/fstab文件中以UUID开头的信息,写入到/root/fstab.txt
- [root@localhost ~]# grep ^UUID /etc/fstab
- UUID=ae2e2523-b5df-4d9c-8d39-c07166ad2c71 /boot xfs defaults 0 0
- [root@localhost ~]# grep ^UUID /etc/fstab > /root/fstab.txt
- [root@localhost ~]# cat /root/fstab.txt
5. 提取/etc/passwd以bash结尾的行,将其信息写入/opt/pass.txt
- [root@localhost ~]# grep bash$ /etc/passwd
- [root@localhost ~]# grep bash$ /etc/passwd > /opt/pass.txt
- [root@localhost ~]# cat /opt/pass.txt
6. 复制/etc/login.defs文件到当前目录下,改名为init.txt
- [root@localhost ~]# pwd
- /root
- [root@localhost ~]# cp /etc/login.defs init.txt
- [root@localhost ~]# ls
7. 提取init.txt文件里的有效配置(去除以#号开头与去除空行),保存为init2.txt
- [root@localhost ~]# grep -v ^# init.txt
- [root@localhost ~]# grep -v ^# init.txt | grep -v ^$
- [root@localhost ~]# grep -v ^# init.txt | grep -v ^$ > init2.txt
- [root@localhost ~]# cat init2.txt
案例:实用的技巧
1.利用du命令统计/root目录大小
2.查看系统时间,以及只显示“年-月-日”如何实现?
3.将/etc/fstab文件制作快捷方式(软连接),放在/tmp目录快捷方式的名为fb