libc.so.6 升级一直无法成功,有解吗?

2019-04-19 12:25:21 +08:00
 sjmcefc2
1.问题:rhel7 安装 tensorflow,提示 glibc-2.23 缺失,于是开始升级 libc.so.6
2.编译安装略过 /usr/local/glibc-2.23/ 。出现一个 warning。拷贝 libc-2.23.so 到 lib64 下面
3.开始替换
1 )
cd /lib64
2 )
LD_PRELOAD=/lib64/libc-2.17.so rm libc.so.6
3
LD_PRElOAD=/lib64/libc-2.23.so ln -s /lib64/libc-2.23.so /lib64/libc.so.6
第 3)步总是出错,而且提示不成功,只能重新软连接回去。。。。。

是编译有错(觉得一个 warning 不是什么问题哈)还是哪里不对呢?
9792 次点击
所在节点    Linux
80 条回复
mxtob
2019-04-19 23:04:39 +08:00
成功折腾过,最终策略把相关的版本全部 rm,然后过了。现在回想起来,映像中就是 linux 中 centos 自带太旧了,ubuntu 一直保持最新没有这些问题,还有 docker 真是一级棒,不怕搞坏内核。搜索问题中,百度基本都是搬国外的,google 给力多了,愿 lz 早日出坑吧
ThirdFlame
2019-04-19 23:13:17 +08:00
显然是官方 hub 啊 https://hub.docker.com/
不过官方有点慢,可以配置国内镜像 加速拉取
sjmcefc2
2019-04-19 23:26:31 +08:00
@yuikns 现在准备上 docker,就是母机用 centos7 呢,还是 ubuntu 呢?
@mxtob 的回复,好像 centos 也更新缓慢,
docker 是趋势哈,就是不知道怎么才能部署的完美
sjmcefc2
2019-04-19 23:32:16 +08:00
https://www.floydhub.com/

@ThirdFlame 类似上面这种哪里可以有呢?总觉得配置环境特别耗费时间。
ThirdFlame
2019-04-19 23:37:56 +08:00
@sjmcefc2 没搞过 tensorflow 帮不到你。 docker 本身并不麻烦 ,就是为了在不同的环境下 快速搭建相同的 /预设的环境而涉及的。 一开始没必要追求完美,先跑起来才是最重要的。
找到痛点,再次优化,追求完美。
sjmcefc2
2019-04-19 23:38:32 +08:00
@ThirdFlame ok。非常感谢。
mengzc
2019-04-19 23:45:49 +08:00
```觉得一个 warning 不是什么问题哈```
问题就在这里啊
sjmcefc2
2019-04-19 23:57:34 +08:00
@mengzc 真滴?一个 conf 文件没有哈。
wwhc
2019-04-20 00:12:56 +08:00
@sjmcefc2 Gentoo 下基本不存在升挂的问题,升级前系统会进行依赖检查,通不过不让你升,给个最近几年升级 glibc 的纪录:

Sat Oct 29 14:14:19 2016 >>> sys-libs/glibc-2.22-r4
Sat Jan 21 20:30:04 2017 >>> sys-libs/glibc-2.23-r3
Mon Oct 9 14:00:53 2017 >>> sys-libs/glibc-2.23-r4
Sat Nov 11 16:17:45 2017 >>> sys-libs/glibc-2.25-r8
Sat Nov 25 12:38:04 2017 >>> sys-libs/glibc-2.25-r9
Mon Jan 8 17:36:13 2018 >>> sys-libs/glibc-2.25-r9
Sat Feb 10 12:56:05 2018 >>> sys-libs/glibc-2.25-r10
Sat Mar 31 12:56:13 2018 >>> sys-libs/glibc-2.25-r11
Sat Jul 21 18:13:20 2018 >>> sys-libs/glibc-2.26-r7
Sat Oct 27 12:56:52 2018 >>> sys-libs/glibc-2.27-r6
Sat Apr 6 12:58:19 2019 >>> sys-libs/glibc-2.28-r5
Sat Apr 13 12:57:27 2019 >>> sys-libs/glibc-2.28-r6
sjmcefc2
2019-04-20 00:27:10 +08:00
@wwhc 您维护这个 gentoo 几年了?桌面?服务器?
sjmcefc2
2019-04-20 00:38:26 +08:00
再请教 docker 下的话,
1.母机选择 ubuntu ? centos ?
2.docker 下再安装 ubuntu,然后继续 pythno 之类?
3.还是直接找个现成的镜像?
yuikns
2019-04-20 00:51:17 +08:00
@sjmcefc2

1. 母鸡如果是 azure 之类云服务可以用 coreos,自己机房的话看已有技术栈。CentOS7 和 Ubuntu 16/18,Debian 9 等都应该没啥问题。
2. docker 下你可以直接用别人的 release 完事。
anaconda: https://hub.docker.com/_/anaconda
cuda: https://hub.docker.com/r/nvidia/cuda

cuda 的话我们经常是 dump 一个 environment.yml 然后在 cuda 里面安装个 miniconda,cuda update

https://blog.argcv.com/articles/6168.c

3. ref2. 此外,国内的话,阿里云有个容器服务,还可以创建私有仓库。在海外体验挺烂的,国内时有抽风,但不抽风的时候速度还很不错。
wwhc
2019-04-20 01:18:53 +08:00
@sjmcefc2 桌面和服务器都有,其中一台服务器已经连续运行超过 7 年了吧,都是脚本自动滚,定期手动检查
sjmcefc2
2019-04-20 01:35:24 +08:00
@yuikns 感谢。centos7 和 rhel7 差别很大吗 /总感觉一回事儿。。看来我错了。
这几个都比较熟悉。
2.直接用别人的 release 挺好,就是不知道会不会是版本比较低? R 就有这个问题。还有就是综合性的环境不知道哪里可以找到。
3.说到 gpu 计算 ,大家都用什么卡 呢,有什么性价比高的推荐
yuikns
2019-04-20 03:27:09 +08:00
@sjmcefc2 1. centos 和 rhel 主要区别在订阅。企业有钱让红帽兜底那自然是最好的。
2. 不会。库里面有很多 tag,类似 git 中的 branch。通常同样 tag 会保持兼容,你一直想要最新的话,用 latest 就行。cuda/anaconda 都是设定好 webhook 后跟着上游自动更新的。
顺便,docker 不太推荐 “综合性环境”,通常要傻依赖啥。py 的话,anaconda 一配它就是综合。
3. 老板给啥用啥。P40 和 V100 都行 -- 这个不算回复...
msg7086
2019-04-20 04:08:59 +08:00
@sjmcefc2 #63
CentOS 和 RHEL 不是更新缓慢的问题。RHEL 本来就是 3-5 年会出一个版本,你在他刚发布的时候用,当然什么都是新的。你等他过了 5 年再用,那当然什么都是旧的。RHEL 7 发布的时候 glibc 是 2.17 ,那么 7 这辈子都只能用 2.17 ,因为更新到新版本就会可能破坏这个平台上所有的软件兼容性。(有时候甚至有些 Bug 也不能修,因为有些程序会依赖一些 Bug 行为,随便修改行为也会导致其他程序出现问题。 )

RHEL 的「稳定」并不是说「运行稳定」,而是说平台稳定,这个平台在生命周期中不会改变。Debian 也好 Ubuntu 也好,固定发行版都是这样的,一旦发布以后就不会再升级软件包了,而只会安装更新。

同理,一些专业的、大型的软件,也会固定在某个版本的发行版上进行开发。不少软件会要求说你必须使用某个发行版的某个版本来运行(比如 Tensorflow 要求 Ubuntu 16/18,我司开发的某个软件要求 Ubuntu 12.04 ,等等),因为他们只针对这个稳定平台进行开发和测试,你如果想要适配到别的发行版,那你就得自己做小白鼠吃螃蟹了。

@sjmcefc2 #53
我的意思是 Tensorflow 官方的 docker 镜像是基于 Ubuntu 制作的。
sjmcefc2
2019-04-20 07:16:32 +08:00
@yuikns
@msg7086 非常感谢你们的宝贵经验。简直太棒了,终于明白了什么是稳定的内涵。
我试着用 docker 来搞一搞。
谢谢帖子里各位的热切讨论。
tt0411
2019-04-20 11:02:05 +08:00
Linux 系统软件的依赖管理就是这么操蛋, 上虚拟化吧, virtualbox 或者 docker
cubecube
2019-04-20 11:20:37 +08:00
曾经强行覆盖 libc.so,服务器暴毙。。。
heraldic
2019-04-20 17:14:38 +08:00
glibc 我是不敢升级的,干脆重装系统

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/556737

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX