7.1 安装软件包的三种方法 (windows中exe的安装包是二进制文件)
rpm工具 (windows下exe类似,直接用rpm工具安装,无需设置,路径文件名固定好)
yum工具 (另一种安装rpm: Red-Hat Package Manager Python语言开发 支持自动安装依然包)
源码包 (源代码,程序员开发时用编程语言开发各个文件都能查看到,通过编辑器去编译成可执行文件)
7.2 rpm包介绍
设置光驱并挂载
rpm包格式,包名、版本号、发布版本号、平台
第一步挂载光驱系统盘
[root@test ~]# mount /dev/cdrom /mnt/
mount: /dev/sr0 写保护,将以只读方式挂载 (光驱光盘是只读的)
[root@test mnt]# ls
CentOS_BuildTag EULA images LiveOS repodata RPM-GPG-KEY-CentOS-Testing-7
EFI GPL isolinux Packages RPM-GPG-KEY-CentOS-7 TRANS.TBL
[root@test mnt]# cd Packages/
Packages目录下放置rpm包
polkit-pkla-compat-0.1-4.el7.x86_64.rpm
rpm包文件特点:polkit-pkla-compat包名(包名中间也会有-或者数字)-0.1版本号(版本号分:主版本号.次版本号.更小的版本号(修正版本号))-4.el7(发布版本号el7表示centos7).x86_64(平台位数)
注:64位的平台可以安装32位的包
7.3 rpm工具用法
rpm -ivh rpm包文件 //安装
rpm -Uvh rpm包文件 //升级
rpm -e 包名 //卸载
rpm -qa //查询安装的包
rpm -q 包名 //查询指定包是否安装
rpm -qi 包名 //查询指定包信息
rpm -ql 包名 //列出包安装的文件
rpm -qf 文件绝对路径 //查看一个文件是由哪个包安装的
第二步安装rpm包 -ivh i install v可视化 h人性化显示 (包的路径要确定,绝对路径或者相对路径) (安装包时也会需要依然包)
[root@test Packages]# rpm -ivh polkit-pkla-compat-0.1-4.el7.x86_64.rpm
准备中... ################################# [100%]
软件包 polkit-pkla-compat-0.1-4.el7.x86_64 已经安装
升级rpm包 -Uvh
[root@test Packages]# rpm -Uvh polkit-pkla-compat-0.2-4.el7.x86_64.rpm(指定升级包的路径,包必须在本地)
卸载包 -e
[root@test Packages]# rpm -e polkit-pkla-compat
但是有时候包与包之间有依然,所以不能随便卸载
错误:依赖检测失败:
polkit-pkla-compat 被 (已安裝) polkit-0.112-9.el7.x86_64 需要 (需要卸载这个包)
查询安装的包 -qa
[root@test Packages]# rpm -qa
查询某个包是否安装 -q
[root@test Packages]# rpm -q xsom
未安装软件包 xsom
[root@test Packages]# rpm -q polkit-pkla-compat
polkit-pkla-compat-0.1-4.el7.x86_64
查询包指定信息 -qi
[root@test Packages]# rpm -qi polkit-pkla-compat
Name : polkit-pkla-compat
Version : 0.1
Release : 4.el7
Architecture: x86_64
Install Date: 2018年09月27日 星期四 16时30分58秒
Group : Unspecified
Size : 82409
License : LGPLv2+
Signature : RSA/SHA256, 2014年07月04日 星期五 12时32分08秒, Key ID 24c6a8a7f4a80eb5
Source RPM : polkit-pkla-compat-0.1-4.el7.src.rpm
Build Date : 2014年06月10日 星期二 06时08分34秒
Build Host : worker1.bsys.centos.org
Relocations : (not relocatable)
Packager : CentOS BuildSystem <http://bugs.centos.org>
Vendor : CentOS
URL : https://fedorahosted.org/polkit-pkla-compat/
Summary : Rules for polkit to add compatibility with pklocalauthority
Description :
A polkit JavaScript rule and associated helpers that mostly provide
compatibility with the .pkla file format supported in polkit <= 0.105 for users
of later polkit releases.
列出包安装的文件 -ql
[root@test Packages]# rpm -ql polkit-pkla-compat
/etc/polkit-1/localauthority
/etc/polkit-1/localauthority.conf.d
/etc/polkit-1/localauthority/10-vendor.d
/etc/polkit-1/localauthority/20-org.d
/etc/polkit-1/localauthority/30-site.d
/etc/polkit-1/localauthority/50-local.d
/etc/polkit-1/localauthority/90-mandatory.d
/etc/polkit-1/rules.d/49-polkit-pkla-compat.rules
/usr/bin/pkla-admin-identities
/usr/bin/pkla-check-authorization
/usr/share/doc/polkit-pkla-compat-0.1
/usr/share/doc/polkit-pkla-compat-0.1/AUTHORS
/usr/share/doc/polkit-pkla-compat-0.1/COPYING
/usr/share/doc/polkit-pkla-compat-0.1/NEWS
/usr/share/doc/polkit-pkla-compat-0.1/README
/usr/share/man/man8/pkla-admin-identities.8.gz
/usr/share/man/man8/pkla-check-authorization.8.gz
/usr/share/man/man8/pklocalauthority.8.gz
/var/lib/polkit-1
/var/lib/polkit-1/localauthority
/var/lib/polkit-1/localauthority/10-vendor.d
/var/lib/polkit-1/localauthority/20-org.d
/var/lib/polkit-1/localauthority/30-site.d
/var/lib/polkit-1/localauthority/50-local.d
/var/lib/polkit-1/localauthority/90-mandatory.d
通过文件的绝对路径去查询是由哪个包安装 -qf(查询已经安装的包)
[root@test Packages]# rpm -qf /var/lib/polkit-1/localauthority/50-local.d
polkit-pkla-compat-0.1-4.el7.x86_64
不知道命令在哪个位置,并且需要知道在哪个包安装的 加反引号(esc键下)
[root@test Packages]# rpm -qf `which cd`
bash-4.2.46-20.el7_2.x86_64
[root@test Packages]# which cd
/usr/bin/cd
7.4 yum工具用法
yum list //列出可用rpm包
ls /etc/yum.repos.d/
yum search vim //搜索包
yum install [-y]
yum grouplist
yum groupinstall [-y]
yum remove [-y]
yum update [-y]
yum provides “/*/vim”
安装包(将包的依赖的包一并安装)
[root@test ~]# yum install -y postfix
列出可用rpm包
[root@test ~]# yum list
包名字相关信息 版本号及平台版本号 仓库名字
仓库名字由yum配置文件决定
配置文件路径:
[root@test ~]# ls /etc/yum.repos.d/
CentOS-Base.repo CentOS-Debuginfo.repo CentOS-Media.repo CentOS-Vault.repo
CentOS-CR.repo CentOS-fasttrack.repo CentOS-Sources.repo
仓库名字:
搜索包
[root@test ~]# yum search vim
已加载插件:fastestmirror
Loading mirror speeds from cached hostfile
* base: mirrors.cn99.com
* extras: mirrors.aliyun.com
* updates: mirrors.shu.edu.cn
======================================================== N/S matched: vim =========================================================
protobuf-vim.x86_64 : Vim syntax highlighting for Google Protocol Buffers descriptions
vim-X11.x86_64 : The VIM version of the vi editor for the X Window System
vim-common.x86_64 : The common files needed by any version of the VIM editor
vim-enhanced.x86_64 : A version of the VIM editor which includes recent enhancements
vim-filesystem.x86_64 : VIM filesystem layout
vim-minimal.x86_64 : A minimal version of the VIM editor
名称和简介匹配 only,使用“search all”试试。
精准搜索包
[root@test ~]# yum list |grep 'vim'
vim-common.x86_64 2:7.4.160-4.el7 @base
vim-enhanced.x86_64 2:7.4.160-4.el7 @base
vim-filesystem.x86_64 2:7.4.160-4.el7 @base
vim-minimal.x86_64 2:7.4.160-1.el7 @anaconda
protobuf-vim.x86_64 2.5.0-8.el7 base
vim-X11.x86_64 2:7.4.160-4.el7 base
vim-minimal.x86_64 2:7.4.160-4.el7 base
可用的组权列出来
[root@test ~]# yum grouplist
已加载插件:fastestmirror
没有安装组信息文件
Maybe run: yum groups mark convert (see man yum)
Loading mirror speeds from cached hostfile
* base: mirrors.cn99.com
* extras: mirrors.aliyun.com
* updates: mirrors.shu.edu.cn
可用的环境分组:(安装完系统后去安装这些套件)
最小安装
基础设施服务器
计算节点
文件及打印服务器
基本网页服务器
虚拟化主机
带 GUI 的服务器
GNOME 桌面
KDE Plasma Workspaces
开发及生成工作站
可用组:
传统 UNIX 兼容性
兼容性程序库
图形管理工具
安全性工具
开发工具
控制台互联网工具
智能卡支持
科学记数法支持
系统管理
系统管理工具
完成
Available Environment Groups:
Minimal Install
Compute Node
Infrastructure Server
File and Print Server
Basic Web Server
Virtualization Host
Server with GUI
GNOME Desktop
KDE Plasma Workspaces
Development and Creative Workstation
Available Groups:
Compatibility Libraries
Console Internet Tools
Development Tools
Graphical Administration Tools
Legacy UNIX Compatibility
Scientific Support
Security Tools
Smart Card Support
System Administration Tools
System Management
Done
安装套件
[root@test ~]# yum groupinstall -y 'GNOME Desktop'(安装的内容如果有空格就用''括起来)
卸载包(卸载时包依然的包都卸载掉,需要谨慎)
[root@test ~]# yum remove ppp
升级包
[root@test ~]# yum update会将系统中所有的rpm包全部升级(建议在装完系统后升级,甚至系统、内核)
安装未知的不在的命令
[root@test ~]# yum provides "/*/vim"
7.5 yum搭建本地仓库(不能联网前提,需要光驱光盘镜像文件挂载前提访问里面的rpm包)
挂载镜像到/mnt目录
cp -r /etc/yum.repos.d /etc/yum.repos.d.bak
rm -f /etc/yum.repos.d/*
vim /etc/yum.repos.d/dvd.repo //内容如下
[dvd]
name=install dvd
baseurl=file:///mnt
enable=1
gpgcheck=0
yum clean all
yum list
第一步挂载光驱光盘
[root@test~]# mount /dev/cdrom /mnt/
mount: /dev/sr0 写保护,将以只读方式挂载
第二步删除文件备份
[root@test ~]# cp -r /etc/yum.repos.d /etc/yum.repos.d.bak
删除所有.repo文件
[root@test yum.repos.d]# rm -rf ./*
第三步创建dvd.repo
[root@test yum.repos.d]# vim dvd.repo
[dvd] (仓库名字)
name=install dvd (自定义描述字符串)
baseurl=file:///mnt (rpm位置,光驱路径)
enable=1 (0表示源不用 1表示打开源)
gpgcheck=0 (是否检测,0不检测1检测)
清除之前的缓存
[root@test yum.repos.d]# yum clean all
已加载插件:fastestmirror
正在清理软件源: dvd
Cleaning up everything
Maybe you want: rm -rf /var/cache/yum, to also free up space taken by orphaned data from disabled or removed repos
Cleaning up list of fastest mirrors
查看包情况
[root@txc209 yum.repos.d]# yum list |less
包源已经变为本地
@anaconda表示安装过的包
本地yum源安装包时也会出现依赖的包,可以弄个yum仓库直接统一安装