情景:安裝hadoop後啓動運行HDFS報錯:WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable
其實hdfs正常運行,各節點namenode和datanode等都正常運行的。但是就是有警告,不論是開啓hdfs、關閉hdfs、或執行hdfs先關指令都始終警告:
其實呢是native-hadoop library本地庫不一致導致了該問題的出現:
進入hadoop的native目錄查看:#cd apps/hadoop-2.8.4//lib/native
# ldd libhadoop.so.1.0.0
# ldd --version
會發現問題:
系統預裝的glibc庫是2.12版本,而hadoop的設定是2.14版本,所以打印警告信息,但是並不影響,所以我乾脆掩耳盜鈴:
乾脆在log4j日誌中去除告警信息:在apps/hadoop-2.8.4/etc/hadoop/log4j.properties文件末尾中追加
log4j.logger.org.apache.hadoop.util.NativeCodeLoader=ERROR
這樣修改是把它的權限設置高了,只有ERROR的時候纔會報錯顯示,Warn是不再提示了
保存退出
完美解決。不礙事的這個BLIBC。