杂学第十三篇:内网centos7安装软件或者其他动态库的依赖,本文章以安装openoffice为例(包含解决思路,可能适用其他系统)

需求

本来内网安装openoffice是很简单的事,解压,安装rpm文件就行,但是麻烦的是openoffice的运行环境,提示缺少库无法启动。如果你安装的机器比较新,毕竟装系统的时候并不会把所有动态依赖库都加载,一般就是需要的你在通过apt-get、wget、yum等方式安装即可,但是内网环境并不能使用这些,甚至这些命令都没有。那你怎么玩??

解决思路

  • 如果是单个动态库不存在,先看看本机有没有该动态库,有就创建软链接到执行目录下
  • 如果没有就看看当前系统的系统版本,去网上下载该系统版本的动态库的rpm,安装后在创建软连接到该执行目录下
  • 如果是某个比较大的环境没有,比如http,gcc等等,一般这种就需要依赖很多个动态库才行,一个个搞太麻烦了,特别是库与库之间也可能存在依赖关系。这个就需要直接点,你通过挂载同版本的dvd.iso镜像文件,通过里面的完整Packages安装你需要的环境

具体操作

解决单个动态库不存在的问题

  • 你首先尝试先运行你要启动的进程,我这里是openoffice:
    ./soffice -headless -accept="socket,host=127.0.0.1,port=8100;urp;" -nofirststartwizard &
  • 如果此时报错了,提示:
    error while loading shared libraries: libXext.so.6: cannot open shared object file: No such file or directory
    这里我是 libXext.so.6这个动态库没有。
  • 没有你就先找找本机能不能找到这个动态库,执行:
    find / -name libXext.so.6
    如果本机找到了,例如在/usr/lib64/下,你就需要创建软链接到当前openoffice的运行目录下
    ln -s /usr/lib64/libXext.so.6 /opt/openoffice/program/libXext.so.6
    最后通过ldd ./soffice.bin验证是否链接上,顺便也能查看当前执行程序的其他依赖动态库是否都找到了,没有再按上面的流程走一遍即可
  • 如果本机没有,你就在互联网环境根据内网机器的系统版本下载该库的rpm安装包,通过rpm -ivh *.rpm的方式安装,在创建软链接过去

通过挂载系统镜像的方式yum源本地安装

我这安装openofiice,他还需要一个X-Windows System的东西,需要安装,但是内网你无法通过yum groupinstall "X Window System"安装。然后又了解到它依赖的库多达好几百个,一个个安装是不可能的,也做不来这么傻的事,这个时候就可以通过挂载对应系统版本的DVD.iso文件安装。

  • 首先先去下载镜像文件
  • 在将镜像文件上传到服务器root文件夹
  • 创建挂载文件:mkdir /mnt/cdrom/(路径和名字任意)
  • 挂载镜像文件到此目录:mount /root/镜像文件.iso /mnt/cdrom
  • 进入yum的repo文件夹中:cd /etc/yum.repos.d/
  • 编辑新建文件cdrom.repo:vi cdrom.repo
  • 7.输入以下内容,并保存:
    [cdrom]
    name=cdrom
    baseurl=file:///mnt/cdrom
    gpgcheck=0
  • 清除yum缓存:yum clean all
  • 查看是否加载repo:yum repolist
  • 安装X-Winodws:yum groupinstall "X Window System"
  • 最后启动openoffice,卸载挂载:umount /mnt/cdrom

参考资料

  • https://www.cnblogs.com/javasl/p/13571496.html
  • https://blog.csdn.net/vanvan_/article/details/89501360
  • https://bbs.csdn.net/topics/396496711
  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值