收集了一下工作中常用的Linux运维指令,列在下面,本文长期更新。
netstat -na | grep 7651
查看本机7651端口在和谁通信
ps aux | grep 7651
查看本机7651进程的相关信息
ps aux --sort -rss
显示各个进程对内存的使用情况,从大到小排序
netstat -ntpl
查看处于监听状态的TCP类型的端口
netstat -nupl
查看处于监听状态的UDP类型的端口
ps huH p 23585 | wc -l
查看进程23585所拥有的线程数
tcpdump -i any -vv -Xs 0 port 8080 -w tmp.cap
TCP抓包命令,用于抓取传到该主机8080端口的http请求,存于文件tmp.cap中,抓下来的包用strings命令读取
netstat -nap | grep 125108
查看进程125108占用的端口
netstat -na | grep "2181" | wc -l
查看连接到本机zk上的线程数
ps -U root -u root -N
查看当前系统非root用户的进程
du -sh /*
查看根目录下各个文件夹的磁盘空间占用情况
cat /dev/null > out.log
将out.log文件清空
sudo /sbin/iptables -A OUTPUT -d zkserver -j REJECT
sleep 10
sudo /sbin/iptables -D OUTPUT -d zkserver -j REJECT
拦截client发到zkserver的包,拦截10s,然后恢复
ulimit -n
查看本机的文件最大打开数
start_udev
start_udev命令重启udev守护进程,并对所有的设备重新查询规则目录(/etc/udev/udev.conf中的udev_rules指定的目录,默认是/etc/udev/rules.d/)下所有的规则文件,然后执行所匹配的规则里的行为。通常使用该命令让/dev目录下设备的新规则文件立即生效
ss -p
显示目前使用网络的程序
pssh
在多台服务器上批量执行某命令,一个使用示例如下:
pssh -h datanode.ip -p 30 -i 'md5sum /home/hadoop/hbase/conf/log4j.properties’
其中,-i指定了要在每台服务器上执行的命令。
pscp
将本地目录下的文件批量分发到多台服务器上,使用示例如下:
pscp -h /home/data/serverlist/allhbase.ip hbase-site.xml /home/data/hbase/conf/
其中-h指定目录下的文件包含了目的服务器列表,hbase-site.xml是我们要发送的文件,最后的/home/data/hbase/conf/指定了目的目录。