linux应用程序的类型
- *.rpm
redhat系统默认的软件格式(使用了二进制的文件格式,代码相对来说比较封闭)
rpm软件包名称格式:软件名-版本-发布次数-os平台-硬件平台(32bit/64bit).rpm
硬件平台:
32位:i386、i586、i686
64位:x86
不分硬件架构:noarch
- 源码安装
通用软件格式,压缩格式(xz、gz、bz2)的文件,也是生成rpm等包的基础自带安装程序或免安装软件。
程序文件存放位置
/etc/ #rpm包的配置文件
/var/log/ #日志文件
/usr/share/doc/ #软件的说明文档
/usr/bin/ #普通用户可运行的程序命令
/usr/sbin/ #root可运行的程序命令
一、rpm常用命令
-
查询命令
rpm -qa #查询当前系统安装的所有rpm包 rpm -ql 软件名 #查询软件包的所有有关文件 rpm -qc 软件名 #查询软件包的所有配置文件 rpm -qi 软件名 #查看软件包的详细信息 rpm -qf 文件名 #查看此文件由哪个软件包提供
-
安装、卸载、升级rpm软件包
安装: rpm -ivh 软件包名 升级: rpm -F 软件包命 #为已安装的软件包升级 rpm -U 软件包名 #为已安装的软件包升级,若未安装进行安装 卸载: rpm -e 软件包名 #卸载软件包 特殊用法: --force:强制安装,党已经安装的软件的文件丢失或者被损坏时用到,或系统中以存在新版本需要安装旧版本时; --nodeps:忽略依赖关系,安装或卸载时用到; --import:导入iso的公钥(检查包的合法性和完整性,不导入会在安装时报warning);
二、yum命令管理软件包
-
yum概述:C/S架构
服务端:为客户端提供软件包的源,可以理解为一个服务站,- 可以使用ftp文件服务器提供yum的源
- 可以使用http(apache、nginx)提供基于web的源
- 可以使用本地file上传的文件
-
yum服务端搭建本地的yum源
- 例如:
mount /dev/cdrom /mnt 或者mount /dev/sr0 /mnt
createrepo -g /mnt/repodata/repomd.xml /软件包位置 #根据光盘的repo文件作为模版
- 例如:
-
yum客户端的配置
- 配置yum仓库,源的文件
mount /dev/cdrom /mnt #将光盘镜像文件挂载到/mnt下 rm -rf /etc/yum.repos.d/* #删除系统中自带的默认yum源文件 vi /etc/yum.repos.d/local.repo [local] #自定义名称,标记 name=local #对repo文件的描述 baseurl=file:///mnt #yum服务器的访问路径,可以指定多个 enable=1 #为1代表开启此源,为0代表关闭此源,关闭后yum默认不会找到此源,需要使用yum --enablerepo=名称 gpgcheck=0 #为0代表不进行gpg公钥的检查,为1代表进行检查
- 配置yum仓库,源的文件
-
yum的配置文件
/etc/yum.conf #主配置文件 keepcache=0 #将安装的软件包缓存到本地一份 cachedir=/var/cache/yum/$basearch/$releasever #指定缓存软件包的路径 logfile=/var/log/yum.log #yum的日志文件
-
yum 的用法
-
查找
yum list #查看所有软件包 yum repolist #列出可用yum源 yum search 软件名(关键字) #查找软件 yum grouplist #列出所有可安装的yum源的软件组 yum groupinfo "软件组名" #查看软件组中软件包 yum provides */命令 #查看提供此命令的软件包
-
安装
yum -y install 软件包名 yum -y groupinstall 软件组名
-
卸载
yum -y remove 软件包名 yum -y erase 软件包名 yum -y groupremove 软件组名
-
修改(修改yum本身)
yum clean all #清空yum的所有缓存,出错时常用 yum -y update #更新系统,升级所有包,改变软件设置和系统设置,系统版本内核都升级 yum -y upgrade #升级所有包,不改变软件设置和系统设置,系统版本升级,内核不改变
-