rpm 包的安装(只能在本地的包里找是否有tree包,若没有就无法安装)
httpd-2.4.6-67.el7.centos.x86_64.rpm
| | | | | | |
| | | | | | |___.rpm-------软件包后缀名,一般为 *.rpm 或 *.src.rpm
| | | | | |________.x86_64----适用硬件平台,一般为 x86_64、i386 等
| | | | |_______________.centos----适用操作系统,noarch为通用版本
| | | |_____________________.el7-------发行商版本号,el5为CentOS5与HREL5以下使用
| | |________________________.67--------编译版本号,表示第几次编译
| |_____________________________.2.4.6-----软件版本号,分别为:主版本号.次版本号.修正号
|___________________________________.httpd-----软件包名称
MD5校验
[root@kvm-docker ~]# md5sum anaconda-ks.cfg
1b32a62f24153b2440a2ac18ecc07fb2 anaconda-ks.cfg 校验该文件是否完整
管理
rpm -ivh tree 安装tree包
rpm -qa 软件包名 //查询系统已安装的软件
rpm -qi 查询已安装软件包的信息
rpm -ql 软件包名 // 列出所有的已安装文件
rpm -qc 软件包名 // 列出配置文档
rpm -V 校验已安装到系统中的文件的改动情况{
5 md5校验值
S 文件大小
L 链接文件
T 文件的创建时间
D 设备文件
U 文件的所属主
G 文件的所属组
M 文件的权限
}
Ps:当不小心删除了系统里的一个重要的配置文档,该怎么找回来
首先, 查询这个文件是哪个软件包安装的
rpm -qf 绝对路径的完整文件名
rpm2cpio 软件包名.rpm | cpio -idv ./要提取的文件路径
比如 /usr/bin/tree 命令如下:
rpm2cpio tree-1.6.0-10.el7.x86_64.rpm |cpio -idv ./usr/bin/tree
最后将该目录下的tree复制到/usr/bin/tree
yum 通过配置文件的设置,可以把从远程仓库安装的软件保存到本地
yum localinstall tree1.2.3x86_64.rpm #yum本地安装,但是会找依赖关系
yum provides tree 显示谁提供的tree包
yum list 显示安装的列表
[main]
cachedir=/var/cache/yum/$basearch/$releasever
keepcache=0
cachedir 设置缓存软件到本地的路径
keepcache 设置是否保存缓存的软件包,0 不保存, 1 保存
yum配置文件
ls /etc/yum.repos.d/
CentOS-Base.repo CentOS-fasttrack.repo CentOS-Vault.repo
CentOS-CR.repo CentOS-Media.repo docker-ce.repo
CentOS-Debuginfo.repo CentOS-Sources.repo
.repo为后缀的文件为仓库地址等信息
基本用法:
# 安装软件
[root@localhost ~]# yum -y install httpd # -y表示后面的交互式询问默认选为yes
# 更新所有软件(包括内核)
[root@localhost ~]# yum update
# 升级指定软件
[root@localhost ~]# yum update httpd
# 列出所有可更新的软件
[root@localhost ~]# yum check-update
# 列出所有可安装的软件清单
[root@localhost ~]# yum list
# 查找软件包
[root@localhost ~]# yum search httpd
# 删除软件包
[root@localhost ~]# yum remove httpd
# 清理yum的缓存
[root@localhost ~]# yum clean all
# 生成yum的缓存
[root@localhost ~]# yum makecache
查询 pstree 文件由那个软件包安装
yum provides pstree
实例
自建 YUM 源(仓库)
基于光盘镜像的 YUM 源
1.将光盘镜像挂载到某目录下
mount /dev/cdrom /iso/
2.把光盘镜像里的Packages复制到其他目录下
cp -a /iso/Packages/ /localYum/
3.将原本的yum配置文件移走
mv /etc/yum.repos.d/*.repo /etc/yum.repos.d/back/
4.新建一个配置文件并编辑
touch CentOS-Local-ISO.repo
vim /etc/yum.repos.d/CentOS-Local-ISO.repo{
[cdrpm]
name=cdrpm
baseurl=file:///iso
enabled=1
gpgcheck=0
}
5.清理缓存并缓存新的数据
yum clean all && yum makecache
基于本地的yum源
1.把光盘镜像里的Packages复制到其他目录下
cp -a /iso/Packages/ /localYum/
2.将原本的yum配置文件移走
mv /etc/yum.repos.d/*.repo /etc/yum.repos.d/back/
3.创建源文件
yum -y install createrepo
createrepo /localYum/Packages
4.新建一个配置文件并编辑
touch CentOS-Local.repo
vim /etc/yum.repos.d/CentOS-Local.repo{
[localrpm]
name=localYum
baseurl=file:///locaYum/Packages
enabled=1
gpgcheck=0
}
5.清理缓存并缓存新的数据
yum clean all && yum makecache
基于 FTP 文件传输协议的 YUM 源
systemctl start vsftpd 启动vsftpd服务
[root@shark ftp]# ss -ntal |grep 21
LISTEN 0 1024 127.0.0.1:9121 *:*
LISTEN 0 32 :::21 :::* 监听21端口
1.把光盘镜像里的Packages复制到/var/ftp/
cp -a /iso/Packages/ /var/ftp/ftpYum/
2.将原本的yum配置文件移走
mv /etc/yum.repos.d/*.repo /etc/yum.repos.d/back/
3.创建源文件
yum -y install createrepo
createrepo /var/ftp/ftpYum/Packages
4.新建一个配置文件并编辑
touch ftpYum.repo
vim /etc/yum.repos.d/ftpYum.repo{
[localyum]
2 name=local yum repo
3 baseurl=ftp://10.0.122.112/ftpYum/Packages
4 enabled=1
}
5.清理缓存并缓存新的数据
yum clean all && yum makecache
网友评论