您的位置:首页 > 运维架构 > Linux

Linux系统信息查看命令大全

2014-03-28 08:17 267 查看

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.48
Tasks:  29 total,   1 running,  28 sleeping,   0 stopped,   0 zombie
Cpu(s):  0.3% us,  1.0% sy,  0.0% ni, 98.7% id,  0.0% wa,  0.0% hi,  0.0% si
Mem:    191272k total,   173656k used,    17616k free,    22052k buffers
Swap:   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 sshd
14704 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
fi
fi


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
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: