前言
学习过程中,Hadoop经常被玩坏,总不能一直用快照吧😓
。
。
。
。
玩坏了怎么办?
。
。
。
。
玩坏了就删
。
。
。
。
删除Hadoop命令
删除Hadoop,然后就可以重装啦
临时目录内容删除
rm -rf /tmp/*
ssh hadoop101 "rm -rf /tmp/*"
ssh hadoop102 "rm -rf /tmp/*"
Hadoop删除
rm -rf $HADOOP_HOME
ssh hadoop101 "rm -rf $HADOOP_HOME"
ssh hadoop102 "rm -rf $HADOOP_HOME"
整套删除
rm -rf /opt/*
ssh hadoop101 "rm -rf /opt/*"
ssh hadoop102 "rm -rf /opt/*"
删除Hadoop数据的命令
删除Hadoop的数据和日志,然后就可以重新格式化NameNode啦
临时目录内容删除
rm -rf /tmp/*
ssh hadoop101 "rm -rf /tmp/*"
ssh hadoop102 "rm -rf /tmp/*"
删除Hadoop的数据和日志
rm -rf $HADOOP_HOME/data
rm -rf $HADOOP_HOME/logs
ssh hadoop101 "rm -rf $HADOOP_HOME/data $HADOOP_HOME/logs"
ssh hadoop102 "rm -rf $HADOOP_HOME/data $HADOOP_HOME/logs"
集群Linux文件删除脚本
功能:删除集群中每台机器的某个文件
前提:配好免密登录
touch /usr/bin/rm.py
chmod 777 /usr/bin/rm.py
vim /usr/bin/rm.py
#!/usr/bin/python2
# coding:utf-8
import os, re, socket
# 获取第一个参数
a = os.sys.argv
if len(a) != 2:
print(a)
print("使用方法:")
print("rm.py '/tmp/*'")
print("rm.py '/opt/*'")
exit("rm.py $HADOOP_HOME")
a = a[1]
suffix = ''
if a.endswith('*'):
suffix = '*'
a = a[:-1]
# 补全路径
if not a.startswith('/'):
a = os.path.join(os.getcwd(), a)
if os.path.isdir(a) and not a.endswith('/'):
a += '/'
if not os.path.exists(a):
print(a)
exit('路径不存在')
# 集群删文件
cmd_ls = []
hostname = socket.gethostname()
with open('/etc/hosts') as f:
for h in set(re.findall('hadoop[0-9]+', f.read())):
cmd = 'rm -rf ' + a + suffix
if h != hostname:
cmd = 'ssh %s "%s"' % (h, cmd)
print(cmd)
cmd_ls.append(cmd)
if raw_input('输入y再次确认:').strip() == 'y':
for cmd in cmd_ls:
os.system(cmd)
else:
print('取消删除')
用法
rm.py $HADOOP_HOME
rm.py '/tmp/*'
rm.py '/opt/*'