写在之前:

服务器为CentOS7,博主不是运维,是个java开发。小菜鸡,今年刚毕业,linux命令只限于会发布tomcat。如果你看不懂下面这个命令,那么这篇文章可能对你有所帮助,避免踩坑。当然,深谙linux系统特性的大佬就不用往下看了,只是几个菜鸡互啄罢了。

rpm -Uvh ./*.rpm --nodeps --force

背景:

客户给了我们两台24核128G的内网服务器,通过teamviewer连接跳板机(Win 7)进入内网服务器,内网服务器用VmWare分成了若干台不同作用的虚拟机。接到任务,往虚拟机上搭建项目环境:mongo + redis + tomcat + JDK + elasticsearch + rabbitmq。当然没有每台虚拟机都装完整的环境。其它略过不讲,只讲搭建rabbitmq的时候是如何把服务器弄崩的。先来几张图片,求助搞大数据运维的同学的聊天记录:

还有一台就没有截图了,记得调用系统命令提示lib.so.1不存在。。。

按照多年使用windows系统的直觉,和我网管朋友给我传授的经验——没有什么问题是重启电脑解决不了的!

哦豁~这在linux系统并不管用,结果就是:一台无法重启,开机卡在黑框界面;一台无法关闭,进入vmware管理页面也关闭不了。


ok,开始讲正文:

安装过rabbitmq的都知道,rabbitmq嘛,得先安装erlang语言。以前我安装erlang都是参照这位大佬的博客,Centos6.5安装erlang过程及问题总结。erlang有以下的依赖组件:

解决办法很简单,安装一下依赖就好了 yum install **。事情没有那么简单,这是内网服务器,上不了网啊。怎么办,自己下载rpm包安装呗。c++ compiler很简单,下载后 rpm -ivh xxx.rpm 就好了。万恶的是OpenSSL,截一张大佬的博客,OpenSSL需要哪些依赖,rpm安装openssl-devel:

哦豁~~一个个下载呗,用到了同事给我的阿里镜像库http://mirrors.aliyun.com/centos/7/os/x86_64/Packages/,阿里上面的包大部分都比列出的版本要高。那就用最新的呗,下载安装!


万恶的先卸载再安装:

安装过程中发现,安装A包,提示安装错误 "XXXB.1.31包 被 A包需要",然后用rpm -qa | grep XXXB 命令发现是已经安装了的,只是版本过低(比如为XXXB.1.25),怎么办,先卸载再安装。用从网上找来的命令:rpm -e --nodeps XXXB.1.25卸载旧版本,再rpm -ivh XXXB.1.31.rpm安装新版本。前面几个都很顺利,安装成功。到安装libss-XXX.rpm包的时候,提示zlib-XX依赖未安装。

那就卸载安装呗,先把旧的zlib包找出来,执行这条语句:

rpm -e --nodeps zlib

诶,等等!!这条语句好像是卸载,而且我没有指定是哪个版本。手残了。。。心想着没事,反正安装新的了, rpm -ivh zlib-devel-1.2.7-18.el7.x86_64.rpm,执行命令后报错:XXXX lib.so.1 XXXX not found。百度一下大意是:动态链接库找不到了。一顿操作还是报错而且系统命令无法使用,无果,搞第二台服务器。

第二台倒没有手残,但是当卸载安装新版本的libselinux-2.5-14.1.el7.x86_64.rpm,报错提示:XXXX libselinux.so.1 XXXX not found。系统命令又用不了了,关闭ssh重新连接,两台都连接失败。至此,两台服务器都崩了。


看到这里,有人会问了,你们公司的运维呢,不好意思,没有。

没办法,跑去和技术经理老老实实地说了,经理在vmware管理页面想关闭两台虚拟机重启,失败。。虚拟机删除也删除不了。。。

事情总得解决,经理又新建了一台虚拟机给我们造,一定要把mq给安装咯。

诶嘿~第三台服务器继续造,可劲的造。


第三台服务器:

但也不敢继续造了呀,卸载了之后安装新版本报错啊。去百度吧,centos7离线安装openssl,终于找到一位大佬的博客:CentOS7 离线安装gcc/pcre-devel/openssl-devel/zlib-devel,里面就一个命令(也就是本文最开头的命令)——把当前目录下以.rpm包结尾的文件安装了,--nodeps:安装时不检查依赖关系,--force:即使已有不同版本,也强制安装。

舒服呀~openssl安装好了,接下来就编译安装erlang,接着rabbitmq,水到渠成。

最后列出个openssl所需要的依赖包吧:

e2fsprogs-1.42.9-13.el7.x86_64.rpm

e2fsprogs-devel-1.42.9-13.el7.x86_64.rpm

e2fsprogs-libs-1.42.9-13.el7.x86_64.rpm

keyutils-1.5.8-3.el7.x86_64.rpm

keyutils-libs-1.5.8-3.el7.x86_64.rpm

keyutils-libs-devel-1.5.8-3.el7.x86_64.rpm

krb5-devel-1.15.1-34.el7.x86_64.rpm

krb5-libs-1.15.1-34.el7.x86_64.rpm

krb5-workstation-1.15.1-34.el7.x86_64.rpm

libcom_err-1.42.9-13.el7.x86_64.rpm

libcom_err-devel-1.42.9-13.el7.x86_64.rpm

libkadm5-1.15.1-34.el7.x86_64.rpm

libselinux-2.5-14.1.el7.x86_64.rpm

libselinux-devel-2.5-14.1.el7.x86_64.rpm

libselinux-utils-2.5-14.1.el7.x86_64.rpm

libsepol-2.5-10.el7.x86_64.rpm

libss-1.42.9-13.el7.x86_64.rpm

libss-devel-1.42.9-13.el7.x86_64.rpm

openssl-devel-1.0.2k-16.el7.x86_64.rpm

pkgconfig-0.27.1-4.el7.x86_64.rpm

zlib-1.2.7-18.el7.x86_64.rpm

zlib-devel-1.2.7-18.el7.x86_64.rpm

啊,天下太平,完~

我是如何一步步把客户的两台服务器给弄崩的相关推荐

  1. 两台linux服务器负载均衡代码实现,nginx实现负载均衡,nginx负载均衡确保两台服务器数据保...

    nginx实现负载均衡,nginx负载均衡确保两台服务器数据保 一.准备篇: Nginx 负载服务器: Centos 6.2 IP:192.168.1.93 WEB服务器: Web1:192.168. ...

  2. 两台服务器虚拟成一个ip地址,两台服务器如何用一个ip地址

    两台服务器如何用一个ip地址 内容精选 换一换 华为云帮助中心,为用户提供产品简介.价格说明.购买指南.用户指南.API参考.最佳实践.常见问题.视频帮助等技术文档,帮助您快速上手使用华为云服务. 检 ...

  3. 两台服务器公用一个显示器,两台服务器链接一台显示器

    两台服务器链接一台显示器 内容精选 换一换 在大型网络应用中,通常会使用多台服务器提供同一个服务.为了平衡每台服务器上的访问压力,通常会选择采用负载均衡来实现,提高服务器响应效率.云解析服务支持解析的 ...

  4. 前后端部署在两台服务器 服务器配置要求_漫谈前后端分离

    前言--浅谈前后端 在我的脑海中一提到前端和后端,基本上第一个出现的区别点就是:后端是跟数据库跟服务器打交道的,前端是跟浏览器打交道的.似乎没有什么问题,大家都这么认为的.当然这没有什么错,我们一直以 ...

  5. 两台linux之间带宽,测试两台服务器之间的网络带宽

    一.为什么选择了iperf 之前做了一个项目,说要测试两台服务器之间的带宽,本想通过拷贝来进行测试,后来客户觉得得出的数据没有说服性,于是改拿工具来进行测试.我们这回用的工具名字叫iperf. ipe ...

  6. DNS与Active Directory在两台服务器分别布署

    以前dns与Ad布署时,一般习惯布署在同一台服务器上.以下一个视频,就是把DNS与Active Directory分别布署在两台服务器上. DEMO使用的测试域名为:virbiznet.com(Vir ...

  7. SQL server 两台服务器间连接查询

    --两台服务器间连接查询: --建立连接: sp_addlinkedserver hs sp_addlinkedserver hs1 EXEC sp_addlinkedsrvlogin 'hs', ' ...

  8. linux服务器拷贝目录文件夹,linux两台服务器之间文件/文件夹拷贝

    linux两台服务器之间文件/文件夹拷贝 跨服务器拷贝需要用到的命令是scp. ----------------------拷贝文件夹--------------------------------- ...

  9. 使用NFS 实现两台服务器间的数据备份. -- NFS 设置部分.

    要求:把开发服务器,CRM 服务器中的每天数据备份文件拷贝到另一台备份服务器CRMBAK中. 1.在CRMBAK服务器的设置: 使用ROOT 登录CRMBAK. # ps -aux|grep port ...

最新文章

  1. DtCms.DAL.WebSet.cs
  2. springboot quartz动态任务处理
  3. 文本文件和二进制文件的区别
  4. 馀承东发布鸿蒙,鸿蒙系统一无是处?鸿蒙有何优势?
  5. java 连接 sftp失败_java – 文件上传到SFTP失败(Apache VFS)
  6. 重新命名的linux命令,Linux 重命名命令自制详细介绍
  7. 【JAVA基础】HashSet、LinkedHashSet、TreeSet使用区别
  8. Python接口自动化之动态数据处理
  9. [51nod1116]K进制下的大数
  10. android 扩展textview,Android可收缩/扩展的TextView【1】
  11. Go基础编程:运算符
  12. 知乎 live 记录
  13. 快速注册认证小程序,三分钟学会免300元认证企业小程序
  14. 群晖 nas docker 时间校准
  15. 阿里云跨云迁移工具案例实践:腾讯云迁移到阿里云
  16. 最新PHP编程零基础入门项目实战教程(完整)
  17. 科技企业家的自恋行为启示录
  18. win10开机自动有线连接拨号上网
  19. 7.3 向量的数量积与向量积
  20. 解决声卡爆音/杂音的四种方法

热门文章

  1. google财经板块股票信息查看的猜想
  2. RT-Thread—重映射串口到rt_kprintf
  3. python跳一跳脚本详解_跳一跳 python脚本 改进版
  4. 1000亿!苹果挨欧盟反避税第一刀,下一个是谁?
  5. 北京Uber优步司机奖励政策(12月31日)
  6. 分享些发表技术类文章的平台
  7. 巴比特 | 元宇宙每日必读:“国产VR之光”PICO正式出海,首发避战Meta,业内人士认为,此为缓兵之计,两者终有一战...
  8. Android Studio 配置翻译工具
  9. 张铭老师--沪师经纪
  10. [转载]20行Python代码爬取王者荣耀全英雄皮肤