yum实战命令:
安装: yum install -y:不交互安装 # 选项[y/d/N]: d代表只下载不安装 没有-d参数 yum localinstall 安装本地的rpm包,并安装依赖(从其他源里下载安装) yum reinstall 重装 # 可用于修复 查询: yum list 查询所有的安装包 (包含安装的来源仓库, 还会列出伪装过的包) yum info 查看安装或未安装包的详细信息 # 例: yum info tree 更新: yum check-update 检查可以更新的包 yum update python -y 更新python包 !!!!!!!!! yum update -y ******注意 非常危险,更新所有包,包括内核(yum update -y会把所有包升级,升级内核把centos6升为7) 删除: yum remove : 删除rpm包(会把依赖也删除) 尽量少用,把依赖删除危险。重装直接yum reinstall,不要先删后装 rpm -e 只删除对应的包,比较安全 yum erase : 删除rpm包(和yum remove一样, 没区别) yum仓库相关命令: yum repolist :查看仓库中的所有rpm包数量 yum repolist all: 查看启用的和没启用的仓库 # 通过修改仓库配置文件enable # 阿里源仓库配置文件3个地址 http://mirrors.aliyun.com/centos/$releasever/centosplus/$basearch/ 自己的服务,走这个源 http://mirrors.aliyuncs.com/centos/$releasever/centosplus/$basearch/ http://mirrors.cloud.aliyuncs.com/centos/$releasever/centosplus/$basearch/ 购买的云主机,内网源(走阿里内网速度快) yum-config-manager --enable : 启用yum仓库(可以直接通过修改仓库配置文件实现) yum provides : 查询你想要敲的命令,属于哪个rpm包 # 例: yum provides ifconfig 或写命令路径 yum provides /sbin/ifconfig yum缓存:(很少用,现在换源用不到) yum clean all # 清缓所有yum缓存 yum makecache # 加载当前源的缓存包 yum配置文件中 vim /etc/yum.conf 里面有个keepcache=0 # 缓存软件包, 0关闭, 1开启(缓存开启的情况下, 安装包后会在/var/cache/yum/x86_64/7有对应的包) find /var/cache/yum/x86_64/7 # 装一个服务,会把包放在对应的缓存下面 find /var/cache/yum/x86_64/7 -type f -name '*.rpm' 查缓存里的包
yum包组相关命令: (就是安装centos时包组选项页面(有最小安装), 左右两边都有) # 很少用到 yum groups list yum groups install Development tools (就是安装centos时选项页面(有最小安装)的 Development Tools) yum groups remove -y Base yum历史相关命令: yum history yum history info # 例: yum history info 38 yum history undo 43 # 取消43步的操作(没什么意义,还要查历史) yum配置文件了解 vim /etc/yum.conf keepcache # 缓存软件包, 1启动 0 关闭 (打包会用到) debuglevel # 调试级别 logfile # 日志记录位置 exactarch # 检查平台是否兼容 obsoletes # 检查包是否废弃 gpgcheck # 检查来源是否合法,需要有制作者的公钥信息 (自己安装没必要开启) plugins # 是否启用查询 # 不进行签名验证(如果碰到需要签名验证的,可以追加参数不验证) yum install httpd --nogpgcheck
源码包:
yum安装,优点:速度快,简单 缺点:rpm -ql 查看 命令目录,配置文件目录,站点目录... 源码包优缺点: 优点: 1.有了源码包,那我就可以自行修改代码,提供我们使用,传说中的二次开发 2.可以定制需要的相关功能 3.新版本优先更新源码 4.自动化规范,方便落地 缺点: 1.相对于yum安装,复杂 2.耗时比较长
源码包地址
mysql (官网选择, 源码包就是Source Code, 一般都是tar包, .tar.gz)
wget https://downloads.mysql.com/archives/get/file/mysql-5.6.42.tar.gz
nginx
wget http://nginx.org/download/nginx-1.16.0.tar.gz
安装源码包:
# 安装nginx所有依赖包 [root@db_rpm ~]# yum install -y gcc gcc-c++ glibc pcre-devel zlib-devel openssl-devel # 把需要安装的依赖包拷贝出来(用于下面fpm打rpm包) # 修改yum缓存,把安装的相关依赖包本地保存下来 sed -i 's#keepcache=0#keepcache=1#g' /etc/yum.conf # 查找当前yum缓存下的安装包 find /var/cache/yum/ -name '*rpm' # 把下载的包拷贝出去 find /var/cache/yum/ -name '*rpm' |xargs cp -t /usr/local/src/ 1.解压(一定要装完c的环境后再进行解压,否则会少东西) [root@db_rpm ~]# tar xf nginx-1.16.0.tar.gz mkdir /app 2.生成 [root@db_rpm nginx-1.16.0]# ./configure --prefix=/app/nginx-1.16.0 # --prefix选择要安装的路径 # echo $? 可以看运行成功失败 3.编译(把c语言代码编译成linux可以识别的编码) [root@db_rpm nginx-1.16.0]# make # echo $? 可以看运行成功失败 4.安装 [root@db_rpm nginx-1.16.0]# make install # echo $? 可以看运行成功失败 # 在/app/nginx-1.16.0/下 conf配置文件,html站点目录,logs日志,sbin命令 5.启动nginx(/app/nginx-1.16.0下会生成很多文件,都是缓存,可以清理) [root@db_rpm nginx-1.16.0]# /app/nginx-1.16.0/sbin/nginx 6.关闭防火墙 [root@db_rpm nginx-1.16.0]# systemctl stop firewalld 7.打开浏览器,访问:http://10.0.0.60/
fpm工具打rpm包进yum仓库
优点: 安装路径和源码安装一致,企业统一管理
fpm工具安装:(打包需要工具,可以把源码安装的包通过fpm打包成rpm包) wget http://download.driverzeng.com/fpm-1.3.3.x86_64.tar.gz yum -y install ruby rubygems ruby-devel # 安装fpm依赖 解压:[root@db_rpm ~]# tar xf fpm-1.3.3.x86_64.tar.gz # 换gem源 删掉国外源,换成国内源(不换源也可以,速度慢些) gem sources --add https://mirrors.huaweicloud.com/repository/rubygems/ --remove https://rubygems.org/ # 安装fpm的包 [root@db_rpm ~]# gem install *.gem # 打包命令(会有黄字, 不影响) fpm -s dir -t rpm -n nginx -v 1.16.0 -d 'pcre-devel,openssl-devel' -f /app/nginx-1.16.0 # -s dir指定打包目录 -t rpm指定是rpm包 -n 指定包名 -v 指定版本 -d 指定依赖包 -f 指定要打包的目录 nginx-1.16.0-1.x86_64.rpm # 打包出的文件 nginx-版本-发布次数-架构
通过fpm打包做镜像
cp nginx-1.16.0-1.x86_64.rpm /usr/local/src/ 进入/usr/local/src/中,把所有文件打tar包 cd /usr/local/src/ tar zcf nginx.tar.gz ./* # 拷贝到仓库机器目录下 cd /data/zls/yum_repo/nginx # 解压 tar xf nginx.tar.gz # 把该路径变为yum仓库 createrepo /data/zls/yum_repo/nginx/ # 访问机操作 cd /etc/yum.repos.d/ # 编辑 vim nginx-zls.repo [app-nginx] name='xxx' baseurl=http://10.0.0.200/nginx/ enable=1 gpgcheck=0 # 参看yum是否生效 yum repolist # 查看是否安装nginx rpm -qa|grep nginx >> nginx-1.16.0-1.el7.ngx.x86_64 # 卸载 rpm -e nginx-1.16.0-1.el7.ngx.x86_64 # 安装 yum install -y nginx # 查看是否在/app目录下(conf文件也在路径下) ll /app