1.查看端口号占用
lsof -i:端口号
lsof -i:8060
sudo netstat -nlp | grep 8060
2.查看CPU、核数、磁盘信息
[hadoop@master1 ~]$ cat /etc/redhat-release
CentOS Linux release 7.9.2009 (Core)
[hadoop@master2 software]$ uname -a
Linux master2 3.10.0-1160.76.1.el7.x86_64 #1 SMP Wed Aug 10 16:21:17 UTC 2022 x86_64 x86_64 x86_64 GNU/Linux
[hadoop@master2 software]$ arch
x86_64
# 总核数 = 物理CPU个数 X 每颗物理CPU的核数
# 总逻辑CPU数 = 物理CPU个数 X 每颗物理CPU的核数 X 超线程数
# 查看物理CPU个数
cat /proc/cpuinfo| grep "physical id"| sort| uniq| wc -l
# 查看每个物理CPU中core的个数(即核数)
cat /proc/cpuinfo| grep "cpu cores"| uniq
# 查看逻辑CPU的个数
cat /proc/cpuinfo| grep "processor"| wc -l
查看CPU信息(型号)
cat /proc/cpuinfo | grep name | cut -f2 -d: | uniq -c
lsblk -d -o name,rota
#如果返回1则表示磁盘可旋转,可以判断是HDD;反之,如果返回0,则表示磁盘不可以旋转,就有可能是SSD。
#腾讯高性能云硬盘为HHD类型
3.用户管理
#linux查看所有用户
cat /etc/passwd
cat /etc/passwd |cut -f 1 -d :
useradd 注:添加用户
adduser 注:添加用户
passwd 注:为用户设置密码
usermod 注:修改用户命令,可以通过usermod 来修改登录名、用户的家目录等等;
pwcov 注:同步用户从/etc/passwd 到/etc/shadow
pwck 注:pwck是校验用户配置文件/etc/passwd 和/etc/shadow 文件内容是否合法或完整;
pwunconv 注:是pwcov 的立逆向操作,是从/etc/shadow和 /etc/passwd 创建/etc/passwd ,然后会删除 /etc/shadow 文件;
finger 注:查看用户信息工具
id 注:查看用户的UID、GID及所归属的用户组
chfn 注:更改用户信息工具
su 注:用户切换工具
sudo 注:sudo 是通过另一个用户来执行命令(execute a command as another user),su 是用来切换用户,然后通过切换到的用户来完成相应的任务,但sudo 能后面直接执行命令,比如sudo 不需要root 密码就可以执行root 赋与的执行只有root才能执行相应的命令;但得通过visudo 来编辑/etc/sudoers来实现;
visudo 注:visodo 是编辑 /etc/sudoers 的命令;也可以不用这个命令,直接用vi 来编辑 /etc/sudoers 的效果是一样的;
sudoedit 注:和sudo 功能差不多;
#用户文件和文件夹所有人更改
chmod -R hadoop:hadop /data/module
#管理用户组(group)的工具或命令
groupadd 注:添加用户组;
groupdel 注:删除用户组;
groupmod 注:修改用户组信息
groups 注:显示用户所属的用户组
grpck
grpconv 注:通过/etc/group和/etc/gshadow 的文件内容来同步或创建/etc/gshadow ,如果/etc/gshadow 不存在则创建;
grpunconv 注:通过/etc/group 和/etc/gshadow 文件内容来同步或创建/etc/group ,然后删除gshadow文件
4.scp数据传输
#将其他机器数据拉取到本机 -P 端口号,默认是22如有修改可添加
scp -P xxx username@192.168.1.1:/data/test.txt /Users/cece/Job/Doc
#发送数据到另一台机器 -r是所有文件包括文件夹
scp -r -P 12898 /Users/cece/Job/Doc/test.txt username@192.168.1.1:/data/
5.文件编辑
#vim 显示行号
#显示所有行号
:set number
#显示当前行号
:number
#要筛选出data文件夹中文件大小小于100KB
find /data -type f -size -100k
#取第24行内容
awk 'NR==24' /tmp/test.txt
sed -n '24p' /tmp/test.txt
#awk命令中 NR表示行号,直译 取20-30行的内容
awk 'NR==20,NR==30' ett.txt
sed -n '20,30p' file
#删除第N行:
sed -i '24d' test.txt
#显示整个文件(只需将范围设置为1到最后于一行) $代表最后一行
sed -n '1,$p' file
sed -n '1d' file
#将换行符替换成逗号
sed ':a;N;$!ba;s/n/,/g' filename.txt > newfilename.txt
#mac将换行符替换成逗号
sed 's/t/,/g' test.txt >test.csv
#将tab符替换成逗号
head
#批量删除命令
kill -9 `ps -ef |grep run_command |awk '{print $2}' `
#文件后带格式插入数据
echo -e "lishitama" >> xinlishi8_after.txt
#复制多个文件到多个目录
#xargs -n 1 每次只取一个参数
# cp -v 复制的详情
echo /data1 /data2 | xargs -n 1 cp -v /data3/software/hadoop-cos-8.3.1.jar /data/software/cos_api-bundle-5.6.137.2.jar
#结果
#'/data/software/hadoop-cos-8.3.1.jar' -> '/data1/hadoop-cos-8.3.1.jar'
#'/data/software/cos_api-bundle-5.6.137.2.jar' -> '/data1/cos_api-bundle-5.6.137.2.jar'
#'/data/software/hadoop-cos-8.3.1.jar' -> '/data2/hadoop-cos-8.3.1.jar'
#'/data/software/cos_api-bundle-5.6.137.2.jar' -> '/data2/cos_api-bundle-5.6.137.2.jar'
#使用ln命令建立软链接
ln -s 被链接的文件或目录名称 链接名称
ln -s /usr/local/tomcat/ tomcat_latest
ln -s /usr/bin/python3 python
#如果使用cp -L命令,cp会复制软链接指向的文件,而不是软链接本身。这个选项强制cp遵循软链接指向的路径,而不是复制软链接。
#如果使用cp -P命令,cp会复制软链接本身,而不是软链接指向的文件。这个选项使cp复制软链接,而不是软链接指向的文件。
6.文件管理
#查看本文件夹所占存储
du -sh
# 查看本机所有的文件书数量
lsof | wc -l
lsof -p 29884
sudo vim /etc/profile.d/my_env.sh
cat /proc/sys/fs/file-max
7.查看网络状态
#ip概略情况
ifconfig
#ip详细情况
ip addr
ip addr show eth0
#关闭网卡:
ifconfig docker0 down
8.crontab 任务不小心删除
#查看临时文件中中任务
sudo cat /var/log/cron | grep -i "hadoop" | grep "CMD" | awk -F '(' '{print $3}' | awk -F ')' '{print $1}' | sort -u
cat /var/log/cron | grep -i "root" | grep "CMD" | awk -F '(' '{print $3}' | awk -F ')' '{print $1}' | sort -u
#找到任务,复制
*/5 * * * * . /etc/profile.d/my_env.sh; bash /data/test.sh >> /data/test.log 2>&1
0 0 1 * * . /etc/profile.d/my_env.sh; rm /data/test.log
#查看临时文件中中任务
cat /var/log/cron |grep “test.sh”
9.jstat命令
8.1 jstat命令简介
jstat(Java Virtual Machine Statistics Monitoring Tool)是JDK提供的一个可以监控Java虚拟机各种运行状态信息的命令行工具。它可以显示Java虚拟机中的类加载、内存、垃圾收集、即时编译等运行状态的信息。
8.2 jstat命令参数 generalOptions
jstat generalOptions
jstat outputOptions [-t] [-hlines>] vmid> [interval> [count>]]
- generalOptions:通用选项,如果指定一个通用选项,就不能指定任何其他选项或参数。它包括如下两个选项:
-
- -help:显示帮助信息。
-
- -options:显示outputOptions参数的列表。
- outputOptions:输出选项,指定显示某一种Java虚拟机信息。
- -t:把时间戳列显示为输出的第一列。这个时间戳是从Java虚拟机的开始运行到现在的秒数。
- -h n:每显示n行显示一次表头,其中n为正整数。默认值为 0,即仅在第一行数据显示一次表头。
- vmid:虚拟机唯一ID(LVMID,Local Virtual Machine Identifier),如果查看本机就是Java进程的进程ID。
- interval:显示信息的时间间隔,单位默认毫秒。也可以指定秒为单位,比如:1s。如果指定了该参数,jstat命令将每个这段时间显示一次统计信息。
- count:显示数据的次数,默认值是无穷大,这将导致jstat命令一直显示统计信息,直到目标JVM终止或jstat命令终止。
8.2 jstat命令参数 outputOptions
如果不指定通用选项(generalOptions),则可以指定输出选项(outputOptions)。输出选项决定jstat命令显示的内容和格式,具体如下:
- -class:显示类加载、卸载数量、总空间和装载耗时的统计信息。
注:小段落代表执行该参数产生的结果表头
- Loaded:加载的类的数量。
- Bytes:加载的类所占用的字节数。
- Unloaded:卸载的类的数量。
- Bytes:卸载的类所占用的字节数。
- Time:执行类加载和卸载操作所花费的时间。
#jps结果: 1846180 RunJar 2723168 JobHistoryServer 3608572 ResourceManager 2709074 AlertServer #执行:jstat -compiler 1846180 Compiled Failed Invalid Time FailedType FailedMethod 13272 1 0 28.62 1 sun/misc/URLClassPath$JarLoader getResource
- -compiler:显示即时编译的方法、耗时等信息。
- Compiled:执行的编译任务的数量。
- Failed:执行编译任务失败的数量。
- Invalid:执行编译任务失效的数量。
- Time:执行编译任务所花费的时间。
- Failed服务器托管网Type:上次编译失败的编译类型。
- FailedMethod:上次编译失败的类名和方法。
- -gc:显示堆各个区域内存使用和垃圾回收的统计信息。
- S0C:年轻代中第一个Survivor区的容量,单位为KB。
- S1C:年轻代中第二个Survivor区的容量,单位为KB。
- S0U:年轻代中第一个Survivor区已使用大小,单位为KB。
- S1U:年轻代中第二个Survivor区已使用大小,单位为KB。
- EC:年轻代中Eden区的容量,单位为KB。
- EU:年轻代中Eden区已使用大小,单位为KB。
- OC:老年代的容量,单位为KB。
- OU:老年代已使用大小,单位为KB。
- MC:元空间的容量,单位为KB。
- MU:元空间已使用大小,单位为KB。
- CCSC:压缩类的容量,单位为KB。
- CCSU:压缩类已使用大小,单位为KB。
- YGC:Young GC的次数。
- YGCT:Young GC所用的时间。
- FGC:Full GC的次数。
- FGCT:Full GC的所用的时间。
- GCT:GC的所用的总时间。
- -gccapacity:显示堆各个区域的容量及其对应的空间的统计信息。
- NGCMN:年轻代最小的容量,单位为KB。
- NGCMX:年轻代最大的容量,单位为KB。
- NGC:当前年轻代的容量,单位为KB。
- S0C:年轻代中第一个Survivor区的容量,单位为KB。
- S1C:年轻代中第二个Survivor区的容量,单位为KB。
- EC:年轻代中Eden区的容量,单位为KB。
- OGCMN:老年代最小的容量,单位为KB。
- OGCMX:老年代最大的容量,单位为KB。
- OGC:当前老年代的容量,单位为KB。
- OC:当前老年代的容量,单位为KB。
- MCMN:元空间最小的容量,单位为KB。
- MCMX:元空间最大的容量,单位为KB。
- MC:当前元空间的容量,单位为KB。
- CCSMN:压缩类最小的容量,单位为KB。
- CCSMX:压缩类最大的容量,单位为KB。
- CCSC:当前压缩类的容量,单位为KB。
- YGC:Young GC的次数。
- FGC:Full GC的次数。
- -gcutil:显示有关垃圾收集统计信息的摘要。
- S0:年轻代中第一个Survivor区使用大小占当前容量的百分比。
- S1:年轻代中第二个Survivor区使用大小占当前容量的百分比。
- E:Eden区使用大小占当前容量的百分比。
- O:老年代使用大小占当前容量的百分比。
- M:元空间使用大小占当前容量的百分比。
- CCS:压缩类使用大小占当前容量的百分比。
- YGC:Young GC的次数。
- YGCT:Young GC所用的时间。
- FGC:Full GC的次数。
- FGCT:Full GC的所用的时间。
- GCT:GC的所用的总时间。
- -gccause:显示关于垃圾收集统计信息的摘要(与-gcutil相同),以及最近和当前垃圾回收的原因。
- S0:年轻代中第一个Survivor区使用大小占当前容量的百分比。
- S1:年轻代中第二个Survivor区使用大小占当前容量的百分比。
- E:Eden区使用大小占当前容量的百分比。
- O:老年代使用大小占当前容量的百分比。
- M:元空间使用大小占当前容量的百分比。
- CCS:压缩类使用大小占当前容量的百分比。
- YGC:Young GC的次数。
- YGCT:Young GC所用的时间。
- FGC:Full GC的次数。
- FGCT:Full GC的所用的时间。
- GCT:GC的所用的总时间。
- LGCC:上次垃圾回收的原因。
- GCC:当前垃圾回收的原因。
- -gcnew:显示新生代的垃圾回收统计信息。
- S0C:年轻代中第一个Survivor区的容量,单位为KB。
- S1C:年轻代中第二个Survivor区的容量,单位为KB。
- S0U:年轻代中第一个Survivor区已使用大小,单位为KB。
- S1U:年轻代中第二个Survivor区已使用大小,单位为KB。
- TT:对象在年轻代存活的次数。
- MTT:对象在年轻代存活的最大次数
- DSS:期望的Survivor区大小,单位为KB。
- EC:年轻代中Eden区的容量,单位为KB。
- EU:年轻代中Eden区已使用大小,单位为KB。
- YGC:Young GC的次数。
- YGCT:Young GC所用的时间。
- -gcnewcapacity:显示新生代的大小及其对应的空间的统计信息。
- NGCMN:年轻代最小的容量,单位为KB。
- NGCMX:年轻代最大的容量,单位为KB。
- NGC:当前年轻代的容量,单位为KB。
- S0CMX:年轻代中第一个Survivor区最大的容量,单位为KB。
- S0C:年轻代中第一个Survivor区的容量,单位为KB。
- S1CMX:年轻代中第二个Survivor区最大的容量,单位为KB。
- S1C:年轻代中第二个Survivor区的容量,单位为KB。
- ECMX:年轻代中Eden区最大的容量,单位为KB。
- EC:年轻代中Eden区的容量,单位为KB。
- YGC:Young GC的次数。
- FGC:Full GC的次数。
- -gcold: 显示老年代和元空间的垃圾回收统计信息。
- MC:元空间的容量,单位为KB。
- MU:元空间已使用大小,单位为KB。
- CCSC:压缩类的容量,单位为KB。
- CCSU:压缩类已使用大小,单位为KB。
- OC:老年代的容量,单位为KB。
- OU:老年代已使用大小,单位为KB。
- YGC:Young GC的次数。
- FGC:Full GC的次数。
- FGCT:Full GC的所用的时间。
- GCT:GC的所用的总时间。
- -gcoldcapacity:显示老年代的大小统计信息。
- OGCMN:老年代最小的容量,单位为KB。
- OGCMX:老年代最大的容量,单位为KB。
- OGC:当前老年代的容量,单位为KB。
- OC:当前老年代的容量,单位为KB。
- YGC:Young GC的次数。
- FGC:Full GC的次数。
- FGCT:Full GC的所用的时间。
- GCT:GC的所用的总时间。
- -gcmetacapacity:显示元空间的大小的统计信息。
- MCMN:元空间最小的容量,单位为KB。
- MCMX:元空间最大的容量,单位为KB。
- MC:当前元空间的容量,单位为KB。
- CCSMN:压缩类最小的容量,单位为KB。
- CCSMX:压缩类最大的容量,单位为KB。
- YGC:Young GC的次数。
- FGC:Full GC的次数。
- FGCT:Full GC的所用的时间。
- GCT:GC的所用的总时间。
- -printcompilation:显示即时编译方法的统计信息。
- Compiled:最近编译方法执行的编译任务的数量。
- Size:最近编译方法的字节码的字节数。
- Type:最近编译方法的编译类型。
- Method:最近编译方法的类名和方法名。
服务器托管,北京服务器托管,服务器租用 http://www.fwqtg.net