Take a look at


and look for 'Using the LinuxTaskController'

It has the info on what the permission and ownership of the task controller executable should be.

Arpit Gupta
Hortonworks Inc.

On Sep 17, 2012, at 8:04 PM, Yongzhi Wang <wang.yongzhi2009@gmail.com> wrote:

Dear All,

I am currently deploying hadoop 1.0.3 on my Debian 32-bit Linux. I
think need a 32-bit binary file taskcontroller. However, I found the
files provided in hadoop 1.0.3 is 64 bit. I downloaded the hadoop
build file from server jenkins
It's still a 64 bit file.

I got the following errors when I start task tracker using the hadoop
64-bit taskcontroller:

12/09/17 11:59:58 ERROR mapred.TaskTracker: Can not start task tracker
because java.io.IOException: Task controller setup failed because of
invalidpermissions/ownership with exit code 126
       at org.apache.hadoop.mapred.LinuxTaskController.setup(LinuxTaskController.java:143)
       at org.apache.hadoop.mapred.TaskTracker.<init>(TaskTracker.java:1452)
       at org.apache.hadoop.mapred.TaskTracker.main(TaskTracker.java:3742)
Caused by: org.apache.hadoop.util.Shell$ExitCodeException:
/opt/ywang/hadoop-1.0.3/libexec/../bin/task-controller: cannot execute
binary file

       at org.apache.hadoop.util.Shell.runCommand(Shell.java:255)
       at org.apache.hadoop.util.Shell.run(Shell.java:182)
       at org.apache.hadoop.util.Shell$ShellCommandExecutor.execute(Shell.java:375)
       at org.apache.hadoop.mapred.LinuxTaskController.setup(LinuxTaskController.java:137)

I am wondering if not providing 32-bit of taskcontroller is a build
bug, or 64-bit taskcontroller can be used somehow on the 32-bit
platform? If no 32-bit executable is provided in the daily build of
hadoop, how can I build one by myself?