Linux常用命令记录
linux一次性解压多个.gz或者.tar.gz文件:
// 解压多个.gz文件,命令如下
for gz in *.gz; do gunzip $gz; done
// 解压多个.tar.gz文件的,用下面命令
for tar in *.tar.gz; do tar xvf $tar; done
防火墙:
// 查看防火墙状态
systemctl status firewalld
出现Active: active (running)切高亮显示则表示是启动状态。
出现 Active: inactive (dead)灰色表示停止。
// 开启
service firewalld start
// 重启
service firewalld restart
// 关闭
service firewalld stop
// 配合使用永久关闭防火墙
systemctl stop firewalld # 临时关闭防火墙
systemctl disable firewalld # 禁止开机启动
其它:
// 查看文件大小,统计当前文件夹(目录)大小,并按文件大小排序
du -sh * | sort -n
// 创建普通用户
useradd test #创建test用户
passwd test #创建/更新test用户密码
// 删除普通用户
userdel -r test
// 修改普通用户密码
passwd test
然后,按照提示输入新密码
// 查找当前目录及其子目录下,文件后缀为 .c的文件
find . -name "*.c"
// 修改文件权限
chown -R test:test fileName
// 赋值执行权限
chmod +x fileName
1. hdfs命令
- 创建文件的命令:
hadoop fs -touch /file.txt
- 创建文件夹的命令:
hadoop fs -mkdir /filename
- 删除文件(夹)的命令:
hadoop fs -rm -r /111/file.txt
- 向hdfs上传文件:
hadoop fs -put temp/my.txt /hdfs/temp
- 将HDFS上结果文件转储到本地文件系统中,使用如下命令:
hadoop fs -get /user/username/result1.json/*.json /home/username/temp/us_counties_result/result1
- 格式化文件系统:
hdfs namenode -format
- 查看hdfs文件:
hadoop fs -ls /tmp
- hadoop退出安全模式
hdfs dfsadmin -safemode leave
- 统计文件大小
hdfs dfs -du -h /
- 统计文件数量,返回的数据是目录个数,文件个数,文件总计大小,输入路径
hdfs dfs -count /
2. hadoop启动与关闭
启动hadoop
start-dfs.sh
start-yarn.sh
// 或者直接使用下面语句启动hadoop
start-all.sh
关闭hadoop
stop-yarn.sh
stop-dfs.sh
3. zookeeper启动与关闭
启动zookeeper服务(每个节点都要启动)
zkServer.sh start
查看启动状态
zkServer.sh status
关闭zookeeper服务
zkServer.sh stop
4. hbase启动与关闭
// 启动HBase
start-hbase.sh
// 关闭HBase
stop-hbase.sh
关闭hadoop、hbase集群执行顺序:
hbase—>zookeeper—>hadoop
1.stop-hbase.sh
2.zkServer.sh stop(每个节点都要关闭)
3.stop-yarn.sh
4.stop-dfs.sh
5. 查看端口进程占用情况
netstat -alnp | grep 8031
lsof -i:8031
ps -ef | grep idea
杀死进程
// 强制关闭
kill -9 PID
// 正常关闭
kill -5 PID
6. 其他问题(后续补充)…
一、HBase无法正常关闭,输入stop-hbase.sh
,出现stop hbase……….
解决方案:
- 首先输入
start-hbase.sh
,然后就会出现进程运行的端口号; - 分别在主节点与子节点关闭进程,使用kill -9 端口号关闭;
- 关闭之后,输入
stop-hbase.sh
,发现可以正常关闭了; - 输入jps,看见hbase的进程确实被停掉了,HMaster没有了。
二、hadoop启动后jps查不到namenode
解决方案:
- 查看一下自己的hadoop的日志文件(hadoop安装目录/logs),找到namenode的log文件,直接
Shift+g
跳转到文件最下行,查看报错信息; - 如果显示的是 java.net.BindException,表示端口号被占用,找到端口号kill掉;
三、Hbase启动后,子节点上没有Hregionserver进程
解决方案:
- 输入date,检查时间是否同步,Hbase默认的容忍间隔是30;修改各服务器时间 保证间隔在30s以内,或者使各服务器跟同一个服务器时间保持同步;
- 最简单的方法:
sudo date -s 13:50:00
#这个时间是当下的标准时间; - 再次启动Hbase集群