日期:2014-05-16  浏览次数:20771 次

程序员必知必会----linux常用命令之十【系统相关】

一.linux快捷键

Ctrl+C : 终止当前命令

Ctrl+S : 暂停屏幕输出

Ctrl+Q : 恢复屏幕输出

Ctrl+U : 删除当前行光标前的所有字符

Ctrl+Z : 挂起当前正在执行的进程

Ctrl+L : 清除终端屏幕,相当于clear

?

二.终端命令

clear : 清除终端屏幕

reset : 重置视窗,当屏幕编码混乱时使用

time commond : 内部计时器,统计命令执行时间

cal : 查看日历

?

#第一次登录终端的用户

last : 显示当前和过去登录系统的用户相关信息

logname : 显示第一次登录到终端的用户名,su切换的不算

w、who、finger : 显示第一次登录终端的用户信息

?

#当前操作用户

whoami : 显示当前的用户名,su切换后的

id : 显示当前的用户的UID、GID和所属组信息

?

三.系统管理

uname : 显示系统信息,如Linux

arch : 查看处理器架构,如x86_64

uptime : 显示系统运行时间和系统负载

mount -l : 显示已经挂载的文件系统

fdisk -l : 显示磁盘信息

?

?

free -m : 显示内存信息 -m :单位M -g : 单位G

示例:

# free -m

? ? ? ? ? ? ?total ? ? ? used ? ? ? free ? ? shared ? ?buffers ? ? cached

Mem: ? ? ? ? ? 988 ? ? ? ?424 ? ? ? ?563 ? ? ? ? ?0 ? ? ? ? 29 ? ? ? ?227

-/+ buffers/cache: ? ? ? ?167 ? ? ? ?820

Swap: ? ? ? ? 1999 ? ? ? ? ?0 ? ? ? 1999

?

显示说明:

? ? 第一行: total:内存总数

used:已经使用内存数

free:剩余内存数

shared:总是0,已经废弃不用

buffers:从慢速设备或不同优先级设备(块设备)传输数据的缓冲区

cached:高速缓冲区,如vi读写文件的内容,会被缓存到内存

第二行: ?-buffers/cache 167 (used – buffers -cached)

反映的是被系统实际使用掉的内存

+buffers/cache 820 (free + buffers + cacheed)

反映的是可以挪用的内存总数

第三行: ?swap空间的总数,已用空间和可用空间

?

?

vmstat : 显示虚拟内存信息

示例:

# vmstat -S m -n 1 ?#每秒执行一次

procs -----------memory---------- ---swap-- -----io---- --system-- -----cpu-----

?r ?b ? swpd ? free ? buff ?cache ? si ? so ? ?bi ? ?bo ? in ? cs us sy id wa st

?0 ?0 ? ? ?0 ? ?590 ? ? 30 ? ?238 ? ?0 ? ?0 ? ?52 ? ? 6 ? 28 ? 25 ?0 ?0 99 ?1 ?0

?0 ?0 ? ? ?0 ? ?590 ? ? 30 ? ?238 ? ?0 ? ?0 ? ? 0 ? ? 0 ? 54 ? 40 ?0 ?0 100 ?0 ?0

?0 ?0 ? ? ?0 ? ?590 ? ? 30 ? ?238 ? ?0 ? ?0 ? ? 0 ? ? 0 ? 31 ? 41 ?0 ?0 100 ?0 ?0

?0 ?0 ? ? ?0 ? ?590 ? ? 30 ? ?238 ? ?0 ? ?0 ? ? 0 ? ? 0 ? 35 ? 55 ?0 ?0 100 ?0 ?0

?

显示说明:

procs: ?r ?在运行队列等待的进程数

? ? b 在等待io的进程数

memory: swapd 虚拟内存使用情况

? ? free空闲的内存

? ? buff被用来做为缓冲的内存数

? ? cache被用来做为缓存的内存数

swap: ? si从磁盘交换到内存的交换页数量

? ? so从内存交换到磁盘的交换页数量

io: ? ? bi发送到块设备的块数

? ? ? ? bo从块设备接受到的块数

system: in 每秒CPU的中断数,包括时钟中断

? ? cs每秒的环境(上下文)切换次数

cpu: ? ?us用户CPU时间

sy系统CPU时间

id空闲CPU时间,一般来说us+sy+id=100

wt等待IO 所消耗cpu时间

st在vm中所消耗的时间

?

vmstat ?-m查看内存分配信息

vmstat ?-p /dev/sda1查看磁盘的读写

vmstat ?-d查看全部磁盘的读写

-t显示时间

-S ?k,K,m,M指定显示单位

-n 1 10显示周期,每隔1秒显示,供显示10次

?

清理页面缓存:

echo 1 > /proc/sys/vm/drop_caches

清理索引节点(inodb)链接:

echo 2 > /proc/sys/vm/drop_caches

清理页面缓存+索引节点链接

echo 3 > /proc/sys/vm/drop_caches

?

?

?

iostat : 显示CPU的磁盘统计信息

示例:

# iostat -d -k 1

Linux 2.6.32-431.1.2.0.1.el6.x86_64 (vm-centos6.5) ? ? ?2014年01月22日 ?_x86_64_ ? ? ? ?(4 CPU)

?

Device: ? ? ? ? ? ?tps ? ?kB_read/s ? ?kB_wrtn/s ? ?kB_read ? ?kB_wrtn

sda ? ? ? ? ? ? ? 5.74 ? ? ? 160.93 ? ? ? ?21.92 ? ? 260305 ? ? ?35460

sdb ? ? ? ? ? ? ? 0.69 ? ? ? ? 2.49 ? ? ? ? 0.03 ? ? ? 4024 ? ? ? ? 40

?

显示说明:

iostat -d -k 1 10

? ? -d显示磁盘使用状态

? ? -x显示更多的信息

-k / -m以kB 或者mb为单位进行显示 默认是byte

1 10每隔1秒显示一次,共显示10次

?

tps:IOPS,该设备每秒的传输次数(多少次IO)

kB_read/s:每秒从设备读取的数据量

kB_wrtn/s:每秒向设备写入的数据量

kB_read:读取的总数据量

kB_wrtn:写入的总数据量

?

iotop : 查看进程的io消耗

示例:

# iotop -o -n10 -d1

Total DISK READ: 0.00 B/s | Total DISK WRITE: 31.47 K/s

? TID ?PRIO ?USER ? ? DISK READ ?DISK WRITE ?SWAPIN ? ? IO> ? ?COMMAND ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??

? 335 be/