转载

Linux运维常用的几个命令介绍

1. 查看系统内核版本
[root@funsion geekxa]# cat /etc/issue
CentOS release 6.5 (Final)
Kernel /r on an /m

显示了系统名称(CentOS)和内核版本(release 6.5)

The file /etc/issue is a text file which contains a message or system identification to be printed before the login prompt. 

2. 查看系统信息
flyhup@ubuntu:~$ uname -a
Linux ubuntu 3.19.0-25-generic #26~14.04.1-Ubuntu SMP Fri Jul 24 21:18:00 UTC 2015 i686 i686 i686 GNU/Linux

uname -a :显示系统名、节点名称、操作系统的发行版号、操作系统版本、运行系统的机器 ID 号

3. 查看磁盘空间占用情况
$df -hl
Filesystem Size Used Avail Use% Mounted on
/dev/xvda1 100G 5.0G 90G 6% /
tmpfs 1.9G 104K 1.9G 1% /dev/shm

参数:

  • -h:方便阅读
  • -a:全部文件系统列表

4. 查看内存

一、free命令

root@xen_202_12 /]# free -m
total used free shared buffers cached
Mem: 3072 2459 612 0 207 1803
-/+ buffers/cache: 447 2624
Swap: 1913 0 1913

第2行:

  • otal 内存总数: 3072【注意单位是M,可以用参数-hm更醒目】
  • used 已经使用的内存数: 2459
  • free 空闲的内存数: 612
  • shared 当前已经废弃不用,总是0
  • buffers: Buffer Cache内存数: 207
  • cached: Page Cache内存数: 2803
  • 关系:total = used + free

第3行:

  • -/+ buffers/cache的意思:
  • -buffers/cache 的内存数: 447 (等于第1行的 used - buffers - cached)
  • +buffers/cache 的内存数: 2624 (等于第1行的 free + buffers + cached)

注:此处的内存数在用上面式子计算后,在大小上有一点点出入(还不知道是什么原因)。

可见-buffers/cache反映的是被程序实实在在吃掉的内存,而+buffers/cache反映的是可以挪用的内存总数。

5. 查看cpu内核数
# 总核数 = 物理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
6. 查看系统负载
dimite@ubuntu:~$ uptime
15:41:09 up 42 min, 2 users, load average: 0.08, 0.03, 0.05
  • 当前时间 15:41:09
  • 系统已运行的时间 42min
  • 当前在线用户 2 user
  • 平均负载:0.54, 0.40, 0.20,最近1分钟、5分钟、15分钟系统的负载

何为系统负载呢?

系统平均负载被定义为在 特定时间间隔内运行队列中的平均进程数目 。如果一个进程满足以下条件则其就会位于运行队列中:

  • 它没有在等待I/O操作的结果
  • 它没有主动进入等待状态(也就是没有调用'wait')
  • 没有被停止(例如:等待终止)

一般来说,每个CPU内核当前活动进程数不大于3,则系统运行表现良好!当然这里说的是每个cpu内核,也就是如果主机是四核cpu的话,那么只要uptime最后输出的一串字符数值小于12即表示系统负载不是很严重.当然如果达到20,那就表示当前系统负载非常严重,估计打开执行web脚本非常缓慢.

7. 查看进程
ps -ef  or ps aux

杀死所有含worker的进程

ps -ef | grep worker | awk '{print $2}' | xargs sudo kill -9
or
ps -aux | grep worker | awk '{print $2}' | xargs sudo kill -9

8. 查看端口占用
netstat -anp

or

netstat -nltup

参数:

  • -a (all)显示所有选项,默认不显示LISTEN相关
  • -t (tcp)仅显示tcp相关选项
  • -u (udp)仅显示udp相关选项
  • -n 拒绝显示别名,能显示数字的全部转化成数字。
  • -l 仅列出有在 Listen (监听) 的服務状态
  • -p 显示建立相关链接的程序名
  • -r 显示路由信息,路由表
  • -e 显示扩展信息,例如uid等
  • -s 按各个协议进行统计
  • -c 每隔一个固定时间,执行该netstat命令。
  • 提示:LISTEN和LISTENING的状态只有用-a或者-l才能看到
原文  http://openskill.cn/article/278
正文到此结束
Loading...