消除低版本os运行Hadoop时的警告

问题来源

  1. hadoop运行时出现警告
[ WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable ]
  1. 打开调试,查看具体的报错信息
# 1) 开启调式模式
$ vi /etc/profile
Export HADOOP_ROOT_LOGGER=DEBUG,console
# 2) 刷新环境变量
$ source /etc/profile
# 3) 发现提示说glibc2.14 not found,于是尝试安装glibc2.14
  1. 其实这个警告没有实质影响, 建议不要去管
  2. glibc是底层架包,搞不好系统就gg了,所以尽量不要手动更新. 如果一定要更新, 请先做好系统备份
  3. glibc的安装文件解压后, 可以从readme中找到完整流程. 应该结合官方流程进行glibc的手动更新, 因为网上的教程可能有不完整

问题解决

  1. 搜索下载并上传对应版本的glibc, 一般需要的是2.14版本
  2. 解压缩: tar -zxvf /data/glibc-2.14.tar.gz -C /apps/
  3. 切换到解压目录: cd /apps/glibc-2.14/
  4. 新建目录, 用于安装: mkdir build
  5. 切换目录: cd build
  6. 准备安装: ../configure --prefix=/usr/local/glibc-2.14/ --with-headers=/usr/include/
    这里如果警告缺少依赖: makeinfo, 需要用yum安装texinfo; 类似的,如果缺少msgfmt, 需要安装gettext
  7. 安装:
$ make -j4
# 控制台依次输出指令
$ make install
#错误: Can't open configuration file /usr/local/glibc-2.14/etc/ld.so.conf: No such file or directory
#解决:
$ cp /etc/ld.so.c* /usr/local/glibc-2.14/etc/
  1. 同步本地设置: make localedata/install-locales
  2. 删除原有链接: rm -rf /lib64/libc.so.6
    重建链接: LD_PRELOAD=/usr/local/glibc-2.14/lib/libc-2.14.so ln -s /usr/local/glibc-2.14/lib/libc-2.14.so /lib64/libc.so.6
    确认链接: ln -s /usr/local/glibc-2.14/lib/libc-2.14.so /lib64/libc.so.6
    查看glibc是否更新: strings /lib64/libc.so.6 | grep GLIBC_
    查看版本信息: lib64/libc.so.6
    重设时区: ln -fs /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
    export TZ='Asia/Shanghai'
    ~/.bashrc 文件中

整体流程: https://blog.csdn.net/qq_25927437/article/details/80824119
细节: https://www.cnblogs.com/Mrhuangrui/p/7766554.html

猜你喜欢

转载自blog.csdn.net/IAmListening/article/details/90206109
今日推荐