命令收集Ubuntu Linux内存、硬件系统信息(命令总结大全)
对于新的计算机或笔记本电脑或服务器,我需要收集有关其硬件的信息。当你需要更换磁盘或内存时,这些信息就很有用。为了更换硬件,你需要提前了解系统的硬件信息。在这篇文章中,我将列出你可以使用的命令来收集硬件信息。
下面的所有命令都在Ubuntu Linux系统14.04上进行测试,但是应该也能在当前任何的发行版机器上工作,比如Debian 或 Fedora Linux.
查找系统主机名(system host name)
列出系统的主机名:
$ hostname
$ cat /etc/hostname
server1
显示系统的DNS域名:
$ dnsdomainname
cyberciti.biz
显示系统的完全限定域名/全称域名(FQDN):
$ hostname -f
server1.cyberciti.biz
查找系统的序列号(serial number)、系统的制造商(manufacturer)和型号名称(model name)
$ sudo dmidecode -s system-serial-number
$ sudo dmidecode -s system-manufacturer
$ sudo dmidecode -s system-product-name
$ sudo dmidecode | more
或者使用lshw命令
# lshw | more
$ sudo lshw -short
显示有关安装硬件的信息
$ sudo lsdev
查找系统CPU信息
$ cat /proc/cpuinfo
或
lscpu
显示CPU(处理器)相关的统计数据
$ sudo mpstat
$ sudo mpstat 1
$ sudo mpstat -A
查找系统主内存(RAM)信息
显示有关内存使用情况的统计数据,包括安装和使用的内存:
$ less /proc/meminfo
显示系统中的空闲和已使用的内存量:
free
## 显示内存剩余量 单位(M)##
free -m
## 显示内存剩余量 单位(G) ##
free -g
## 显示内存剩余量 单位(T) ##
free –tera
## Display human readable output ##
free -h
显示系统交换空间使用情况:
$ swapon -s
$ cat /proc/swaps
$ cat /proc/meminfo
$ top
$ vmstat
$ for file in /proc/*/status ; do awk '/VmSwap|Name/{printf $2 " " $3}END{ print ""}' $file; done | sort -k 2 -n -r | less
$ smem
显示系统虚拟内存统计信息:
$ sudo vmstat
$ sudo vmstat 1
$ sudo vmstat 2
显示Ubuntu Linux发行版本和相关信息:
$ lsb_release -a
显示系统内核版本号:
$ uname -r
或者
$ uname -a
查找系统内核参数:
$ cat /proc/cmdline
$ sysctl -a | more
查找系统内核架构(32位或64位):
$ uname -m
$ getconf LONG_BIT
$ arch
输出总系统磁盘大小:
# fdisk -l | grep '^Disk /dev'
列出/dev/sda磁盘的所有分区
读出/dev/sda磁盘信息:
# fdisk -l /dev/sda
设置或得到磁盘对应分区的卷标:
$ sudo fdisk /dev/sda
$ sudo e2label /dev/sda1
$ sudo cfdisk /dev/sda
显示块设备属性:
# blkid
列出所有的块设备:
# lsblk
显示文件系统的磁盘空间使用情况:
$ df
$ df -H
$ df -HT
统计目录(或文件)所占磁盘空间的大小:
$ du
$ du /home
显示挂载文件系统:
$ cat /proc/mount
$ mount
显示SCSI设备(或主机)和它们的属性:
$ lsscsi
显示I/0数据:
$ sudo iostat
$ sudo iostat 2
查找系统的设备信息
$ lspci
$ lspci -vt
$ lspci | grep -i 'something'
$ lspci -vvvn| less
找到系统的USB设备信息
$ lsusb
$ lsusb -vt
查找系统无线设备信息
$ iwconfig
$ watch -n 1 cat /proc/net/wireless
$ wavemon
找到系统VGA/Graphics 设备的信息
$ lspci | grep -i vga
$ lspci -vvnn | grep VGA
或者
$ sudo lshw -class display
找到系统的NVIDIA图形设备的信息
下面的命令只能工作在使用了NVIDIA二进制的Linux驱动程序:
$ nvidia-smi
或者
$ nvidia-settings
找到系统AMD / ATI图形设备的信息
下面的命令只能工作在使用了AMD的二进制Linux驱动程序:
$ fglrxinfo
运行的是哪个版本的unity?
$ unity –version
查找系统音频设备信息
$ lspci | grep -i audio
或
$ cat /proc/asound/cards
或
$ arecord -l
显示系统/笔记本电脑电池的状态和温度
$ upower -i /org/freedesktop/UPower/devices/battery_BAT0
$ acpi -V
显示系统运行多久了
$ uptime
$ who
$ w
找到系统负载
$ uptime
$ cat /proc/loadavg
$ sudo top
$ sudo htop
$ sudo atop
显示系统重启和关机历史
$ last reboot
$ last shutdown
显示运行级别
$ runlevel
$ who -r
显示内核环缓冲(启动时间)消息
使用下面的命令来查看包括硬件配置的启动时间信息
$ sudo less /var/log/dmesg
$ sudo grep 'regx' /var/log/dmesg
$ sudo grep '[h|s]d' /var/log/dmesg
显示系统驱动程序(模块)
$ sudo lsmod
$ sudo modinfo {driver_name}
$ sudo modinfo kvm
查找系统的IP地址和相关信息
你需要使用到ip命令:
## Info about all interfaces. Must be run as root via sudo command ##
sudo ip a
sudo ip
sudo ip link ls up
sudo ifconfig -a
## Only show eth1 interface info ##
sudo ip a show eth0
sudo ifconfig eth0
显示系统路)由表
## You can use any one of the following command ##
## Must be run as root ##
sudo ip r
sudo route -n
sudo netstat -nr
显示系统以太网桥
$ sudo brctl show
$ sudo bridge link
显示系统的DNS服务器和相关信息
显示系统名称服务器的IP地址(ISP或DNS服务器的IP应该列在这里):
# cat /etc/resolv.conf
显示系统解析配置文件。这有助于找出主机查找行为:
# cat /etc/host.conf
使用上述两个个文件来配置名称解析:
显示系统端口和套接字的信息
## Must run as root via sudo ##
sudo ss
## Display all listing ports ##
sudo ss -l
sudo netstat -tulpn
sudo netstat -tulpn | grep LISTEN
## Display all TCP sockets
sudo ss -t -a
## Display all UDP sockets.
sudo ss -u -a
## List all open files
lsof | more
lsof | grep something
lsof /dev/sda2
lsof /path/to/file
显示运行服务列表
### SYS V ###
$ sudo service –status-all
或者
## UPSTART ##
$ sudo initctl list
找出是否启用服务:
## UPSTART ##
$ sudo initctl status service-name
$ sudo initctl status smbd
或者
## SYS V
$ sudo service serviceName status
$ sudo service nginx status
查看日志文件
$ cd /var/log
$ ls -l
$ tail -f /var/log/fileName
$ grep 'something' /var/log/fileNameHere
查找文件名
$ locate fileName
$ locate htpasswd
$ locate passwd
$ locate my.resume.doc
给定条件进行文件查找
$ find {/dir/to/search} -name {file-to-search} -print
$ find /etc/ -name /etc/passwd -print
$ find $HOME -name '*.doc' -print
查看用户帐户信息
$ less /etc/passwd
$ grep userName /etc/passwd
$ getent passwd
查看组帐户详细信息
$ less /etc/group
$ getent group
$ grep group-name /etc/group
$ groups userName
查看密码规则信息
$ chage -l userName
$ chage -l root
$ chage -l vivek
查看系统使用情况
$ sudo top
$ sudo htop
$ sudo atop
$ sudo ps auxwww
$ sudo netstat [options]
$ sudo iostat
$ sudo mpstat 1
$ sudo sar [options]
跟踪系统调用
$ strace -o output.txt /bin/foo
$ strace -p 22254 -s 80 -o debug.nginx.txt
跟踪库调用
$ sudo ltrace /usr/sbin/httpd
$ sudo ltrace /sbin/chroot /usr/sbin/httpd
查看进程信息
$ sudo pstree
$ sudo pstree | less
$ sudo ps auxwwwm
$ ps alxwww
$ ps auxwww
$ lsof -b M -n -l
变更进程优先级
$ sudo /bin/nice -n -1 command-name-here
$ sudo /bin/nice -n -1 pid
$ sudo renice {priority} pid
查看进程CPU关联信息
$ sudo taskset -p {pid-here}
$ sudo taskset -p 42
显示系统所有安装包列表
$ dpkg -l
$ dpkg -l | less
$ dpkg -l nginx
显示所有安装程序的系统列表
$ sudo apt-show-versions -a | grep -i "security"
显示运行文件需要运行库的列表
$ ldd file
找到一个文件所属的包
$ dpkg -S /path/to/file
$ dpkg -S /bin/ls
创建所有已安装软件的备份列表
$ sudo dpkg –get-selections > /root/installed.pkgs.txt
恢复
$ sudo dpkg –set-selections < /root/installed.pkgs.txt
显示系统防火墙配置
$ sudo iptables -L -n -v
$ sudo ufw status numbered
$ sudo ufw status verbose
$ sudo ufw app list
对于不懂的命令不要忘了用man去查看它。
$ man dpkg
$ man htop
$ man …
最后,时常做一个备份-在你的系统下,备份它不能被强调的是多么重要。但是一个良好的备份习惯,可以让你的系统从磁盘故障或意外的文件删除、文件损坏,或完全服务器的破坏等事故中迅速恢复。
英文原文地址:http://www.cyberciti.biz/hardware/collecting-ubuntu-linux-system-information/
翻译地址:http://coderschool.cn/1466.html
转载请注明英文和翻译地址
1 Comment
首次来访,新年快乐!