背景

一台 Centos7.5 的服务器需要进行一些在线编辑操作,自带的 vi 功能太薄弱,因为希望安装一个 vim,然而该服务器是不能访问外网,因此在网上找了一些教程尝试安装。

思路

1. 找 vim 二进制包。

任何安装最先考虑的就是看看 vim 是否有对应的 linux 二进制包文件,如果有就直接下载下来,然后传到服务器上 /usr/local/bin 目录下即可,然而经过多次搜索并没有找到。

2. 直接编译 vim

首先在选择这种方案时,一定要确保服务器上已经安装好了 gcc 等编译工具,如果没有,则可以直接跳过了,因为会非常费时。

3. 找对应的 rpm 包

使用 rpm 包最头疼的问题就是依赖问题,如果下载一个 vim 对应 rpm 包就装成功了,那么就不用参考这篇文章了,这里因为服务器是最小化安装,因此很多包都没有安装,于是这种貌似是行不通的。

然而网上有大佬利用 Docker 来构建与服务器类似的环境,然后把所有的依赖包都找出来并下载,这样把这些依赖全部上传到服务器上,即可安装成功,下面则是操作步骤:

  • 获取离线服务器的系统信息

    cat /etc/centos-release
    # CentOS Linux release 7.5.1804 (Core)
    
  • 使用 Docker 在本地构建离线服务器环境
    # 这里需要进入 dockerhub 里面找到 centos 官方源,查看下是否有离线服务器相同的镜像版本,
    # 如果找到了,则可以运行下面的命令
    #下面命令会自动下载 centos 镜像,然后创建容器
    docker run -d --rm --name centos-demo centos:centos7.5.1804 tail -f /dev/null
    
  • 在 Docker 容器中下载 vim 所有依赖
    # 使用容器里面的环境下载 vim 相关依赖
    docker exec -it centos-demo yum install --downloaddir=/tmp/vim-lib --downloadonly vim
    # 将依赖从容器中拷贝到宿主机
    docker cp centos-demo:/tmp/vim-lib .
    
  • 将 vim 依赖上传到离线服务器,然后安装
    # 将vim-lib 文件夹上传到离线服务器上,然后进入到文件夹执行下列命令
    yum install -y vim-*
    

通过上面的操作即完成了 vim 的离线安装,因为 docker 镜像一般时最小化的,所以它会把所有的依赖都下载下来,因为一定是满足服务器的依赖要求的。

总结

之前好几次遇到这种离线部署的情况,找不到对应的二进制包,弄 rpm 的依赖简直到崩溃,今天有时间尝试了下网上大佬的方案,非常的高效,详情可以阅读参考中的第一个链接。

上面的方法可用于所有的包安装,只要能在 docker hub 上找到对应的版本镜像即可。

参考

https://www.jianshu.com/p/9d6b138e366f
https://hub.docker.com/_/centos?tab=tags

离线安装vim详细步骤相关推荐

  1. OpenResty介绍和CentOS6.5离线安装Openresty详细步骤

    Lua介绍 Lua 是一个小巧的脚本语言.它是巴西里约热内卢天主教大学(Pontifical Catholic University of Rio de Janeiro)里的一个由Roberto Ie ...

  2. python3.7.2安装步骤-python安装升级详细步骤 Python2 升级 Python3

    多数情况下,系统自动的Python版本是2.x, 或者yum直接安装的也是2.x ,但是,现在多数情况下建议使用3.x ,那么如何升级呢? ,下面老徐详细讲解升级步骤; 首先下载源tar包 可利用li ...

  3. Linux安装mysql详细步骤

    linux安装mysql详细步骤 最近买了个腾讯云服务器,搭建环境. 该笔记用于系统上未装过mysql的干净系统第一次安装mysql.自己指定安装目录,指定数据文件目录. linux系统版本: Cen ...

  4. 大数据系列之:安装pulsar详细步骤

    大数据系列之:安装pulsar详细步骤 一.Pulsar版本和jdk对应关系 二.安装JDK 三.设置和激活jdk环境变量 四.下载和解压Pulsar 五.查看Pulsar目录 六.启动Pulsar ...

  5. Centos安装MySQL详细步骤(亲妈级教程)

    Centos安装MySQL详细步骤(亲妈级教程) {ubuntu安装mysql,其他linux安装MySQL同理} 0.下载 官网下载:MySQL 百度云下载: 链接:https://pan.baid ...

  6. mac-m1安装jmeter详细步骤

    mac-m1安装jmeter详细步骤 查看jdk安装路径:/usr/libexec/java_home -V 修改jmeter的java路径 vim /opt/homebrew/Cellar/jmet ...

  7. 哪些是能安装mysql的文件_安装mysql详细步骤有哪些?

    安装mysql详细步骤有哪些? 安装mysql详细步骤有: MySQL下载 进入页面官网,找到下载页面页面下拉,找到如下图,然后点击下载Windows (x86, 64-bit), ZIP Archi ...

  8. centos7安装es mysql_Centos7 安装MySQL详细步骤

    Centos7 安装MySQL详细步骤 首先在虚拟机中安装一个Centos7(VM虚拟机安装Centos7) 1.1 MySQL安装 1.1.1 下载wget命令 yum -y install wge ...

  9. centos6.8安装oracle12C 详细步骤讲解

    2019独角兽企业重金招聘Python工程师标准>>> centos6.8安装oracle12C 详细步骤讲解 安装前环境配置 1 root身份安装依赖包 [root@dlp ~]# ...

最新文章

  1. 测试Python下载图片的三种方法
  2. cocos2x (c++/lua) spine 文件的预加载
  3. PHP用CURL伪造IP和来源
  4. flutter 怎么拦截请求_flutter中事件传递:禁止用户交互 获取点击事件
  5. oracle容错,Oracle DML容错处理方法
  6. ftp改为sftp_浅谈 FTP、FTPS 与 SFTP
  7. mos管开关电路_【电路】MOS管开关电路图详解(一)
  8. java观察者模式在spring中的应用_在Spring中使用观察者模式
  9. NginX下Openssl的构建和部署数字证书,支持HTTPS
  10. 顺利通过EMC实验(9)
  11. 元气森林高管柳甄离职 回应:因个人原因选择离职 表示理解和尊重
  12. 【报告分享】致胜直播带货十大法则.pdf(附下载链接)
  13. 编程细节 —— 按值传递、按引用传递(final、const)
  14. 21天学通C语言-学习笔记(6)
  15. MySQL一些随机函数记录
  16. 阿里云存储OSS《快速使用》
  17. 人工智能ai换脸技术_人工智能技术如何帮助企业改善营销
  18. js根据开始日期和相隔天数计算出结束日期
  19. Office 365平台及其价值主张
  20. 示波器表笔旁边的夹子是什么_示波器探头的地线夹子应该要靠近测量点

热门文章

  1. 基本sql语句练习(学生表)
  2. 3DGS脚本教程翻译(11)-指针
  3. 2023世界超高清视频产业发展大会博冠8K明星展品介绍
  4. Prism框架初识-模块化介绍
  5. 都是技术人员,还要分三六九等区别对待?
  6. 【健康】减脂-只为下一个健康的10年
  7. pyqt5 qfont 字体_PyQt5 控件字体样式等设置
  8. 指引线leader-line库的使用
  9. 兄弟hl4150cdn感叹号5_兄弟HL-4150CDN驱动
  10. 怎样将抖音橱窗上小店商品图片批量导出并保存