zoukankan      html  css  js  c++  java
  • Linux实践

    iptables

    1. 临时性生效
      service iptables status
      service iptables save
      iptables -A INTPUT -p tcp --sport 27017 -j ACCEPT
      iptables -D INPUT number

    2. 修改配置文件(永久性生效)
      可以增加/删除端口
      cat /etc/sysconfig/iptables
      vi /etc/sysconfig/iptables

    -A INPUT -m state --state NEW -m tcp -p tcp --dport 27017 -j ACCEPT
    注意:(1)-m state --state为一个完整参数
    (2)必须注意顺序。
    被允许的端口必须放在REJECT之前。
    (3)不需要增加-A OUTPUT 规则。
    重启iptables则生效: service iptables restart
    -A INPUT -p tcp -m state --state NEW -m tcp --dport 27017 -j ACCEPT
    -A INPUT -j REJECT --reject-with icmp-host-prohibited
    -A FORWARD -j REJECT --reject-with icmp-host-prohibited

    service iptables status查看端口结果
    5 ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 state NEW tcp dpt:27017
    6 REJECT all -- 0.0.0.0/0 0.0.0.0/0 reject-with icmp-host-prohibited

    1. es
      需要开放两个port:
      -A INPUT -p tcp -m state --state NEW -m tcp --dport 9200 -j ACCEPT
      -A INPUT -p tcp -m state --state NEW -m tcp --dport 9300 -j ACCEPT

    2. 查看现有规则链中详情
      iptables -L

    linux 系统监测工具

    1. iostat,通过yum安装
      iostat -d -x 2
      观察avctm, await 两个参数

    2. netstat -ant
      查看tcp网络连接

    netstat -antu
    查看tcp/udp网络连接

    netstat -antup
    查看tcp/udp网络连接,以及进程名字

    -p 查看进程名
    -n 能显示为数字的全部转成数字

    1. 查看系统的负载
      vmstat -S m 2
      -S: 使用指定单位显示

    2. 查看网络通信,用wireshark更强大
      tcpdump -i eth0
      eth0 为第一个网卡, lo 为localhost。通过ifconfig查看

    3. 查看内存和CPU
      top
      等同于: uptime, free, mpstat
      先top,然后按1,切换到多核模式,查看各个CPU情况

    shift + M 按内存大小排序

    mpstat 可以查看Linux版本与CPU个数

    %MEM 进程使用的物理内存百分比
    RES 进程使用的物理内存
    VIRT 进程使用的物理内存

    1. telnet 可以探测端口是否开放
      telnet ip port
      e.g. telnet 10.11.42.151 6379
      退出telnet: ctrl+],然后按q

    ping 探测主机是否存活

    1. iptables,配置防火墙规则
      出口表
      入口表
      iptables -A OUTPUT -p tcp --dport 6379 -j DROP
      iptables -D OUTPUT -p tcp --dport 6379 -j DROP

    -p 协议
    --dport 端口
    -j 动作,指定如何处理
    -D 删除规则
    -A 在当前链的最后新增一个规则

    1. ps
      查看pid为10696中线程情况
      tid为线程号
      time为占用cpu时间
      注意:THREAD,tid,time间不能有空格
      ps -mp 10696 -o THREAD,tid,time
      ps -mp 10696 -o THREAD,tid,time,rss,size,%mem
      ps aux
      ps -ef

    2. 打印java堆栈信息
      29ca为j将tid转换成16进制的结果
      jstack 10696 | grep 29ca -A 30

    3. 查看线程的内存占用
      分析具体的对象数目和占用内存的大小
      jmap -histo:live 10696 | head -n 100

    4. 查看进程中各个线程CPU占用
      10696 为pid
      top -p 10696 -H

    5. 查看java进程
      jps
      top -p 10696 -H
      jstack 10696 | grep 29ca -A 30

    6. 高CPU占用问题排查
      jps
      查看线程占用cpu时间(有两个命令)
      ps -mp 10696 -o THREAD,tid,time
      top -p 10696 -H
      jstack 10696 | grep 29ca -A 30

    7. 高内存问题排产
      jmap -histo:live 10696 | head -n 100

    8. 查找应用程序所在位置
      which jvm
      whereis搜索更大范围
      whereis jvm

    9. Linux中采取监控数据
      dstat
      ntop
      snmp 简单网络管理协议

    10. linux下软件安装与卸载命令
      rpm: redhat package manager
      rpm -qa | grep iotop

    11. 查看磁盘读写速度
      iostop -o

    12. 输出重定向
      iotop -o >>bi_disk.txt

  • 相关阅读:
    Android之SQLite分页读取
    android 对sqlite数据库的增删改查
    Android如何导入已有的外部数据库(在raw下自己导入db文件)
    Android自定义对话框(Dialog)位置,大小
    android UI进阶之实现listview中checkbox的多选与记录
    Android开发教程 数据存储 SQLite
    Android 中的ORM框架
    android错误信息大整理
    C#中导出Execl
    关于用户退出,点击浏览器后退仍可回到原来页面解决二
  • 原文地址:https://www.cnblogs.com/sunzhuli/p/9696625.html
Copyright © 2011-2022 走看看