linux shell 工具命令

· 1256 words · 3 minute read

配置shell文件 🔗

  • /etc/profile
    • 为系统中每个用户设置环境信息,只在用户第一次登陆时,被执行
    • 并从/etc/profile.d目录中搜索shell的配置
  • /etc/bashrc
    • bash shell被打开,就被执行
  • ~/.bashrc
    • 每次打开shell时,被执行
  • ~/.bash_profile
    • 用户登陆时仅执行一次,执行用户的bashrc

top 命令 🔗


  • 5行统计信息

    • 任务队列信息,uptime命令的结果类似
      • load average: 1分钟,5分钟,15分钟内的系统平均负荷
    • 进程统计信息
      • 系统中一共由290个进程,running状态为1个,休眠状态为289个, stopped状态和zombie状态为0
    • CPU状态
      • 3.0 us:用户程序占用cpu的比例3.0%
      • 1.2 sy:内核程序占用cpu的比例1.2%
      • 0.0 ni:改变过优先级的进程占用CPU的百分比
      • 95.5 id:空闲CPU百分比95.5%
      • 0.3 wa:IO等待占用CPU的百分比0.3%
      • 0.0 hi:硬中断(Hardware IRQ)占用CPU的百分比0.0%
      • 0.0 st:软中断(Software Interrupts)占用CPU的百分比0.0%
    • 内存信息
      • total: 8G空间
      • free: 空余1433236kb
      • used: 使用4856164kb
      • buff/cache:主存上缓存大小1787556kb
    • swap交换区信息(虚拟内存,在磁盘上)
      • total: 交换区总量为8G多
      • cached: 交换区上缓冲的大小
  • 各进程的状态监控信息

    • 进程pid, 拥有者user, 进程优先级PR, NI nice值
    • VIRT(占有的虚拟内存总量kb,virt=swap+res), RES(内存res=code+data),SHR(共享内存)
    • 进程状态(D不能中断的睡眠, R运行, S睡眠,T跟踪/停止, Z僵尸)
    • %CPU(占cpu百分比),%MEM(占内存百分比), TIME(进程使用cpu的时间,单位1/100秒), COMMAND(进程名称)

free 命令 🔗

free查看内存使用情况,包含已用内存,可用内存,交换内存的情况,默认以字节为单位( 简单版的top命令 )

  • free 查看内存使用情况
    • free -m (以mb为单位显示)
    • free -h ()

free -t (total, 有汇总行)

  • total = used + free
  • used 包含cached, buffers, shared部分
  • -buffers/cache: used-buffers-cached (可以看出程序吃掉的内存)
  • +buffers/cache: free+buffers+cached (可以挪用的内存)

free命令后的buffer与cached的区别

  • buffer缓冲,内存写硬盘时的写缓冲内存
  • cached缓存,数据缓存,读缓存
  • cpu-->cache -->mem --> buffer --> disk
  • 交换区swap与内存mem的区别:当mem不够用时,使用swap存放不常用的数据, 把磁盘当做虚拟内存使用
    • 清理swap, swapoff -a && swapon -a

iostat: 显示磁盘读写速度状态 vmstat: 显示整体的虚拟内存状态(调页paging,交换swapping) netstat:显示网络状态

Procs 进程

  • r:运行的进程数
  • b:等待的进程数

Memory

  • swpd: 使用的虚拟内存大小
  • free: 空闲内存
  • buf: 缓冲内存大小
  • cache: 缓存内存大小

Swap

  • si 每秒从交换区到内存的大小, 磁盘-》内存
  • so 每秒从内存到交换区的大小, 内存-》磁盘

io

  • bi 每秒读的块数
  • bo 每秒写的块数

system

  • in: 每秒中断数
  • cs: 每秒上下文切换数

CPU

  • us 用户进程执行时间占比
  • sy 内核进程执行时间占比
  • wa 等待IO时间占比
  • id 空闲时间占比