V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Distributions
Ubuntu
Fedora
CentOS
中文资源站
网易开源镜像站
AllOfMe
V2EX  ›  Linux

yum 安装有点麻烦,依赖的 so 经常会冲突,求问一下各位有没有更好的解决办法来通过免安装的形式使用程序?

  •  
  •   AllOfMe · 2018-06-27 12:00:23 +08:00 · 3339 次点击
    这是一个创建于 2341 天前的主题,其中的信息可能已经有所发展或是发生改变。

    问题是这样的,平时在 centos 上安装 yum 常常会遇到依赖软件版本过低等问题,但是为了风险我不太敢随意操作。我想问一下,能不能像 jdk 一样,将所有依赖的库文件,软件都打包成一个文件夹,然后不依赖任何的外部因素从而可以调用到这个程序?就像是 mysql 的免安装版本,解压之后即可使用。
    听起来可能像 docker,但是奈何 centos6.5 安装 docker-ce 简直想哭,docker-ee 商业使用估计是不被准许的了。。。
    各位有没有更好的主意?在这里先多谢了!

    21 条回复    2018-06-29 19:46:42 +08:00
    dorothyREN
        1
    dorothyREN  
       2018-06-27 12:01:21 +08:00   ❤️ 1
    用 docker 为什么不升级到 centos7
    AllOfMe
        2
    AllOfMe  
    OP
       2018-06-27 12:03:59 +08:00
    @dorothyREN 因为涉及原有的系统上业务还在跑,不敢随意升级,而且这个升级也需要领导才可以的。。。
    AllOfMe
        3
    AllOfMe  
    OP
       2018-06-27 12:04:17 +08:00
    因为涉及原有的系统上业务还在跑,不敢随意升级,而且这个升级也需要领导批准才可以的。。。
    AllOfMe
        4
    AllOfMe  
    OP
       2018-06-27 12:04:35 +08:00
    @dorothyREN 因为涉及原有的系统上业务还在跑,不敢随意升级,而且这个升级也需要领导批准才可以的。。。
    AllOfMe
        5
    AllOfMe  
    OP
       2018-06-27 12:04:54 +08:00
    不好意思,刚刚多发了几个贴,请谅解
    dorothyREN
        6
    dorothyREN  
       2018-06-27 12:05:26 +08:00
    @AllOfMe 用 docker 直接上新环境部署啊。
    MeteorCat
        7
    MeteorCat  
       2018-06-27 12:09:12 +08:00 via Android
    可以考虑自己编译安装,不过对于相关依赖都需要自己去编译,最好是本地部署和正式环境一致的,千万千万不要把生产正式环境当实验田
    AllOfMe
        8
    AllOfMe  
    OP
       2018-06-27 12:10:00 +08:00
    @dorothyREN 恩,下次新环境会的,现在的环境安装 docker 还是比较麻烦
    ss098
        9
    ss098  
       2018-06-27 12:14:16 +08:00
    Ubuntu 中有 Snapcraft。

    https://snapcraft.io/
    dorothyREN
        10
    dorothyREN  
       2018-06-27 12:15:59 +08:00
    @AllOfMe 6 是内核太老了,升级一下内核或者打补丁吧
    AllOfMe
        11
    AllOfMe  
    OP
       2018-06-27 12:16:42 +08:00
    @dorothyREN 嗯嗯,我去尝试一下
    AllOfMe
        12
    AllOfMe  
    OP
       2018-06-27 12:16:58 +08:00
    @ss098 好的,谢谢!
    lolizeppelin
        13
    lolizeppelin  
       2018-06-27 12:23:33 +08:00   ❤️ 1
    因为你不了解依赖关系,所以 yum 才搞不定 2333, 想系统的解决这些依赖关系...自己多打点 rpm 包就懂了

    "能不能像 jdk 一样,将所有依赖的库文件,软件都打包成一个文件夹"

    这样所有软件之间就没依赖关系了....硬盘浪费是小...因为 so 都是独立的..内存也会浪费很多,系统包管理很看重共享,管理再混乱点的就走 js 的路线了 2333
    AsisA
        14
    AsisA  
       2018-06-27 12:35:11 +08:00 via Android
    试试 AppImage ?
    reus
        15
    reus  
       2018-06-27 12:43:03 +08:00
    chroot.
    yanaraika
        16
    yanaraika  
       2018-06-27 12:46:50 +08:00
    1 CentOS 6 SB
    2 千万不要自己编译
    3 静态编译或者 chroot/appimage 了解一下
    AllOfMe
        17
    AllOfMe  
    OP
       2018-06-27 13:48:41 +08:00
    @yanaraika
    谢谢建议。有一点不太明白,为啥不能自己编译软件呢?

    @reus
    @AsisA
    好的,谢谢您的建议!


    @lolizeppelin
    ^_^,其实我就是想把这个依赖的东西像 node_modules 一样全都放在一起,需要的时候可以直接运行。硬盘大小无所谓,内存我觉得也是无所谓的,我去详细了解一下 rpm 包
    lolizeppelin
        18
    lolizeppelin  
       2018-06-27 14:06:55 +08:00   ❤️ 1
    @AllOfMe
    你怎么做是没关系的...
    重点是 yum 管理的是系统里的包....整体系统的管理自然走自己的管理方式 你不能要求系统管理按你的需求走....

    你想要一个直接打包在一起不依赖其他的包....很简单...自己做一个单独的 rpm 就是...
    比如 rime 源的 php7....自己的包和自己包玩....系统包依赖照样按系统包走,yum 的时候指定源就是

    当然你不打包都看整一个 tar 解压也一样,只不过这种方式不是标准做法而已.
    AllOfMe
        19
    AllOfMe  
    OP
       2018-06-27 14:18:46 +08:00
    @lolizeppelin 嗯嗯,了解了!谢谢!
    julyclyde
        20
    julyclyde  
       2018-06-28 20:42:03 +08:00   ❤️ 1
    这是你自己的问题,不是 yum 的问题啊
    不要试图用错误的方法解决你自己的问题
    AllOfMe
        21
    AllOfMe  
    OP
       2018-06-29 19:46:42 +08:00
    @julyclyde 好的,谢谢建议!
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2819 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 25ms · UTC 07:09 · PVG 15:09 · LAX 23:09 · JFK 02:09
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.