7.1 安装软件包的三种方法
7.2 rpm包介绍
7.3 rpm工具用法
7.4 yum工具用法
7.5 yum搭建本地仓库
7.1 安装软件包的三种方法
安装文件是二进制文件,不能通过cat去查看文件内容。
三种方法:
rpm工具 rpm包相当于windows .exe的文件 rpm包用rpm工具直接安装上即可。大多数rpm包的安装路径和文件名被设定好
yum工具(最简单)另外一种安装rpm包的工具。在linux下,安装包都被称为rpm包。yum支持自动安装相互依赖的包。
*源码包(最难) 源代码。需要通过编译器把源码包编译成可执行文件。
7.2 rpm包介绍
介绍
设置虚拟机光驱连接,进行挂载
#df -h #ls /mnt/ #mount /dev/cdrom /mnt
把光驱挂载到/mnt上
复制光盘只读,不能写东西进去。
#cd /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 #cd packages #ls 大量rpm包 . . . . . . . yum-plugin-fastestmirror-1.1.31-42.el7.noarch.rpm yum-plugin-tmprepo-1.1.31-42.el7.noarch.rpm yum-plugin-verify-1.1.31-42.el7.noarch.rpm yum-plugin-versionlock-1.1.31-42.el7.noarch.rpm yum-utils-1.1.31-42.el7.noarch.rpm zenity-3.22.0-1.el7.x86_64.rpm zip-3.0-11.el7.x86_64.rpm zlib-1.2.7-17.el7.x86_64.rpm zlib-devel-1.2.7-17.el7.x86_64.rpm zsh-5.0.2-28.el7.x86_64.rpm zziplib-0.13.62-5.el7.x86_64.rpm
rpm包文件名特点
- 数字 .
字符串、包名 - 版本号(主版本号.次版本号.小版本号,又叫修正版本号) - 发布版本号(el7=centos7,) - 平台位置(x86,x64。centos7不再区分x86与x64,默认64) - (后缀名)
7.3 rpm工具用法
安装rpm
#rpm -ivh zsh-5.0.2-28.el7.x86_64.rpm i=install v=view h= 进度 大致意思就是更人性化显示安装 [root@centos7 Packages]# rpm -ivh zsh-5.0.2-28.el7.x86_64.rpm 准备中... ################################# [100%] 正在升级/安装... 1:zsh-5.0.2-28.el7 ################################# [100%]
升级rpm包
#rpm -Uvh
卸载rpm包 直接加包名,无需带详细信息。正常是不显示任何进度。
#rpm -e 包名 #rpm -e zsh
查看已安装的rpm包,查询后的包可以卸载,不过rpm不支持依赖卸载。
#rpm -qa 包名
查看某个包是否被安装
#rpm -q 包名
查看指定包信息i=information
# rpm -qi vim-enhanced Name : vim-enhanced Epoch : 2 Version : 7.4.160 Release : 2.el7 Architecture: x86_64 Install Date: 2018年02月27日 星期二 11时23分08秒 Group : Applications/Editors Size : 2292098 License : Vim Signature : RSA/SHA256, 2017年08月11日 星期五 04时15分38秒, Key ID 24c6a8a7f4a80eb5 Source RPM : vim-7.4.160-2.el7.src.rpm Build Date : 2017年08月02日 星期三 08时46分12秒 Build Host : c1bm.rdu2.centos.org Relocations : (not relocatable) Packager : CentOS BuildSystem <http://bugs.centos.org> Vendor : CentOS URL : http://www.vim.org/
列出某包名所安装的文件
#rpm -ql 包名 #rpm -ql vim-enhanced /etc/profile.d/vim.csh /etc/profile.d/vim.sh /usr/bin/rvim /usr/bin/vim /usr/bin/vimdiff /usr/bin/vimtutor
查看一个文件是由哪个包安装
#rpm -qf 绝对路径 #rpm -qf /usr/bin/vim
整段高亮小技巧 2个`(`是tab上的键)输出的结果可以搭配#rpm -qf 使用,
例如#rpm -qf `which cd` ,该命令是先输出which cd的效果(查看cd的绝对路径), 然后再rpm -qf 处理``输出的结果。整条命令结果就是:#rpm -qf cd的绝对路径。红色高亮注意:2行以上的输出结果无效。
# rpm -qf `which cd` bash-4.2.46-28.el7.x86_64
7.4 yum工具用法
介绍
依赖安装示范
找到texlive-2012-38.20130427_r30134.el7.x86_64.rpm这个包,并尝试安装。
# rpm -ivh texlive-2012-38.20130427_r30134.el7.x86_64.rpm
错误:依赖检测失败:
texlive-scheme-basic 被 texlive-2:2012-38.20130427_r30134.el7.x86_64 需要 texlive-collection-latexrecommended 被 texlive-2:2012-38.20130427_r30134.el7.x86_64 需要 tex-kpathsea 被 texlive-2:2012-38.20130427_r30134.el7.x86_64 需要 tex-tetex 被 texlive-2:2012-38.20130427_r30134.el7.x86_64 需要
安装失败,因为没安装被依赖的包。
尝试用yum工具安装
#yum install 包名(无需文件名) #yum install texlive
一共200多个文件包,如果一个一个安装,很浪费时间。所以利用yum 安装能解决依赖包安装问题。
#yum list 列出可用rpm包
包名,包的相关信息版本号,平台版本号仓库名
查看base仓库相关文件
# 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 # cat /etc/yum.repos.d/CentOS-Base.repo
搜索相关包
#yum search 包名 #yum search vim #yum search network
此处搜索略模糊,不太精准。其中还有只有network相关的包名,而并不是network的包。
精准搜索
#yum list |grep 'vim'
此处搜索vim的包,而且带有高亮效果,grep是过滤作用。
安装一个包的命令
#yum list [-y]y的作用是默认用yes回答安装期间的询问。 #yum group install[-y]用法 # yum grouplist Failed to set locale, defaulting to C Loaded plugins: fastestmirror There is no installed groups file. Maybe run: yum groups mark convert (see man yum) Loading mirror speeds from cached hostfile * base: mirrors.aliyun.com * extras: mirrors.aliyun.com * updates: mirrors.aliyun.com 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
假如要安装Virtualization Host,利用命令#yum groupinstall。
#yum groupinstall 'Virtualization Host'
(如果是一个单词无需加''如果是两个单词,需要加'')
依赖删除
#yum remove [-y]
慎用
依赖升级慎用,如果不加包名,此命令会将系统全部包都升级,包括系统。
#yum update [-y]
搜索vim命令有有哪些包去安装它,支持通配。(前提是vim是不存在的。
#yum provides "/*/vim"
7.5 yum搭建本地仓库
yum安装的rpm包,是通过一个仓库去进行远程连接下载,随后进行安装的。然而,仓库可以搭建成本地仓库。
准备工作
# cp -r /etc/yum.repos.d/ /etc/yum.repos.d.bak
#rm -f /etc/yum.repos.d/* 把/etc/yum.repos.d/ 里面所有文件删除
#vim /etc/yum.repos.d/dvd.repo
vim dvd.repo文件,把下面参数写入。
0代表不,1代表是。 [dvd] name=install dvd baseurl=file:///mnt enable=1 gpgcheck=0
清理缓存
#yum clean all
#yumlist 或者 #yumlist |less 查看
这里可以看到刚刚创建的名为dvd的仓库。
仓库名前缀带@代表已经安装过
Available Packages 表示可安装的包(可以理解为未安装)
# yum install GConf2.x86_64
安装过程中,同样也遇到需要安装依赖包。此处y就好。
Dependencies Resolved ============================================================================================================================= Package Arch Version Repository Size ============================================================================================================================= Installing: GConf2 x86_64 3.2.6-8.el7 dvd 1.0 M Installing for dependencies: psmisc x86_64 22.20-15.el7 dvd 141 k Transaction Summary ============================================================================================================================= Install 1 Package (+1 Dependent package) Total download size: 1.1 M Installed size: 6.8 M Is this ok [y/d/N]: y Downloading packages: ----------------------------------------------------------------------------------------------------------------------------- Total 19 MB/s | 1.1 MB 00:00:00 Running transaction check Running transaction test Transaction test succeeded Running transaction Installing : psmisc-22.20-15.el7.x86_64 1/2 Installing : GConf2-3.2.6-8.el7.x86_64 2/2 Verifying : psmisc-22.20-15.el7.x86_64 1/2 Verifying : GConf2-3.2.6-8.el7.x86_64 2/2 Installed: GConf2.x86_64 0:3.2.6-8.el7 Dependency Installed: psmisc.x86_64 0:22.20-15.el7 Complete!
制作本地DVD仓库的作用,可以解决很多依赖包安装。