Linux系统信息查看命令大全

来源:互联网 发布:生意参谋数据导出工具 编辑:程序博客网 时间:2024/06/02 00:01

Linux系统信息查看命令大全

最近看了一些Linux命令行的文章,在系统信息查看方面学到不少命令。 想起以前写过的一篇其实Linux这样用更简单, 发现这些系统信息查看命令也可以总结出一篇小小的东西来了。

另外这里还有非常多的命令, 可以作为参考。

系统

# uname -a               # 查看内核/操作系统/CPU信息# head -n 1 /etc/issue   # 查看操作系统版本# cat /proc/cpuinfo      # 查看CPU信息# hostname               # 查看计算机名# lspci -tv              # 列出所有PCI设备# lsusb -tv              # 列出所有USB设备# lsmod                  # 列出加载的内核模块# env                    # 查看环境变量

资源

# free -m                # 查看内存使用量和交换区使用量# df -h                  # 查看各分区使用情况# du -sh <目录名>        # 查看指定目录的大小# grep MemTotal /proc/meminfo   # 查看内存总量# grep MemFree /proc/meminfo    # 查看空闲内存量# uptime                 # 查看系统运行时间、用户数、负载# cat /proc/loadavg      # 查看系统负载

磁盘和分区

# mount | column -t      # 查看挂接的分区状态# fdisk -l               # 查看所有分区# swapon -s              # 查看所有交换分区# hdparm -i /dev/hda     # 查看磁盘参数(仅适用于IDE设备)# dmesg | grep IDE       # 查看启动时IDE设备检测状况

网络

# ifconfig               # 查看所有网络接口的属性# iptables -L            # 查看防火墙设置# route -n               # 查看路由表# netstat -lntp          # 查看所有监听端口# netstat -antp          # 查看所有已经建立的连接# netstat -s             # 查看网络统计信息

进程

# ps -ef                 # 查看所有进程# top                    # 实时显示进程状态

用户

# w                      # 查看活动用户# id <用户名>            # 查看指定用户信息# last                   # 查看用户登录日志# cut -d: -f1 /etc/passwd   # 查看系统所有用户# cut -d: -f1 /etc/group    # 查看系统所有组# crontab -l             # 查看当前用户的计划任务

服务

# chkconfig --list       # 列出所有系统服务# chkconfig --list | grep on    # 列出所有启动的系统服务

程序

# rpm -qa                # 查看所有安装的软件包
4年前

其实Linux这样用更简单些

最近发现公司的小孩儿们都开始学Linux了,可惜学的都是那些超级麻烦的命令,唉。 其实Linux这样用更简单些……

改IP,可以用 netconfig,可惜每次都得输入完整的IP、掩码、网关和DNS。 不如直接 vi /etc/sysconfig/network-scripts/ifcfg-eth0 再 /etc/init.d/network restart 来得快。

改DNS,最快的就是 vi /etc/resolv.conf,不用重启。

重启httpd,/etc/init.d/httpd restart 要比 service httpd restart快,因为前者可以补齐而后者不能。

修改系统服务,用chkconfig要比setup方便。

看最新的log,用 tail -f /var/log/xxx.log 比 vi /var/log/xxx.log 方便。 看不清的话就先 clear 再 tail -n 0 -f /var/log/xxx.log。

用好bash的历史记录。

压缩解压缩别动不动就tar czvf/tar xzvf,要养成不用v的好习惯。文件多了要快上好几倍。

两台机器传文件,scp 要比samba方便。windows的话就装个cygwin,或者用PuTTY自带的pscp.exe也行。

测试网络连接,nc 192.168.1.10 80 要比 telnet 192.168.1.10 80 好用。

修改samba配置,直接修改 /etc/samba/smb.conf 要比图形界面方便。

4年前

top命令详解

top命令是Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况,类似于Windows的任务管理器。 下面详细介绍它的使用方法。
认识top的显示结果

top命令的显示结果如下所示:

top - 01:06:48 up  1:22,  1 user,  load average: 0.06, 0.60, 0.48Tasks:  29 total,   1 running,  28 sleeping,   0 stopped,   0 zombieCpu(s):  0.3% us,  1.0% sy,  0.0% ni, 98.7% id,  0.0% wa,  0.0% hi,  0.0% siMem:    191272k total,   173656k used,    17616k free,    22052k buffersSwap:   192772k total,        0k used,   192772k free,   123988k cached  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND 1379 root      16   0  7976 2456 1980 S  0.7  1.3   0:11.03 sshd14704 root      16   0  2128  980  796 R  0.7  0.5   0:02.72 top    1 root      16   0  1992  632  544 S  0.0  0.3   0:00.90 init    2 root      34  19     0    0    0 S  0.0  0.0   0:00.00 ksoftirqd/0    3 root      RT   0     0    0    0 S  0.0  0.0   0:00.00 watchdog/0

统计信息区

前五行是系统整体的统计信息。第一行是任务队列信息,同 uptime 命令的执行结果。其内容如下:

01:06:48当前时间up 1:22系统运行时间,格式为时:分1 user当前登录用户数load average: 0.06, 0.60, 0.48系统负载,即任务队列的平均长度。
三个数值分别为 1分钟、5分钟、15分钟前到现在的平均值。

第二、三行为进程和CPU的信息。当有多个CPU时,这些内容可能会超过两行。内容如下:

Tasks: 29 total进程总数1 running正在运行的进程数28 sleeping睡眠的进程数0 stopped停止的进程数0 zombie僵尸进程数Cpu(s): 0.3% us用户空间占用CPU百分比1.0% sy内核空间占用CPU百分比0.0% ni用户进程空间内改变过优先级的进程占用CPU百分比98.7% id空闲CPU百分比0.0% wa等待输入输出的CPU时间百分比0.0% hi 0.0% si 

最后两行为内存信息。内容如下:

Mem: 191272k total物理内存总量173656k used使用的物理内存总量17616k free空闲内存总量22052k buffers用作内核缓存的内存量Swap: 192772k total交换区总量0k used使用的交换区总量192772k free空闲交换区总量123988k cached缓冲的交换区总量。
内存中的内容被换出到交换区,而后又被换入到内存,但使用过的交换区尚未被覆盖,
该数值即为这些内容已存在于内存中的交换区的大小。
相应的内存再次被换出时可不必再对交换区写入。

进程信息区

统计信息区域的下方显示了各个进程的详细信息。首先来认识一下各列的含义。

序号列名含义aPID进程idbPPID父进程idcRUSERReal user namedUID进程所有者的用户ideUSER进程所有者的用户名fGROUP进程所有者的组名gTTY启动进程的终端名。不是从终端启动的进程则显示为 ?hPR优先级iNInice值。负值表示高优先级,正值表示低优先级jP最后使用的CPU,仅在多CPU环境下有意义k%CPU上次更新到现在的CPU时间占用百分比lTIME进程使用的CPU时间总计,单位秒mTIME+进程使用的CPU时间总计,单位1/100秒n%MEM进程使用的物理内存百分比oVIRT进程使用的虚拟内存总量,单位kb。VIRT=SWAP+RESpSWAP进程使用的虚拟内存中,被换出的大小,单位kb。qRES进程使用的、未被换出的物理内存大小,单位kb。RES=CODE+DATArCODE可执行代码占用的物理内存大小,单位kbsDATA可执行代码以外的部分(数据段+栈)占用的物理内存大小,单位kbtSHR共享内存大小,单位kbunFLT页面错误次数vnDRT最后一次写入到现在,被修改过的页面数。wS进程状态。
D=不可中断的睡眠状态
R=运行
S=睡眠
T=跟踪/停止
Z=僵尸进程xCOMMAND命令名/命令行yWCHAN若该进程在睡眠,则显示睡眠中的系统函数名zFlags任务标志,参考 sched.h

默认情况下仅显示比较重要的 PID、USER、PR、NI、VIRT、RES、SHR、S、%CPU、%MEM、TIME+、COMMAND 列。可以通过下面的快捷键来更改显示内容。

更改显示内容

通过 f 键可以选择显示的内容。按 f 键之后会显示列的列表,按 a-z 即可显示或隐藏对应的列,最后按回车键确定。

o 键可以改变列的显示顺序。按小写的 a-z 可以将相应的列向右移动,而大写的 A-Z 可以将相应的列向左移动。最后按回车键确定。

按大写的 FO 键,然后按 a-z 可以将进程按照相应的列进行排序。而大写的 R 键可以将当前的排序倒转。

4年前

bash-completion增强tab补全

默 认情况下,在bash中按 TAB 可以自动补齐,但仅能自动补齐命令名和文件名。bash-2.05及以后的版本提供了自动补齐的编程接口,通过安装 bash-completion 来使用 TAB 键自动补齐几乎任何内容,包括参数、文件、目录甚至包名称等等。例如:(<TAB>表示按TAB键)

$ rpm -<TAB>    (自动补齐参数)-F  -U  -V  -b  -e  -i  -q  -t$ man cat<TAB>    (自动补齐manpage)cat       catan     catanf    catanh    catanhf   catanhl   catanl    catch     catclose  catdic    catgets   catopen$ tar xjvf <TAB>   (补齐时仅显示tar.bz2文件)gimp-2.2.13.tar.bz2  glib-2.12.3.tar.bz2

最近的发行版一般都自带bash-completion包,如果你的bash没有这个功能,可以从这里下载bash-completion包并安装。安装方法很简单,下载到的包中包含一个 bas-completion 文件,将其放在 /etc 下,然后编辑 /etc/bashrc,在 if [ "$PS1" ]; then 的判断中加入以下内容:

if [ "$PS1" ]; then  ...其他内容省略,加入以下内容  # Run bash completion code  if [ -r /etc/bash_completion ]; then  # Source completion code.    . /etc/bash_completion  fifi
4年前

redhat linux命令大全

一. 启动,关机,登入,登出相关命令
<login> 登录
<logout> 登出
<exit> 登出
<shutdown> 停止系统
<halt> 停止系统
<reboot> 重启动
<poweroff> 切断电源
<sync> 把内存里的内容写入磁盘
<lilo> 安装lilo启动管理程序
<grub> 安装lilo启动管理程序
 
二. Shell相关命令
<chsh> 切换Shell
<history> 显示命令履历
<alias> 设置命令别名
<unalias> 取消命令别名
<which> 显示命令所在位置
<type> 查询命令种类
<echo> 显示字符串或者变量内容
<set> 设置/显示Shell变量
<printenv> 显示环境变量
<export> 设置环境变量
<env> 设置临时环境变量
<unset> 释放环境变量
<setenv> 设置环境变量
<unsetenv> 释放环境变量
<source> 执行文件当中的命令
<man> 查询命令手册
<info> 查询超文本命令手册
<whatis> 显示命令简介
<apropos> 通过关键字查询手册
 
三. 用户管理相关命令
<su> 切换到其他用户
<useradd> 追加用户
<adduser> 追加用户
<userdel> 删除用户
<usermod> 修改用户设置
<chfn> 修改用户私人信息
<groupadd> 追加组
<groupdel> 删除组
<groupmod> 修改组设置
<passwd> 更改密码
<whoami> 显示用户名
<logname> 显示登录用户帐号
<users> 显示所有登录用户信息
<who> 查询登录用户信息
<w> 查询登录用户信息
<id> 显示指定用户的ID信息
<groups> 显示指定用户的所属组
<finger> 显示指定用户的个人信息
<mesg> 开关与他人收发消息
<write> 给其他用户发消息
<wall> 给所有用户发消息
<talk> 和其他用户聊天
 
四. 系统消息相关命令
<date> 显示/设置当前时间
<uptime> 显示系统运行时间
<arch> 显示机器的核心构架(如i386)
<uname> 显示操作系统信息
<tty> 显示终端名
<last> 显示登录/登出在履历
<lastb> 显示非法登录信息
<dumpkeys> 显示当前键盘配置
<loadkeys> 变更键盘配置
<df> 查询磁盘使用信息
<du> 查询磁盘使用信息
<dmesg> 显示系统启动消息
<script> 保存输入输出到文件
 
五. 文件操作相关命令
<ls> 显示文件列表
<tree> 显示目录树
<pwd> 显示当前路径
<cd> 更改当前路径
<pushd> 追加路径到目录堆栈
<popd> 从目录堆栈删除路径
<dirs> 显示目录堆栈的内容
<mkdir> 创建路径
<rmdir> 删除路径
<cp> 复制文件/目录
<rm> 删除文件/目录
<mv> 移动文件/目录,修改文件名
<chown> 更改文件/目录的所有者
<chgrp> 修改文件/目录的所有组
<chmod> 修改文件/目录的权限
<touch> 更改文件时间
<ln> 建立文件/目录链接
<find> 查找文件
<whereis> 显示文件存在的路径名
<file> 查询文件种类
<size> 查询文件大小
 
六. 文件编辑相关命令
<cat> 显示文件内容
<tee> 输出到文件和屏幕
<more> 分屏显示文件内容
<less> 分屏显示文件内容
<head> 显示文件头部内容
<tail> 显示文件尾部内容
<fold> 折叠显示长行
<sort> 排列文件的行
<cmp> 比较文件内容
<diff> 显示文件差异
<nkf> 更改日语文件编码
<dd> 变更文件之后复制
<wc> 统计文本单词数,文件大小等
<split> 分割文件
<paste> 以行连接文件
<join> 以字段连接文件
<grep> 查询文字
<uniq> 过滤重复部分显示文件内容
<tr> 替换文字
<sed> 替换文字
 
七. 压缩/解压缩相关命令
<ar> 压缩/解压缩文件
<tar> 压缩/解压缩文件
<compress> 压缩/解压缩文件
<uncompress> 解压缩
<gzip> 压缩/解压缩文件
<gunzip> 解压缩
<zcat> 显示压缩文件的内容
<lha> 压缩/解压缩文件
<uuencode> 把二进制文件编码为文本文件
<uudecode> 把经过编码的文本文件还原为二进制文件
 
八. MS-DOS工具集[mtools]命令
<mdir> 显示文件列表
<mcd> 改变当前目录
<mmd> 新建目录
<mrd> 删除目录
<mdeltree> 删除目录树
<mcopy> 复制文件
<mdel> 删除文件
<mmove> 移动文件
<mren> 更改文件或目录名
<mattrib> 修改文件属性
<mtype> 显示文件内容
<mdu> 查询文件或目录大小
<minfo> 显示磁盘信息
<mformat> 以MS-DOS方式格式化磁盘
<mlabel> 设置磁盘标签
 
九. 控制外部设备相关命令
<mount> mount上设备
<umount> 解除已经mount上的设备
<eject> 弹出(CD/DVD等)
<fdformat> 格式化软盘
<fdisk> 配置/显示硬盘分区
<mkfs> 格式化磁盘分区
<fsck> 检查/修复磁盘错误
<lpr> 打印到打印机
<lprm> 中断打印任务
<lpq> 显示打印任务的状态
<lpc> 管理/控制打印任务
<ifconfig> 显示/设定NIC配置
 
十. 进程及任务管理相关命令
<ps> 显示正在运行的进程
<jobs> 显示后台运行任务
<fg> 把任务切换到前台
<bg> 把任务切换到后台
<kill> 中止进程或任务
<killall> 中止进程或任务
<wait> 等待进程或任务的结束
<at> 设置定时执行任务
<atq> 显示尚未执行的任务
<atrm> 删除定时执行任务
<batch> 在系统负荷减轻的时候执行任务
<nice> 改变优先度并执行任务
<nohup> 在后台执行任务,Logout之后也不退出
<sleep> 休眠一定的时间
 
十一. 网络管理相关命令
<netstat> 显示当前网络连接状况
<route> 显示/设置路由
<host> 显示网络主机情况
<hostname> 显示/设置当前主机的名字
<ping> 确认和远程机器的连接情况
<traceroute> 显示路由信息
<rwho> 查询网上机器的登陆用户
<ruptime> 查询网上机器的系统运行时间
<rlogin> 登陆到远程机器
<telnet> 用telnet登陆到远程机器
<rsh> 给远程机器发送命令
<rcp> 在远程机器之间复制文件
<mail> 收取邮件
<sendmail> 发送邮件
<mailq> 确认邮件队列
<ftp> 用ftp传输文件
 
十二. 其他命令
<cal> 显示日历
<clear> 清屏
<gcc> 编译C语言代码
<as> 汇编
<bc> 计算
<rpm> Redhat的包管理
<dpkg> Debian的包管理
<installpkg> Slackware的包安装(删除命令则是removepkg)
<XF86Setup,turboxfg,Xconfigurator> 配置 X 服务器
<startx> 启动 X-Window 系统
附:组合命令
重定向,如
$ ls -l /bin > ls-output
$ more ls-output
管道命令,如
$ cat file1 file2 | sort | uniq
经常被用于管道的命令
awk, fold, grep, head, nnkf, pr, sed, sort, tail, tee, tr, uniq, wc
0 0