Linux系统查询
Linux distribution 的差异性, 除了 FHS 之外,还有个 Linux Standard Base (LSB) 的标准是可以依循。使用 ls 来查看 FHS 规范的目录是否正确的存在于你的 Linux 系统中。使用uname 检查Linux核心与LSB 的标准。
LSB,https://www.linuxbase.org/lsb-cert/productdir.php?by_lsb
1、内核版本
uname -a (Linux查看版本当前操作系统内核信息)
# head -n 1 /etc/issue # 查看操作系统版本
# cat /proc/cpuinfo # 查看CPU信息
# hostname # 查看计算机名
# lspci -tv # 列出所有PCI设备
# lsusb -tv # 列出所有USB设备
# lsmod # 列出加载的内核模块
# env # 查看环境变量
1 通过 uname 检查 Linux 核心与操作系统的位版本
[dmtsai@study ~]$ uname -r # 查看核心版本
3.10.0-229.el7.x86_64
[dmtsai@study ~]$ uname -m # 查看操作系统的位版本
x86_64
2 假设你的 CentOS 7 确实有网络可以使用的情况下 (要用 root 的身份)
[root@study ~]# yum install redhat-lsb # yum 的用法后面章节才会介绍
.....(前面省略)....
Install 1 Package (+85 Dependent packages)
Upgrade ( 4 Dependent packages)
Total size: 47 M
Total download size: 31 M
Is this ok [y/d/N]
.....(后面省略)....
[root@study ~]# lsb_release -a
LSB Version: :core-4.1-amd64:core-4.1-noarch:cxx-4.1-amd64:cxx-4.1-noarch:
desktop-4.1-amd64:desktop-4.1-noarch:languages-4.1-amd64:languages-4.1-noarch:
printing-4.1-amd64:printing-4.1-noarch # LSB 的相关版本
Distributor ID: CentOS
Description: CentOS Linux release 7.0.1406 (Core)
Release: 7.0.1406
Codename: Core
2、操作系统版本
cat /proc/version(Linux查看当前操作系统版本信息)
cat /etc/issue 或 cat /etc/redhat-release (Linux查看版本当前操作系统发行版信息)
sudo lsb_release -a(Ubuntu )(CentOS 6.9版本需要安装lsb,CentOS 7.0以上直接可以使用,网上都说Linux都支持,我只验证过CentOS系统)
more /etc/redhat-release
cat /etc/redhat-release
3、cpu信息
cat /proc/cpuinfo (Linux查看cpu相关信息,包括型号、主频、内核信息等)
more /proc/cpuinfo | grep "model name"
grep "model name" /proc/cpuinfo
如果觉得需要看的更加舒服
grep "model name" /proc/cpuinfo | cut -f2 -d:
4、CPU版本位数
getconf LONG_BIT (Linux查看版本多少位)(Linux查看版本是32,说明当前CPU运行在32bit模式下, 但不代表CPU不支持64bit)
5、资源
# free -m # 查看内存使用量和交换区使用量
# df -h # 查看各分区使用情况
# du -sh <目录名> # 查看指定目录的大小
# grep MemTotal /proc/meminfo # 查看内存总量
# grep MemFree /proc/meminfo # 查看空闲内存量
# uptime # 查看系统运行时间、用户数、负载
# cat /proc/loadavg # 查看系统负载
6、磁盘和分区
# mount | column -t # 查看挂接的分区状态
# fdisk -l /df -h # 查看所有分区
# swapon -s # 查看所有交换分区
# hdparm -i /dev/hda # 查看磁盘参数(仅适用于IDE设备)
# dmesg | grep IDE # 查看启动时IDE设备检测状况
# du -sh # 可以看到全部占用的空间
# du /etc -sh # 可以看到这个目录的大小
7、网络
# ifconfig # 查看所有网络接口的属性
# iptables -L # 查看防火墙设置
# route -n # 查看路由表
# netstat -lntp # 查看所有监听端口
# netstat -antp # 查看所有已经建立的连接
# netstat -s # 查看网络统计信息
ifconfig eth0 up 启用网卡eth0
/etc/initd/network restart 重启网络服务
8、进程
# ps -ef # 查看所有进程
# top # 实时显示进程状态
9、用户
# w # 查看活动用户
# id <用户名> # 查看指定用户信息
# last # 查看用户登录日志
# cut -d: -f1 /etc/passwd # 查看系统所有用户
# cut -d: -f1 /etc/group # 查看系统所有组
# crontab -l # 查看当前用户的计划任务
10、服务
# chkconfig --list # 列出所有系统服务
# chkconfig --list | grep on # 列出所有启动的系统服务
11、程序
# rpm -qa # 查看所有安装的软件包
# rpm -qa | wc -l # 查看所有安装的软件包
# yum list installed | wc -l # 查看所有安装的软件包
# cat -n /root/install.log # 查看系统安装的时候装的软件包
# more /root/install.log | wc -l # 查看系统安装的时候装的软件包
//很奇怪,通过rpm,和yum这两种方式查询的安装软件包,数量并不一样。没有找到原因。
12、内存
grep MemTotal /proc/meminfo
grep MemTotal /proc/meminfo | cut -f2 -d:
free -m |grep "Mem" | awk '{print $2}'
13、查看键盘布局
cat /etc/sysconfig/keyboard
cat /etc/sysconfig/keyboard | grep KEYTABLE | cut -f2 -d=
14、查看selinux情况
sestatus
sestatus | cut -f2 -d:
cat /etc/sysconfig/selinux
15、查看ip,mac地址
在ifcfg-eth0 文件里你可以看到mac,网关等信息。
ifconfig
cat /etc/sysconfig/network-scripts/ifcfg-eth0 | grep IPADDR
cat /etc/sysconfig/network-scripts/ifcfg-eth0 | grep IPADDR | cut -f2 -d=
ifconfig eth0 |grep "inet addr:" |awk '{print $2}'|cut -c 6-
ifconfig | grep 'inet addr:'| grep -v '127.0.0.1' | cut -d: -f2 | awk '{ print $1}'
cat /etc/sysconfig/network查看网关
cat /etc/resolv.conf查看dns
16、查看默认语言
echo $LANG $LANGUAGE
cat /etc/sysconfig/i18n
17、查看所属时区和是否使用UTC时间
cat /etc/sysconfig/clock
18、查看主机名
hostname
cat /etc/sysconfig/network
修改主机名就是修改这个文件,同时最好也把host文件也修改。
19、查看163.com的服务器环境
curl --head www.163.com
20、查看开机时间多长
uptime