2011-10-06 6 views
1

나는 다음과 같은 스택 추적에 실패 하둡 작업을 실행하면하둡 : 때 java.io.IOException : 재산권에 대한 올바른 로컬 디렉토리 : mapred.local.dir

11/10/06 13:12:49 INFO mapred.FileInputFormat: Total input paths to process : 1 
11/10/06 13:12:49 INFO mapred.JobClient: Cleaning up the staging area hdfs://localhost:54310/app/hadoop/tmp/mapred/staging/Har/.staging/job_201110051450_0007 
11/10/06 13:12:49 ERROR streaming.StreamJob: Error Launching job : java.io.IOException: java.io.IOException: No valid local directories in property: mapred.local.dir 
    at org.apache.hadoop.mapred.JobTracker.submitJob(JobTracker.java:3923) 
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) 
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) 
    at java.lang.reflect.Method.invoke(Method.java:597) 
    at org.apache.hadoop.ipc.RPC$Server.call(RPC.java:523) 
    at org.apache.hadoop.ipc.Server$Handler$1.run(Server.java:1383) 
    at org.apache.hadoop.ipc.Server$Handler$1.run(Server.java:1379) 
    at java.security.AccessController.doPrivileged(Native Method) 
    at javax.security.auth.Subject.doAs(Subject.java:396) 
    at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1059) 
    at org.apache.hadoop.ipc.Server$Handler.run(Server.java:1377) 
Caused by: java.io.IOException: No valid local directories in property: mapred.local.dir 
    at org.apache.hadoop.conf.Configuration.getLocalPath(Configuration.java:948) 
    at org.apache.hadoop.mapred.JobConf.getLocalPath(JobConf.java:457) 
    at org.apache.hadoop.mapred.JobInProgress.<init>(JobInProgress.java:401) 
    at org.apache.hadoop.mapred.JobTracker.submitJob(JobTracker.java:3921) 
    ... 11 more 

Streaming Job Failed! 

가 어떻게이 문제를 해결할 수 있습니까?

고맙습니다.

+0

'mapred-site.xml'을보고'mapred.local.dir' 속성을 확인하십시오. 쉼표로 구분 된 디렉토리 목록이 있습니까? 그렇다면 해당 디렉토리에 대한 읽기 및 쓰기 권한이 있습니까? 내가 따르는 문서의 –

+0

은 결코이 값을 설정하지 않겠지 만, http://www.michael-noll.com/tutorials/running-hadoop-on-ubuntu-linux-single-node-cluster/, – daydreamer

+0

이 작업을하지 못했습니다. ( – daydreamer

답변

3

mapred.local.dir을 올바르게 구성해야합니다. 그것이 mapred-site 또는 hdfs-site에 구성되어 있는지 확인하십시오. 디렉토리가 있어야합니다. 작업을 실행하는 사용자는이 디렉토리에 대해 적절한 허가를 받아야합니다.

+0

기본값은 $ {hadoop.tmp.dir}/mapred/local입니다. – user1965449