linux后台运行sh文件
nohup sh sparkstationenergyTest.sh>>tslog01.log &
vim操作
vim显示行数
#显示当前行行号,在VI的命令模式下输入
:nu
#显示所有行号,在VI的命令模式下输入
:set nu
#使用vi编辑~/.vimrc文件或者/etc/vimrc文件,在该文件中加入一行"set nu",添加内容不含引号
#命令如下:
vi ~/.vimrc
linux中的mail命令
1.配置
vim /etc/mail.rc
文件尾增加以下内容
set from=1968089885@qq.com smtp="smtp.qq.com"
set smtp-auth-user="1968089885@qq.com" smtp-auth-password="123456"
set smtp-auth=login
说明:
from: 对方收到邮件时显示的发件人
smtp: 指定第三方发送邮件的smtp服务器地址
smtp-auth: SMTP的认证方式。默认是LOGIN,也可改为CRAM-MD5或PLAIN方式
smtp-auth-user: 第三方发邮件的用户名
smtp-auth-password: 用户名对应密码
2.Mail命令
mail(选项)(参数)
[root@node3 opt]# mail --h
mail: illegal option -- -
Usage: mail -eiIUdEFntBDNHRV~ -T FILE -u USER -h hops -r address -s SUBJECT -a FILE -q FILE -f FILE -A ACCOUNT -b USERS -c USERS -S OPTION users
3.mail参考
3.1无邮件正文
#mail -s "主题" 收件地址
mail -s "测试" maker2win@163.com
3.2有邮件正文
#1)mail -s "主题" 收件地址< 文件(邮件正文.txt)
mail -s "邮件主题" maker2win@163.com < /data/msg.txt
#2)echo "邮件正文" | mail -s 邮件主题 收件地址
echo "邮件正文内容" | mail -s "邮件主题" maker2win@163.com
#3)cat 邮件正文.txt | mail -s 邮件主题 收件地址
cat /data/msg.txt | mail -s "邮件主题" maker2win@163.com
3.3带附件
mail -s "主题" 收件地址 -a 附件 < 文件(邮件正文.txt)
% mail -s "邮件主题" maker2win@163.com -a /data/msg.tar.gz < /data/msg.txt
linux下查看cpu核心数
1.查看物理CPU个数
cat /proc/cpuinfo |grep "physical id"|sort|uniq|wc -l
#2.查看每个物理CPU含有的core个数
cat /proc/cpuinfo |grep "cpu cores"|uniq
#3.查看逻辑CPU个数(逻辑CPU个数=物理CPU个数*core个数)
cat /proc/cpuinfo |grep "processor"|wc -l
linux释放cache内存空间
#首先执行
sync
#释放pagecache:
echo 1 > /proc/sys/vm/drop_caches
#释放dentries and inodes:
echo 2 > /proc/sys/vm/drop_caches
#释放pagecache, dentries and inodes:
echo 3 > /proc/sys/vm/drop_caches
linux 内核参数优化-最大线程数限制及当前线程数查询
1、总结系统限制有:
/proc/sys/kernel/pid_max #查系统支持的最大线程数,一般会很大,相当于理论值
/proc/sys/kernel/thread-max
max_user_process(ulimit -u) #系统限制某用户下最多可以运行多少进程或线程
/proc/sys/vm/max_map_count
硬件内存大小
2、Java虚拟机本身限制:
-Xms #intial java heap size
-Xmx #maximum java heap size
-Xss #the stack size for each thread
3、查询当前某程序的线程或进程数
pstree -p `ps -e | grep java | awk '{print $1}'` | wc -l
或
pstree -p 3660 | wc -l
或
# pstack pid |grep LWP |wc -l
4、查询当前整个系统已用的线程或进程数
pstree -p | wc -l
1、 cat /proc/${pid}/status
2、pstree -p ${pid}
3、top -p ${pid} 再按H 或者直接输入 top -bH -d 3 -p ${pid}
top -H
手册中说:-H : Threads toggle
加上这个选项启动top,top一行显示一个线程。否则,它一行显示一个进程。
4、ps xH
手册中说:H Show threads as if they were processes
这样可以查看所有存在的线程。
5、ps -mp <PID>
手册中说:m Show threads after processes
这样可以查看一个进程起的线程数。
软连接ln指令
#切换到module目录
cd /opt/module
#创建测试mytext文件
mkdir mytest.txt
#切换到software目录
cd /opt/software
#创建mytest.txt文件软连接
ln -s /opt/module/mytest.txt mytest
端口查看
#lsof -i:port
lsof -i:2181
#netstat -tunlp|grep prot
netstat -tunlp|grep 2181
yum整理
yum 会把下载的软件包和header存储在cache中,而不自动删除。如果觉得占用磁盘空间,可以使用yum clean指令进行清除,更精确 的用法是yum clean headers清除header,yum clean packages清除下载的rpm包,yum clean all一全部清除。
#清除全部缓存
yum clean all
kafka
#创建topic
./kafka-topics.sh --create --zookeeper node3.sdp.cn:2181 --replication-factor 5 --partitions 5 --topic test
#查看kafka topic列表,使用--list参数
/kafka-topics.sh --zookeeper node5.sdp.cn:2181 --list
#查看kafka特定topic的详情,使用--topic与--describe参数
./kafka-topics.sh --zookeeper node5.sdp.cn:2181 --topic realdata --describe
#查看topic偏移量
./kafka-run-class.sh kafka.tools.ConsumerOffsetChecker --zookeeper node5.sdp.cn:2181 --group consumer-tutorial --topic hisdata
./kafka-run-class.sh kafka.tools.ConsumerOffsetChecker --zookeeper node5.sdp.cn:2181 --group consumer-tutorial --topic realdata
#删除topic
./kafka-topics.sh --delete --zookeeper node3.sdp.cn:2181 --topic test
#查看consumer group列表,使用--list参数
./kafka-consumer-groups.sh --zookeeper node4.sdp.cn:2181 --list
#topic分区情况
./kafka-topics.sh --describe --zookeeper node6.sdp.cn:2181 --topic realdata
#通过kafka-topics.sh 的alter选项 ,将topic1的partitions从1增加到6;
./kafka-topics.sh --alter --topic topic1 --zookeeper ip:2181 --partitions 6
hbase
#进入hbase
hbase shell
表的管理
1)查看有哪些表
hbase(main)> list
2)创建表
# 语法:create <table>, {NAME => <family>, VERSIONS => <VERSIONS>}
# 例如:创建表t1,有两个family name:f1,f2,且版本数均为2
hbase(main)> create 't1',{NAME => 'f1', VERSIONS => 2},{NAME => 'f2', VERSIONS => 2}
3)删除表
分两步:首先disable,然后drop
例如:删除表t1
hbase(main)> disable 't1'
hbase(main)> drop 't1'
4)查看表的结构
# 语法:describe <table>
# 例如:查看表t1的结构
hbase(main)> describe 't1'
5)修改表结构
修改表结构必须先disable
# 语法:alter 't1', {NAME => 'f1'}, {NAME => 'f2', METHOD => 'delete'}
# 例如:修改表test1的cf的TTL为180天
hbase(main)> disable 'test1'
hbase(main)> alter 'test1',{NAME=>'body',TTL=>'15552000'},{NAME=>'meta', TTL=>'15552000'}
hbase(main)> enable 'test1'
#前缀查询
scan 'Kg_MultiRadarData', {ROWPREFIXFILTER => 'MULTI',LIMIT=>1}
#过滤条件查询
scan 't_point_table_data_statistics_day',{FILTER=>"SingleColumnValueFilter('datasqc','projectNo',=,'binary:7964A17606AC43A08D3B1CB66A9368F7') AND SingleColumnValueFilter('datasqc','createTime',<=,'binary:20190225') AND SingleColumnValueFilter('datasqc','createTime',>=,'binary:20190225') AND SingleColumnValueFilter('datasqc','deviceNo',=,'binary:00001')"}
#Hbase删除表中所有数据
truncate 'Kg_MultiRadarData'
storm
#上传jar到storm集群
storm jar storm.jar com.jxre.bigdata.storm.HistoryDataDriver HISTORY_DATA_UP
storm jar storm.jar com.jxre.bigdata.realtime.RealTimeDataDriver REALTIME_DATA
#设置work数据
storm rebalance HISTORY_DATA_UP -w 60 -n 20
#设置executor数量
storm rebalance HISTORY_DATA_UP -w 60 -e data-parse=4
storm rebalance HISTORY_DATA_UP -w 60 -e data-split=4
storm rebalance HISTORY_DATA_UP -w 60 -e data-point=8
storm rebalance HISTORY_DATA_UP -w 60 -e data-persis=4
hdfs
#列出HDFS下的文件
hadoop dfs -ls /
#将hadoop目录下的test1文件上传到HDFS上并重命名为test
hadoop dfs -put test1 test
#删除HDFS下名为test的文档
hadoop dfs -rmr test
#查看HDFS下a.txt文件中的内容
hadoop dfs -cat /a.txt
#建立目录
hadoop dfs -mkdir /user/hadoop/examples(目录/目录名)
hadoop启动和关闭命令
start-all.sh
启动所有的Hadoop守护进程。包括NameNode、 Secondary NameNode、DataNode、JobTracker、 TaskTrack
stop-all.sh
停止所有的Hadoop守护进程。包括NameNode、 Secondary NameNode、DataNode、JobTracker、 TaskTrack
start-dfs.sh
启动Hadoop HDFS守护进程NameNode、SecondaryNameNode和DataNode
stop-dfs.sh
停止Hadoop HDFS守护进程NameNode、SecondaryNameNode和DataNode
hadoop-daemons.sh start namenode
单独启动NameNode守护进程
hadoop-daemons.sh stop namenode
单独停止NameNode守护进程
hadoop-daemons.sh start datanode
单独启动DataNode守护进程
hadoop-daemons.sh stop datanode
单独停止DataNode守护进程
hadoop-daemons.sh start secondarynamenode
单独启动SecondaryNameNode守护进程
hadoop-daemons.sh stop secondarynamenode
单独停止SecondaryNameNode守护进程
start-mapred.sh
启动Hadoop MapReduce守护进程JobTracker和TaskTracker
stop-mapred.sh
停止Hadoop MapReduce守护进程JobTracker和TaskTracker
hadoop-daemons.sh start jobtracker
单独启动JobTracker守护进程
hadoop-daemons.sh stop jobtracker
单独停止JobTracker守护进程
hadoop-daemons.sh start tasktracker
单独启动TaskTracker守护进程
hadoop-daemons.sh stop tasktracker
单独启动TaskTracker守护进程