2.1 常用的信息显示命令
在Linux中,常用的信息显示命令大约有50多个。通过信息显示命令,系统管理员可以直接了解系统的工作状态。
2.1.1 cal命令:日期显示
cal命令用于显示日历,配合选项“-y”可以显示全年的年历。cal命令的语法格式如下所示。
cal [-1][-3][-s][-m][-j][-y][[month] year]
其中,各选项说明如表2-1所示。
表2-1 cal命令的选项说明
例如,显示当前月份,使用命令如下。
#cal 九月 2012 一 二 三 四 五 六 日 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25|26 27 28 29 30 //今天是25号
例如,按Julian日期表示形式(显示距1月1日的天数)显示2012年9月的日历,如下所示。
$ cal -j 9 2012 九月 2012 一 二 三 四 五 六 日 245246 247248 249250 251252 253 254255 256257 258259 260 261262 263264 265266 267 268269|270271 272273 274
例如,显示前一月,当前月以及下一月的月历,如下所示。
# cal -3 八月 2012 九月 2012 十月 2012 一 二 三 四 五 六 日 一 二 三 四 五 六 日 一 二 三 四 五 六 日 1 2 3 4 5 1 2 1 2 3 4 5 6 7 6 7 8 9 10 11 12 3 4 5 6 7 8 9 8 9 10 11 12 13 14 13 14 15 16 17 18 19 10 11 12 13 14 15 16 15 16 17 18 19 20 21 20 21 22 23 24 25 26 17 18 19 20 21 22 23 22 23 24 25 26 27 28 27 28 29 30 31 24 25 26 27 28 29 30 29 30 31
2.1.2 cat /proc/meminfo:内存使用情况查询
文件/proc/meminfo保存了当前系统内存使用情况的相关信息。配合使用cat命令可以查看内存使用情况。
例如,查看系统内存使用情况,命令如下所示。
# cat /proc/meminfo MemTotal: 1025988 kB //总内存1024MB MemFree: 317324 kB Buffers: 139140 kB Cached: 372808 kB //缓存区 SwapCached: 0 kB Active: 370700 kB Inactive: 272408 kB Active(anon): 136596 kB Inactive(anon): 16 kB Active(file): 234104 kB Inactive(file): 272392 kB Unevictable: 0 kB Mlocked: 0 kB HighTotal: 139144 kB HighFree: 252 kB LowTotal: 886844 kB LowFree: 317072 kB SwapTotal: 2187256 kB //交换区 SwapFree: 2187256 kB Dirty: 300 kB Writeback: 0 kB AnonPages: 131208 kB Mapped: 57248 kB Shmem: 5456 kB Slab: 47412 kB SReclaimable: 38676 kB SUnreclaim: 8736 kB KernelStack: 1960 kB PageTables: 4772 kB NFS_Unstable: 0 kB Bounce: 0 kB WritebackTmp: 0 kB CommitLimit: 2700248 kB Committed_AS: 495896 kB VmallocTotal: 122880 kB VmallocUsed: 8420 kB VmallocChunk: 108136 kB HardwareCorrupted: 0 kB HugePages_Total: 0 HugePages_Free: 0 HugePages_Rsvd: 0 HugePages_Surp: 0 Hugepagesize: 4096 kB DirectMap4k: 16376 kB DirectMap4M: 892928 kB root@li-desktop:~#
注意:/proc目录下的文件不是真正意义上的文件,关闭系统后,该目录中的文件不再存在。该目录文件通常用来帮助查看内核运行信息。
2.1.3 free命令:内存详细信息查询
free命令用于显示系统使用和空闲的内存情况,涉及的内存包括物理内存、交换分区内存(swap)和内核缓冲区内存以及高速缓存。free命令的语法格式如下所示。
free [-b][-k][-m][-g][-o][-t][-s delay][-c count][-V]
其中,各选项的具体说明如表2-2所示。
表2-2 命令free的选项说明
例如,直接使用free命令显示内存的使用情况,如下所示。
#free total used free shared buffers cached Mem: 1025988 711260 314728 0 139140 372876 -/+ buffers/cache: 199244 826744 Swap: 2187256 0 2187256 //显示内存使用信息
例如,以总和的形式显示内存使用信息,命令如下所示。
# free -t //以总和的形式显示内存使用信息 total used free shared buffers cached Mem: 1025988 711384 314604 0 139140 372888 -/+ buffers/cache: 199356 826632 Swap: 2187256 0 2187256 Total: 3213244 711384 2501860
例如,每隔4秒,周期性地查询内存使用信息,命令如下所示。
# free -s 4 //每4秒钟执行一次free命令 total used free shared buffers cached Mem: 1025988 711384 314604 0 139140 372888 -/+ buffers/cache: 199356 826632 Swap: 2187256 0 2187256 total used free shared buffers cached Mem: 1025988 711392 314596 0 139140 372888 -/+ buffers/cache: 199364 826624 Swap: 2187256 0 2187256 … …
例如,每隔2秒刷新一次内存信息,共刷新两次,命令如下所示。
# free -s 2-c 2 total used free shared buffers cached Mem: 1025988 711880 314108 0 139140 372896 -/+ buffers/cache: 199844 826144 Swap: 2187256 0 2187256 total used free shared buffers cached Mem: 1025988 712012 313976 0 139140 372896 -/+ buffers/cache: 199976 826012 Swap: 2187256 0 2187256 #
例如,以旧有格式显示内存信息,命令如下。
# free -o total used free shared buffers cached Mem: 1025988 712252 313736 0 139140 372896 Swap: 2187256 0 2187256
可以看到,所显示的内容中不包含缓存信息。
2.1.4 arch命令:CPU架构显示
arch命令等同于命令uname-m,用于查询并显示主机的体系结构。在当前的Linux系统下,arch命令的输出结果有:i386、i486、i586、alpha、sparc、arm、m68k、mips、ppc、i686等。
例如,显示当前系统的体系结构,命令如下所示。
# arch //打印当前系统的体系结构 i686 //intel架构的
2.1.5 cat /proc/cpuinfo命令:处理器CPU信息显示
文件/proc/cpuinfo中保存了处理器的相关信息,通过cat命令查看/proc/cpuinfo,可以查询CPU的相关信息。例如:
#cat /proc/cpuinfo processor : 0 vendor_id : GenuineIntel cpu family : 6 model : 42 model name : Intel(R) Core(TM) i5-2450M CPU @ 2.50GHz //不同电脑的配置不一样 stepping : 7 cpu MHz : 2494.410 //二级缓存 cache size : 3072 KB //三级缓存 fdiv_bug : no hlt_bug : no f00f_bug : no coma_bug : no fpu : yes fpu_exception: yes cpuid level : 13 wp : yes flags : fpu vme de pse tsc msr pae mce cx8 apic mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss nx rdtscp lm constant_tsc up arch_perfmon pebs bts xtopology tsc_reliable nonstop_tsc aperfmperf pni pclmulqdq ssse3 cx16 sse4_1 sse4_2 popcnt aes xsave avx hypervisor lahf_lm ida arat bogomips : 4988.82 clflush size : 64 //64位的处理器 cache_alignment : 64 address sizes : 40 bits physical, 48 bits virtual power management : //电源管理 root@li-desktop :~#
2.1.6 cat /proc/modules:查询当前系统被加载模块
文件/proc/modules保存了当前系统中被加载模块的相关信息。配合使用cat命令可以查看当前系统加载模块的情况。
例如,下面的命令查看系统当前加载的模块,如下所示。
# cat /proc/modules rfcomm 33421 4- Live 0xf8445000 //live表示存活状态 binfmt_misc 6587 1- Live 0xf8394000 sco 7885 2- Live 0xf8212000 bridge 45582 0- Live 0xf83cd000 //桥接 stp 1655 1 bridge, Live 0xf8082000 bnep 9436 2- Live 0xf8110000 l2cap 30624 16 rfcomm,bnep, Live 0xf81b3000 //I2C设备 vmhgfs 46483 1- Live 0xf81d5000 vsock 32729 0- Live 0xf80d5000 vmmemctl 6503 0- Live 0xf8059000 acpiphp 18284 0- Live 0xf8660000 nfsd 238967 13- Live 0xf860d000 exportfs 3437 1 nfsd, Live 0xf83ab000 nfs 264813 0- Live 0xf856c000 //NFS挂载文件系统 lockd 64849 2 nfsd,nfs, Live 0xf84f7000 nfs_acl 2245 2 nfsd,nfs, Live 0xf8245000 snd_ens137118814 0- Live 0xf83ea000 auth_rpcgss 33735 2 nfsd,nfs, Live 0xf8409000 gameport 9089 1 snd_ens1371, Live 0xf822d000 snd_ac97_codec 100646 1 snd_ens1371, Live 0xf84b7000 ac97_bus 1002 1 snd_ac97_codec, Live 0xf817e000 //AC97声卡 sunrpc 193085 12 nfsd,nfs,lockd,nfs_acl,auth_rpcgss, Live 0xf8460000 snd_pcm_oss 35308 0- Live 0xf81bd000 snd_mixer_oss 13746 1 snd_pcm_oss, Live 0xf80e0000 snd_pcm 70662 3 snd_ens1371,snd_ac97_codec,snd_pcm_oss, Live 0xf8219000 snd_seq_dummy 1338 0- Live 0xf80c6000 snd_seq_oss 26726 0- Live 0xf8075000 snd_seq_midi 4557 0- Live 0xf803c000 snd_rawmidi 19056 2 snd_ens1371,snd_seq_midi, Live 0xf8389000 snd_seq_midi_event 6003 2 snd_seq_oss,snd_seq_midi, Live 0xf8241000 snd_seq 47263 6 snd_seq_dummy,snd_seq_oss,snd_seq_midi,snd_seq_midi_event, Live 0xf824b000 ppdev 5259 0- Live 0xf8215000 fbcon 35102 71- Live 0xf81c7000 //frambuffer显示 tileblit 2031 1 fbcon, Live 0xf8121000 font 7557 1 fbcon, Live 0xf811a000 bitblit 4707 1 fbcon, Live 0xf810c000 softcursor 1189 1 bitblit, Live 0xf8088000 parport_pc 25962 1- Live 0xf80cc000 btusb 10925 2- Live 0xf804c000 bluetooth 49892 9 rfcomm,sco,bnep,l2cap,btusb, Live 0xf80f4000 //蓝牙设备 psmouse 63245 0- Live 0xf8149000 //鼠标模块 serio_raw 3978 0- Live 0xf8056000 joydev 8708 0- Live 0xf8009000 snd_timer 19098 2 snd_pcm,snd_seq, Live 0xf80bf000 snd_seq_device 5700 5 snd_seq_dummy,snd_seq_oss,snd_seq_midi,snd_rawmidi,snd_seq, Live 0xf8084000 snd 54148 10 snd_ens1371,snd_ac97_codec,snd_pcm_oss,snd_mixer_oss,snd_pcm,snd_seq_oss,snd_rawmidi,snd_seq,snd_timer,snd_seq_device, Live 0xf80a1000 soundcore 6620 1 snd, Live 0xf8048000 snd_page_alloc 7076 1 snd_pcm, Live 0xf8032000 intel_agp 24119 1- Live 0xf8417000 agpgart 31724 1 intel_agp, Live 0xf83e0000 shpchp 28820 0- Live 0xf83c3000 i2c_piix48335 0- Live 0xf83ad000 vga16fb 11385 1- Live 0xf839e000 vgastate 8961 1 vga16fb, Live 0xf838f000 vmci 56629 2 vmhgfs,vsock, Live 0xf8264000 lp 7028 0- Live 0xf8247000 //打印机模块 parport 32635 3 ppdev,parport_pc,lp, Live 0xf8232000 pcnet3228890 0- Live 0xf81e3000 usbhid 36110 0- Live 0xf8123000 hid 67032 1 usbhid, Live 0xf8164000 mptspi 14652 2- Live 0xf8114000 vmxnet 14135 0- Live 0xf8102000 floppy 53016 0- Live 0xf80e5000 //软盘 mii 4381 1 pcnet32, Live 0xf80c8000 mptscsih 31869 1 mptspi, Live 0xf80b5000 mptbase 83022 2 mptspi,mptscsih, Live 0xf808a000 scsi_transport_spi 21096 1 mptspi, Live 0xf8060000 //SCSI设备 vmw_pvscsi 13195 0- Live 0xf8011000 vmxnet327174 0- Live 0xf803f000 root@li-desktop:~#