• linux日常运维管理


    1、查看系统负载命令

    w命令:主要查看cpu负载

    load average:一分钟内负载 五分钟内负载 十五分钟内负载

    负载跟cpu核心数有关,查看cpu核心数:

    # cat /proc/cpuinfo | grep 'processor' | wc -l

    uptime也可以显示cpu负载

    2、vmstat命令

    # vmstat 1 5

    1代表每一秒显示一次,5代表显示五次

    r列:表示一秒内运行的进程

    b列:被阻塞的进程

    swpd列:有多少数据被交换,单位是kb

    free列:剩余内存

    buff列:缓冲

    cache列:缓存

    si列:swap in进入到内存的数据

    so列:swap out从内存中读出来的

    bi列:读磁盘,普通服务器硬盘持续超过1000说明服务器压力读取频繁

    bo列:写磁盘

    in列:终端的次数

    cs列:上下文切换

    us列:用户态的进程占用cpu的百分比

    sy列:内核态的进程占用cpu的百分比、

    id列:空闲

    wa列:等待

    st列:被偷走的

    3、top命令

    PID:在/proc目录下

    USER:以哪个用户运行的进程

    FR:值范围0到39,进程优先级,值越小优先级越高

    NI:值范围-20到19,进程优先级

    VIRT:进程使用虚拟内存总量=SWAP+RES

    RES:进程使用的、未被换出的物理内存

    SHR:贡献内存

    S:进程状态D=不可中断的睡眠状态R=运行S=睡眠T=跟踪/停止Z=僵尸进程

    %CPU:cpu使用率

    %MEM:内存使用率

    TIME+:使用cpu的时间

    COMMAND:进程名称

    4、sar命令(查看网卡流量)

    # sar -n DEV 1 10

    每秒中显示一次,显示十次,网卡流量统计

    sa的历史记录记录在/var/log/sa该目录下

    使用# sar -n DEV -f sa27查看27号的历史记录

    # sar -q查看负载

    # sar -b查看磁盘

    5、free命令

    # free -m按兆字节显示内存使用情况,默认是k

    total:内存总量

    used:内存使用情况

    free:内存剩余情况

    buffers:在内存中将要写入磁盘的数据

    cached:将磁盘中的数据放入内存

    6、ps命令

    # ps aux:BSD风格的使用方法

    USER:以哪个用户启动的进程

    PID:进程id

    %CPU:cpu使用百分比

    %MEM:内存使用百分比

    VSZ:虚拟内存大小

    RSS:真正内存的大小

    TTY:终端

    STAT:进程状态S:休眠;s主进程;<优先级高;N优先级低;+前台运行的进程;R正在运行的进程;L被锁的进程;l多线程进程;Z僵尸进程;X已死的进程;T暂停的进程

    START:启动时间

    TIME:占用cpu的时间

    COMMAND:进程的名字

    7、netstat命令

    # netstat -lnp查看服务器监听了那些端口

    # netstat -an | grep 92.168.83.50:3402 | grep -ic estab查看连接数

    8、tcpdump和tshark工具

    # tcpdump -nn -i eth0 -c 5

    抓取eth0网卡上的五个数据包

    # tcpdump -nn tcp and port 22 -c 5

    # tcpdump -nn -s0 tcp and port 22 -c 10 -w test.cap

    tshark工具需要安装wireshark二进制包包

    # tshark -n -t a -R http.request -T fields -e "frame.time" -e "ip.src" -e "http.host" -e "http.request.method" -e "http.request.uri"

    9、selinux

    查看selinux状态:# getenforce

    临时关闭selinux:# setenforce 0

    永久关闭:# sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config

    如果没有getenforce和setenforce命令安装libselinux-utils包

    10、netfilter --> iptables防火墙

    table表-->chain链

    # iptables -t filter -nvL  //查看filter表的规则

    # iptables -t nat -nvL     //查看nat表的规则

    # iptables -t mangle -nvL  //查看mangle表的规则

    # iptables -t filter -A INPUT -p tcp --dport 80 -s 192.168.1.135 -j REJECT

    -t:指定要操作的表名

    -A:追加一条规则

    -I:插入一条规则

    -D:删除一条规则

    -P:设置默认规则

    -p:指定协议

    --dport:指定端口号

    -s:指定来源ip

    -j:指定处理方式;REJECT:拒绝;DROP:丢弃;ACCEPT:接受

    # iptables -F  //清空防火墙规则

    # service iptables save  //将写好的防火墙规则永久保存

    # iptables-save > /tmp/iptbales备份防火墙规则

    # iptables-restore < iptables  //恢复防火墙规则

    INPUT DROP;192.168.1.1/24 22 ACCEPT;all 80 ACCEPT ;all 21 ACCEPT;

    #/bin/bash

    iptables="/sbin/iptables"

    $iptables -F

    $iptables -P INPUT DROP

    $iptables -P OUTPUT ACCEPT

    $iptables -P FORWARD ACCEPT

    $iptables -A INPUT -s 192.168.1.1/24 -p tcp --dport 22 -j ACCEPT

    $iptables -A INPUT -p tcp --dport 80 -j ACCEPT

    $iptables -A INPUT -p tcp --dport 21 -j ACCEPT

    $iptables -A INPUT -p tcp --dport 22 -j DROP其余网段不允许连接22端口

    11、cron计划任务

    # crontab -l

    -l:查看任务计划

    -e:编辑任务计划

    -r:删除任务计划

    第一个段*:分钟

    第二个段*:小时

    第三个段*:日

    第四个段*:月

    第五个段*:周

    12、系统服务

    # ntsysv命令属于ntsysv包,没有命令可以安装,通过类似图形界面的方式控制开机启动的服务

    # chkconfig --list也可以通过这个命令查看哪些服务是开机自启动的

    # chkconfig vsftpd on/off可以使某些服务在开机时打开或者关闭

    # chkconfig --level 23456 vsftpd on指定某些服务在启动级别时的打开或者关闭状态

    # chkconifg --add 123将123的服务添加到开机启动项中,但123必须在/etc/init.d目录下,并且是可执行的文件

    13、linux日志

    核心的系统日志存放在/var/log/目录下

    日志格式及保存方式存放在/etc/logrotate.conf和/etc/logrotate.d/目录下

    查看用户登录历史的日志/var/log/wtmp该日志不能直接查看,可以用last查看

    查看无效登录的历史/var/log/btmp该日志不能直接查看,可以用lastb查看

    /var/log/maillog与邮件有关的日志

    /var/log/secure与验证有关的日志,例如ftp登录的情况

    /var/log/dmesg系统启动过程中一些硬件相关的日志

    14、xargs和exec的使用

    # find . -name passwd -exec cp {} {}.bak ;

    # find . -name passwd | xargs -i cp {} {}.bak

    两条命令执行的结果相同

    # ls *.bak | xargs rm -rf也可以这样删除文件哦,很爽。。。

    15、screen命令

    nohup sleep 100 &丢入后台退出终端不被中断,并记录日志

    screen命令输入screen包

    使用方法:

    # screen

    输入命令比如top

    然后按ctrl+a+d退出

    # screen -ls查看后台程序

    # screen -r id查看后台程序

    按ctrl+d或者esc退出screen

    16、curl命令

    # curl www.baidu.com 查看百度的文本页面

    # curl -I www.baidu.com查看百度的状态信息等

    # curl -x61.135.169.125:80 -I www.baidu.com指定代理服务器

    # curl -x61.135.169.125:80 -Iv www.baidu.com查看浏览百度是的访问过程

    # curl -u fanjinbao:fanjinbao  www.fanjinbao.com访问用户名密码的页面

    # curl -O http://www.baidu.com/img/bdlogo.png直接下载bdlogo.png的图片

    # curl -o fanjinbao.png http://www.baidu.com/img/bdlogo.png下载并重命名为fanjinbao.png

     

  • 相关阅读:
    烟大课表PC端-不仅仅是浏览器和手机APP
    关于51单片机电子时钟精度的问题
    第十二周项目4-点、圆的关系
    Git on Windows 一些问题
    vi 的使用
    Git 账户认证的一些问题
    [Windows] win7 配置Java开发环境
    Velocity 局部定制模板
    [Storm] Storm与asm的恩恩怨怨
    [Storm] No data flows into bolt
  • 原文地址:https://www.cnblogs.com/fansik/p/5552115.html
Copyright © 2020-2023  润新知