问题是这样的,平时在 centos 上安装 yum 常常会遇到依赖软件版本过低等问题,但是为了风险我不太敢随意操作。我想问一下,能不能像 jdk 一样,将所有依赖的库文件,软件都打包成一个文件夹,然后不依赖任何的外部因素从而可以调用到这个程序?就像是 mysql 的免安装版本,解压之后即可使用。
听起来可能像 docker,但是奈何 centos6.5 安装 docker-ce 简直想哭,docker-ee 商业使用估计是不被准许的了。。。
各位有没有更好的主意?在这里先多谢了!
1
dorothyREN 2018-06-27 12:01:21 +08:00 1
用 docker 为什么不升级到 centos7
|
2
AllOfMe OP @dorothyREN 因为涉及原有的系统上业务还在跑,不敢随意升级,而且这个升级也需要领导才可以的。。。
|
3
AllOfMe OP 因为涉及原有的系统上业务还在跑,不敢随意升级,而且这个升级也需要领导批准才可以的。。。
|
4
AllOfMe OP @dorothyREN 因为涉及原有的系统上业务还在跑,不敢随意升级,而且这个升级也需要领导批准才可以的。。。
|
5
AllOfMe OP 不好意思,刚刚多发了几个贴,请谅解
|
6
dorothyREN 2018-06-27 12:05:26 +08:00
@AllOfMe 用 docker 直接上新环境部署啊。
|
7
MeteorCat 2018-06-27 12:09:12 +08:00 via Android
可以考虑自己编译安装,不过对于相关依赖都需要自己去编译,最好是本地部署和正式环境一致的,千万千万不要把生产正式环境当实验田
|
8
AllOfMe OP @dorothyREN 恩,下次新环境会的,现在的环境安装 docker 还是比较麻烦
|
9
ss098 2018-06-27 12:14:16 +08:00
|
10
dorothyREN 2018-06-27 12:15:59 +08:00
@AllOfMe 6 是内核太老了,升级一下内核或者打补丁吧
|
11
AllOfMe OP @dorothyREN 嗯嗯,我去尝试一下
|
13
lolizeppelin 2018-06-27 12:23:33 +08:00 1
因为你不了解依赖关系,所以 yum 才搞不定 2333, 想系统的解决这些依赖关系...自己多打点 rpm 包就懂了
"能不能像 jdk 一样,将所有依赖的库文件,软件都打包成一个文件夹" 这样所有软件之间就没依赖关系了....硬盘浪费是小...因为 so 都是独立的..内存也会浪费很多,系统包管理很看重共享,管理再混乱点的就走 js 的路线了 2333 |
14
AsisA 2018-06-27 12:35:11 +08:00 via Android
试试 AppImage ?
|
15
reus 2018-06-27 12:43:03 +08:00
chroot.
|
16
yanaraika 2018-06-27 12:46:50 +08:00
1 CentOS 6 SB
2 千万不要自己编译 3 静态编译或者 chroot/appimage 了解一下 |
17
AllOfMe OP @yanaraika
谢谢建议。有一点不太明白,为啥不能自己编译软件呢? @reus @AsisA 好的,谢谢您的建议! @lolizeppelin ^_^,其实我就是想把这个依赖的东西像 node_modules 一样全都放在一起,需要的时候可以直接运行。硬盘大小无所谓,内存我觉得也是无所谓的,我去详细了解一下 rpm 包 |
18
lolizeppelin 2018-06-27 14:06:55 +08:00 1
@AllOfMe
你怎么做是没关系的... 重点是 yum 管理的是系统里的包....整体系统的管理自然走自己的管理方式 你不能要求系统管理按你的需求走.... 你想要一个直接打包在一起不依赖其他的包....很简单...自己做一个单独的 rpm 就是... 比如 rime 源的 php7....自己的包和自己包玩....系统包依赖照样按系统包走,yum 的时候指定源就是 当然你不打包都看整一个 tar 解压也一样,只不过这种方式不是标准做法而已. |
19
AllOfMe OP @lolizeppelin 嗯嗯,了解了!谢谢!
|
20
julyclyde 2018-06-28 20:42:03 +08:00 1
这是你自己的问题,不是 yum 的问题啊
不要试图用错误的方法解决你自己的问题 |