已配置好環境,可以編譯程序,但是啓動hadoop 和每次運行命令 會出現以下警告(不影響使用,看着不舒服)
WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable
翻譯:警告:無法爲您的平臺加載本機Hadoop庫…使用可應用的Java類
解決方法:
一.在hadoop配置文件log4j.properties文件中添加以下內容,將警告無視掉
log4j.logger.org.apache.hadoop.util.NativeCodeLoader=ERROR
-----------------------------------------------------------------------------------------------------------------
二.在文件hadoop-env.sh中增加以下環境變量,使其指向hadoop本地lib:
export HADOOP_OPTS="-Djava.library.path=${HADOOP_HOME}/lib/native"
1.還是有警告且出現Starting namenodes on [OpenJDK Client VM warning: You have loaded library /usr/local/hadoop/lib/native/libhadoop.so.1.0.0 which might have disabled stack guard. The VM will try to fix the stack guard now.
解決方法:查看系統位數(getconf LONG_BIT) 與 libhadoop.so.1.0.0是否一致(file libhadoop.so.1.0.0) 不一致在網上找對應位數native庫或者自己編譯或者換個操作系統。
2.還是有警告可以ldd libhadoop.so.1.0.0,出現version `GLIBC_2.14' not found。
解決方法:可安裝相應版本的glibc。
以上均親測,可能由於版本或個人使用問題有細微差異