一、rpm
- 安装软件包
rpm -ivh /mnt/AppStream/Packages/httpd.rpm
-i --install 安装
-v --verbose 显示安装过程
-h --hash 软件包安装的时候列出哈希标记
--test:只是测试安装,并不会真正安装软件
--nodeps:只安装软件本身,不考虑依赖
--force:强制安装
- rpm的查询
1) -q query 查询 查询已安装的软件包的信息
rpm -q packagename #查询软件包是否安装
rpm -qa #查询系统中所有已经安装的软件包有哪些
rpm -qa | wc -l #统计已经安装的软件包的个数
2) -f file 查询/验证文件属于的软件包
rpm -qf /path/packagename #命令后跟文件的绝对路径
例:
rpm -qf /etc/passwd #passwd文件是由哪个软件包安装的
which ifconfig #查找命令ifconfig的绝对路径
3) -c --configfiles 列出所有配置文件
rpm -qc packagename 查询该软件的配置文件
4) -l --list 列出软件包中的文件
rpm -ql packagename #列出安装该软件时,都安装了哪些文件
5) -i 查询安装的软件包的信息
rpm -qi packagename #查询安装的软件包的信息
6) -qp 查询未安装的软件包的相关信息
-qpi 未安装的软件包的完整路径和包名,查询未安装的软件包的详细信息
-qpl 如果安装未安装的软件,会安装哪些文件在系统中
-qpR 查询未安装的软件包的依赖情况
- rpm包的卸载
-e erase
rpm -e packagename
- rmp包的更新
-U 如果包未安装,等同于-i 进行安装;如果包已安装,便是更新版本
- rpm包的校验
-V:验证软件包生成的文件或命令是否被人修改过 —— 为了安全,防止恶意代码
rpm -V packagename 验证软件包生成的文件是否被修改
rpm -Va 检查所有的包
S file Size differs 大小改变
M Mode differs (includes permissions and file type)文件的类型或权限改变
5 digest (formerly MD5 sum) differs md5值改变
D Device major/minor number mismatch 设备的主从号改变
L readLink(2) path mismatch 符号链接文件找不到链接对象
U User ownership differs 用户改变
G Group ownership differs 组改变
T mTime differs 修改文件内容的时间改变
P caPabilities differ 兼容性改变
6. rpm包数字签名
rpm --import RPM-GPG-KEY 导入数字签名(一次即可)
二、编译安装
./configure #编译前的准备工作
make #编译工作
make install #编译安装
三、yum安装
常用yum命令:
install: Installa package or packages on your system 安装
update: Update a package or packages on your system 升级所有包,改变软件设置和系统设置,系统版本内核都升级
remove: 移出某个软件,后跟软件名称
search: Search package details for the given string 搜索某个软件或重要关键字
list: List a package or groups of packages 列出yum所管理的软件名称与版本,类似于rpm –qa
info: Display details about a package or group of packages 类似于rpm –qai
clean: Remove cached data 下载文件被放置在/var/cache/yum中,可以使用clean清除。
check-update: Check for available package updates 检查可用的更新包
Groupinfo: Display details about a package group 显示一个包组的信息
groupinstall: Install the packages in a group on your system 安装一个包组在你的系统上
grouplist: List available package groups 列出可用的包组
groupremove: Remove the packages in a group from your system 移除包组
groupupdate: 升级整个软件群组
help: Display a helpful usage message 帮助
Deplist: List a package's dependencies 列出软件包的依赖关系,在使用本地源软件包进行安装时,可以查看依赖关系
Erase: Remove a package or packages from your system 移除软件包
localinstall: Installa local RPM 安装本地的rpm软件包
makecache: Generate the metadata cache 生成数据缓存
reinstall: reinstalla package 重装软件包
upgrade: Update packages taking obsoletes into account 升级所有包,不改变软件设置和系统设置,系统版本升级,内核不改变
yum history
帮助:yum history help 现在的 yum 带有历史记录功能,可以查看过往的事务,重做或回滚这些事务
重做是 “yum history redo N”,
回滚是 “yum history undo N”
配置yum源
cd /etc/yum.repos.d 找到以.repo结尾的文件
编辑
[name]
name=user_name(自定义)
baseurl=file:///mnt/cdrom(光盘挂载路径,即软件源的位置)
enabled=1 #默认启用,0为不启用
gpgcheck=0 #默认不检查,1为检查
四、dnf安装
DNF 是 YUM 的下一代包管理软件,改进 YUM 包管理工具的一些问题,提升了用户体验,内存占用,依赖分析,运行速度等多方面的内容。
常用命令:
dnf list installed #查看已安装包的列表
dnf search packagename #搜索软件包
dnf install packagename #安装软件包
dnf reinstall packagename #重新安装软件包
dnf info packagename #查看软件包的详细信息
dnf check-update #检查已安装安装包更新
dnf update #更新所有软件包
dnf update packagename #更新软件包
dnf remove packagename #卸载软件包
dnf autoremove #去掉不需要的依赖包
dnf clean all #清除所有缓存
配置DNF源:
参考文章:https://www.linuxidc.com/Linux/2019-10/161212.htm
CentOS 8 是会读取http://centos.org的mirrorlist的,一般来说是不需要配置镜像的。
如果网络访问http://centos.org的mirrorlist有问题,可能才需要另外配置镜像。
cd /etc/yum.repos.d
#备份
cp CentOS-Base.repo CentOS-Base.repo.bak
cp CentOS-AppStream.repo CentOS-AppStream.repo.bak
cp CentOS-Extras.repo CentOS-Extras.repo.bak
sed -i 's/mirrorlist=/#mirrorlist=/g' CentOS-Base.repo CentOS-AppStream.repo CentOS-Extras.repo
sed -i 's/#baseurl=/baseurl=/g' CentOS-Base.repo CentOS-AppStream.repo CentOS-Extras.repo
sed -i 's/http:\/\/mirror.centos.org/https:\/\/mirrors.aliyun.com/g' CentOS-Base.repo CentOS-AppStream.repo CentOS-Extras.repo