windows下Eclipse远程连接linux hadoop远程调试 经验(一)
环境
Windows 7 64bit
JDK 1.6.0_45 (i586)
JDK 1.7.0_51 (i586)
Eclipse Kepler
Eclipse -plugin-1.2.1.jar
Hadoop 1.2.1 (32位的库)
服务器 hadoop与 本机的hadoop版本完全一致。
Note:我设置的Hadoop Master的 用户名是 root
正确配置
本机不需要 改windows用户名
<property> <name>hadoop.tmp.dir</name>
<value>/home/tmp</value>
<description>A base for other temporary directories.</description>
</property>
12/04/24 15:32:44 ERROR security.UserGroupInformation: PriviledgedActionException as:dell cause:java.io.IOException: Failed to set permissions of path: \tmp\hadoop-root\mapred\staging\root-519341271\.staging to 0700
Exception in thread "main" java.io.IOException: Failed to set permissions of path: \tmp\hadoop-root\mapred\staging\root-519341271\.staging to 0700
Configuration conf = new Configuration();
//conf.set("dfs.permissions", "false");
//conf.set("hadoop.job.user", "root");
//conf.set("mapred.job.tracker", "xxx.xxx.xxx:9001");
java.lang.RuntimeException: java.lang.ClassNotFoundException: wdc.WordCount$TokenizerMapper
at org.apache.hadoop.conf.Configuration.getClass(Configuration.java:857)
at org.apache.hadoop.mapreduce.JobContext.getMapperClass(JobContext.java:199)
at org.apache.hadoop.mapred.MapTask.runNewMapper(MapTask.java:718)
at org.apache.hadoop.mapred.MapTask.run(MapTask.java:364)
at org.apache.hadoop.mapred.Child$4.run(Child.java:255)
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:1190)
<property> <name>dfs.permissions</name>
<value>false</value> <description>
If "true", enable permission checking in HDFS. If "false", permission checking is turned off ,but all other behavior is unchanged. Switching from one parameter value to the other does not change the mode, owner or group of files or directories
</description> </property>
百度了一下,这是 hadoop-core-1.2.1.jar的问题 Windows下 和 linux用户权限不一致的问题。在linux下没有这个问题。
那么把 hadoop-1.2.1/src/core/org/apache/hadoop/fs/FileUtil.java里面的checkReturnValue方法,注释掉重新编译即可
private staticvoid checkReturnValue(boolean rv, File p,
FsPermission permission) throws IOException {
// if (!rv){
// throw newIOException("Failed to set permissions of path: " + p +
// " to" +
//String.format("%04o", permission.toShort()));
// }
}
我懒得编译这个hadoop-core-1.2.1.jar于是百度 搜了一个 放在本地 hadoop的根目录下。
这个问题是
这个错误在之前就见过。说明 之前改的 dfs.permission 无效,而真正的解决方法是 重新编译 hadoop-core-1.2.1.jar
那么 我又 切换到 Win7的 自己的账号下,依然可以运行 成功。
证明 不需要改Win7的用户名。
windows下Eclipse远程连接linux hadoop远程调试 经验(一)的更多相关文章
- Windows下fabric sdk连接Linux上fabric网络的调试过程
上个月刚入职一家公司从事区块链研发工作,选型采用Hyperledger Fabric作为开发平台.团队的小组成员全部采用的是在VirtualBox上面安装桌面版的Ubuntu 16.04虚拟机,开发工 ...
- 在Windows下使用Navicat连接Linux下的MySql
Linux下的Mysql安装可以参考菜鸟教程:https://www.runoob.com/mysql/mysql-install.html 安装完成后你会发现用Navicat链接MySql会失败,这 ...
- windows下eclipse远程连接hadoop集群开发mapreduce
转载请注明出处,谢谢 2017-10-22 17:14:09 之前都是用python开发maprduce程序的,今天试了在windows下通过eclipse java开发,在开发前先搭建开发环境.在 ...
- windows下使用vnc viewer远程连接Linux桌面(转)
在windows下使用vnc viewer远程连接Linux桌面,主要配置步骤: Linux: 1.rpm -qa vnc //查看是否安装vnc服务,如果没有安装,可以使用yum,或者rpm进行安装 ...
- Windows远程连接Linux
目录 xrdp方式 vnc方式 xrdp方式 ----------------------------------------------------------------------------- ...
- windows远程连接Linux(Ubuntu)的方法
需要做的工作: 1.在Linux(Ubuntu)端安装.设置好SSH 2.下载putty,并通过putty的SSH连接登录Linux 一 .如何在Linux(Ubuntu)端安装.设置好SSH,获取I ...
- 虚拟机VMware网络类型&&SSH远程连接Linux
前言: Linux专题是16年11月开始写,说来惭愧,已经5个月没学Linux,至今感觉连入门还没达到.暑假实习有投运维开发岗位,无奈对Linux不熟悉,校招简历也被刷了.so, 我打算先花1个月内的 ...
- Sublime 远程连接 Linux服务器
Sublime是一款强大的编辑器,它的强大体现在它强大的插件. 要实现Sublime 远程连接 Linux服务器,需要使用插件SFTP. 一. 插件安装 用Package Control安装插件按下C ...
- Android源码浅析(六)——SecureCRT远程连接Linux,配置端点和字节码
Android源码浅析(六)--SecureCRT远程连接Linux,配置端点和字节码 需要编译源码的同学,一般都是win+虚拟机吧,但是再虚拟机里体验并不是很好,所有市面上有很多的软件能够做到在wi ...
随机推荐
- 品Spring:实现bean定义时采用的“先进生产力”
前景回顾 当我们把写好的业务代码交给Spring之后,Spring都会做些什么呢? 仔细想象一下,再稍微抽象一下,Spring所做的几乎全部都是: “bean的实例化,bean的依赖装配,bean的初 ...
- 注解在Java中是如何工作的
来一点咖啡,准备好进入注解的世界. 注解一直是 Java 的一个非常重要的部分,它从 J2SE 5.0 开始就已经存在了.在我们的应用程序代码中,经常看到 @Override 和 @Deprecate ...
- 自定义TabLayout的Indicator
最近项目要使用类似TabLayout的控件,其实我感觉就是TabLayout只是换了一个Indicator,先说一说TabLayout这是Android Support Design的控件要使用的同学 ...
- java8 base64使用
java 1.8中引入了Base64,不在需要引入第三方库就可以使用base64了. 在需要用到base64进行加密解密的时候就可以使用了 String text = "base64 in ...
- Nodejs 发送邮件 激活邮箱
1. 安装nodemailer npm install nodemailer 项目中引入nodemailer var nodemailer = require('nodemailer'); 2.QQ邮 ...
- 防御 DDoS 的终极奥义——又拍云 SCDN
现如今不论是年轻的 80.90 后,还是 70.60 后,都在享受互联网带来的舒适和便利.在家就可以"逛商场",完全不受时间的限制:在线支付既方便又安全:业余娱乐项目多种多样,打农 ...
- flask+阿里云短信服务实现注册发送手机验证码
效果图: 该效果主要讲解实现通过调用阿里云的SDK实现发送注册验证码短信(阿里云短信付费使用) 购买阿里云短信服务 购买链接:https://www.aliyun.com/product/sms 1. ...
- 【SQL】sql统计不同类别的不同状态的数目
例子:某主机下有5149个设备,设备分不同类别,设备运行会有不同状态(1-正常.2-告警.3-故障.0-离线) sql: SELECT t.DEVICE_TYPE_NAME,SUM(CASE t.DE ...
- JPG和PNG特性分析及适用范围
个人博客: http://mcchen.club JPG的特性 ----有损压缩 1.支持摄影图像或写实图像的高级压缩,并且可利用压缩比例控制图像文件大小. 2.有损压缩会使图像数据质量下降,并且 ...
- k8s运维记 - 如何让部署到k8s的kong网关托管自定义静态资源?
目的 使用kong作为目录/data/reports的静态资源服务器,为了测试,已于目录/data/reports下创建文件report.html,如下: <html> <head& ...