玩转Linux服务器常用命令

Posted 淼淼之森

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了玩转Linux服务器常用命令相关的知识,希望对你有一定的参考价值。

查看服务器的一些基本信息:

linux基础命令:http://cnblogs.com/mmzs/p/8406208.html

Linux某些命令找不到/无法使用:http://www.cnblogs.com/mmzs/p/9043190.html

Linux之定时任务Crond使用:http://cnblogs.com/mmzs/p/8178487.html

Linux命令-基本操作和软件安装:http://cnblogs.com/mmzs/p/8183935.html

显示安装的系统版本

[root@VM_0_5_centos ~]# cat /etc/redhat-release 
[root@VM_0_5_centos ~]# cat /proc/version
[root@VM_0_5_centos ~]# uname -r

显示系统是多少位的(32/64bit)

getconf LONG_BIT 

查看所有安装的软件包

//查看所有安装的软件包
[root@VM_0_5_centos ~]# rpm -qa 
libX11-devel-1.6.5-1.el7.x86_64
xmlrpc-c-client-1.32.5-1905.svn2451.el7.x86_64
setup-2.8.71-7.el7.noarch
gtk+-1.2.10-77.el7.x86_64
dhcp-libs-4.2.5-58.el7.centos.x86_64
langtable-data-0.0.31-3.el7.noarch
libXfixes-devel-5.0.3-1.el7.x86_64

查看配置的环境变量

//查看配置的环境变量
[root@VM_0_5_centos ~]# env

查看当前用户的计划任务服务

// 查看当前用户的计划任务服务
[root@VM_0_5_centos ~]# crontab -l 

查看所有网络接口的属性,包括IP地址

// 查看所有网络接口的属性,包括IP地址
[root@VM_0_5_centos ~]# ifconfig

防火墙

//centos7的防火墙相关:
firewall-cmd --state (防火墙状态)
systemctl list-unit-files|grep firewalld.service(防火墙状态)
systemctl restart firewalld.service(关闭防火墙)
systemctl disable firewalld.service(禁止开机自动启动)
//centos7以下的防火墙相关:
service iptables stop(关闭防火墙centos7以下)
chkconfig iptables off(禁止开机自动启动)

内存/硬盘大小 

//内存大小
[root@VM_0_5_centos ~]# cat /proc/meminfo |grep MemTotal
MemTotal:        1883616 kB
//硬盘大小
[root@VM_0_5_centos ~]# fdisk -l |grep Disk
Disk /dev/vda: 53.7 GB, 53687091200 bytes, 104857600 sectors
Disk label type: dos
Disk identifier: 0x000c5e30

查看系统内存情况

[root@VM_0_5_centos ~]# free
              total        used        free      shared  buff/cache   available
Mem:        1883616      875260       67028         388      941328      574040
Swap:             0           0           0
//total:总计物理内存的大小
//used:已使用多大
//free:可用有多少
//Shared:多个进程共享的内存总额
//Buffers/cached:磁盘缓存的大小
//available:可用物理内存大小
//查看内存总量
grep MemTotal /proc/meminfo 
//查看空闲内存量
grep MemFree /proc/meminfo 

CPU大小

//查看CPU相关参数
[root@VM_0_5_centos ~]# cat /proc/cpuinfo

[root@VM_0_5_centos ~]# cat /proc/cpuinfo |grep "model name" && cat /proc/cpuinfo |grep "physical id"
model name    : Intel(R) Xeon(R) CPU E5-26xx v4
physical id    : 0
//说明:Linux下可以在/proc/cpuinfo中看到每个cpu的详细信息。但是对于双核的cpu,在cpuinfo中会看到两个cpu。常常会让人误以为是两个单核的cpu。
//其实应该通过Physical Processor ID来区分单核和双核。而Physical Processor ID可以从cpuinfo或者dmesg中找到. flags 如果有 ht 说明支持超线程技术 判断物理CPU的个数可以查看physical id 的值,相同则为同一CPU

查看分区使用情况

// 查看所有分区
[root@VM_0_5_centos ~]# fdisk -l

Disk /dev/vda: 53.7 GB, 53687091200 bytes, 104857600 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk label type: dos
Disk identifier: 0x000c5e30

Device Boot Start End Blocks Id System
/dev/vda1 * 2048 104857566 52427759+ 83 Linux
//查看各分区使用情况
[root@VM_0_5_centos ~]# df -h
Filesystem      Size  Used Avail Use% Mounted on
/dev/vda1        50G   15G   33G  32% /
devtmpfs        911M     0  911M   0% /dev
tmpfs           920M   24K  920M   1% /dev/shm
tmpfs           920M  364K  920M   1% /run
tmpfs           920M     0  920M   0% /sys/fs/cgroup
tmpfs           184M     0  184M   0% /run/user/0

查看指定目录的大小

//查看指定目录的大小,不指定时默认是当前目录
[root@VM_0_5_centos ~]# du -sh /software/
2.1G    /software/

查看用户信息

[root@VM_0_5_centos ~]# w 
// 查看活动用户
[root@VM_0_5_centos ~]# id 
// 查看指定用户信息
[root@VM_0_5_centos ~]# last 
// 查看用户登录日志
[root@VM_0_5_centos ~]# cut -d: -f1 /etc/passwd
 // 查看系统所有用户
[root@VM_0_5_centos ~]# cut -d: -f1 /etc/group
// 查看系统所有组

查看CPU信息的linux系统信息命令

//查看CPU信息的linux系统信息命令
[root@VM_0_5_centos ~]# cat /proc/cpuinfo 
processor    : 0
vendor_id    : GenuineIntel
cpu family    : 6
model        : 79
model name    : Intel(R) Xeon(R) CPU E5-26xx v4
stepping    : 1
microcode    : 0x1
cpu MHz        : 2394.446
cache size    : 4096 KB
physical id    : 0
siblings    : 1
core id        : 0
cpu cores    : 1
apicid        : 0
initial apicid    : 0
fpu        : yes
fpu_exception    : yes
cpuid level    : 13
wp        : yes
flags        : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ss ht syscall nx lm constant_tsc rep_good nopl eagerfpu pni pclmulqdq ssse3 fma cx16 pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand hypervisor lahf_lm abm 3dnowprefetch bmi1 avx2 bmi2 rdseed adx xsaveopt
bogomips    : 4788.89
clflush size    : 64
cache_alignment    : 64
address sizes    : 40 bits physical, 48 bits virtual
power management:

查看系统运行/启动时间

//最清晰的查看方式
[root@VM_0_5_centos ~]# cat /proc/uptime| awk -F. \'{run_days=$1 / 86400;run_hour=($1 % 86400)/3600;run_minute=($1 % 3600)/60;run_second=$1 % 60;printf("系统已运行:%d天%d时%d分%d秒",run_days,run_hour,run_minute,run_second)}\'
系统已运行:0天0时6分7秒

//who -b 查看最后一次系统启动的时间。
//who -r 查看当前系统运行时间
[root@VM_0_5_centos ~]# who -b
         system boot  2018-06-28 16:52 //系统上次启动时间
[root@VM_0_5_centos ~]# who -r
         run-level 3  2018-06-28 16:52 

//last reboot可以看到Linux系统历史启动的时间。 重启一下操作系统后,然后
[root@VM_0_5_centos ~]# last reboot
reboot   system boot  3.10.0-693.el7.x Thu Jun 28 16:52 - 11:21 (3+18:29)   
reboot   system boot  3.10.0-693.el7.x Mon Jun 25 11:21 - 16:52 (3+05:30)   
reboot   system boot  3.10.0-693.el7.x Tue Jun 19 22:21 - 16:52 (8+18:31)   

//如果只需要查看最后一次Linux系统启动的时间
[root@VM_0_5_centos ~]# last reboot | head -1
reboot   system boot  3.10.0-693.el7.x Thu Jun 28 16:52 - 11:27 (3+18:35) 

// w命令查看,up后表示系统到目前运行了多久时间,反过来推算系统重启时间
[root@VM_0_5_centos ~]# w
 11:30:35 up 3 days, 18:38,  1 user,  load average: 78.52, 73.84, 72.60
USER     TTY      FROM             LOGIN@   IDLE   JCPU   PCPU WHAT
root     pts/0    222.211.233.166  11:18    3.00s  0.02s  0.00s w

//uptime 命令查看
[root@VM_0_5_centos ~]# uptime
 11:33:18 up 3 days, 18:40,  1 user,  load average: 71.31, 72.56, 72.30

//通过/proc/uptime查看
[root@VM_0_5_centos ~]# cat /proc/uptime
266.50 209.15//第一数字即是系统已运行的时间266.50秒
//运用系统工具date即可算出系统启动时间
[root@VM_0_5_centos ~]# date -d "$(awk -F. \'{print $1}\' /proc/uptime) second ago" +"%Y-%m-%d %H:%M:%S"
2018-06-28 16:52:24
[root@VM_0_5_centos ~]# cat /proc/uptime| awk -F. \'{run_days=$1 / 86400;run_hour=($1 % 86400)/3600;run_minute=($1 % 3600)/60;run_second=$1 % 60;printf("系统已运行:%d天%d时%d分%d秒",run_days,run_hour,run_minute,run_second)}\'
系统已运行:0天0时6分7秒

//top命令
[root@VM_0_5_centos ~]# top
top - 11:29:30 up 3 days, 18:37, 1 user, load average: 71.57, 72.68, 72.20
Tasks: 164 total, 70 running, 92 sleeping, 0 stopped, 2 zombie
%Cpu(s): 13.0 us, 86.7 sy, 0.0 ni, 0.0 id, 0.0 wa, 0.0 hi, 0.3 si, 0.0 st
KiB Mem : 1883616 total, 75328 free, 804624 used, 1003664 buff/cache
KiB Swap: 0 total, 0 free, 0 used. 642936 avail Mem
//top命令说明
第一行说明:
top – :系统当前时间
up:服务器连续运行的时间,笔者见过有服务器连续运行一年以上,linux服务器还是非常稳定的。
user:当前有多少用户登录系统
load average:这个边有3个数值分别表示系统在前1分钟,5分钟,15分钟的工作负载,一般单核负载在3-5之间比较合适,经常在1以下,说明cpu利用率不高,在5以上,cpu会处于较高负载状态,会容易宕机。
第二行就是显示任务的数量情况,其中zombie要注意一下,这个是表示僵尸进程,出现了僵尸进程要注意下僵尸进程是如何产生的。如果不找到产生原因,即使杀死了,可能也会再次出现。 第三行表示cpu的运行情况,按下1可以显示每个核的运行情况。 第四行表示内存memory的使用情况。 第五行表示交换空间swap的使用情况。 下面显示的就是进程的运行状态了。每个表头表示的含义如下: PID:进程编号 USER:进程所属用户 PR
/NI:Priority/Nice value进程执行的优先顺序 VIRT:Virtual Image (kb) 虚拟内存使用总额 RES:Resident size (kb) 常驻内存 SHR:Shared Mem size (kb) 共享内存 S:Process Status 进程状态 %CPU:cpu使用率 %MEM:内存使用率 TIME+:进程开始运行时使用cpu的总时间 COMMAND:进程运行的命令 在top状态下按f可以查看表头字段说明。

 更多命令

1、uname -a 
//查看内核/操作系统/CPU信息的linux系统信息命令
2、head -n 1 /etc/issue 
//查看操作系统版本,是数字1不是字母L
3、hostname 
//查看计算机名的linux系统信息命令
4、lsusb -tv 
//列出所有USB设备的linux系统信息命令
5、lspci -tv 
//列出所有PCI设备
6、lsmod 
//列出加载的内核模块
7、cat /proc/loadavg 
// 查看系统负载磁盘和分区
8、mount | column -t 
// 查看挂接的分区状态
9、swapon -s 
// 查看所有交换分区
10、hdparm -i /dev/hda 
// 查看磁盘参数(仅适用于IDE设备)
11、dmesg | grep IDE 
// 查看启动时IDE设备检测状况网络
12、iptables -L 
// 查看防火墙设置
13、route –n
 // 查看路由表
14、netstat -lntp 
// 查看所有监听端口
15、netstat -antp 
// 查看所有已经建立的连接
16、netstat -s 
// 查看网络统计信息进程
17、ps -ef 
// 查看所有进程
18、chkconfig –list
 // 列出所有系统服务
19、chkconfig –list | grep on 
// 列出所有启动的系统服务程序
20、cat /proc/partitions 
//查看linux硬盘和分区信息的系统信息命令
21、cat /proc/meminfo 
//查看linux系统内存信息的linux系统命令
22、cat /proc/ioports 
//查看设备io端口
23、cat /proc/interrupts 
//查看中断
24、cat /proc/pci 
//查看pci设备的信息

 

以上是关于玩转Linux服务器常用命令的主要内容,如果未能解决你的问题,请参考以下文章

玩转Linux系统之常用命令

ubuntu18.04稳定版-常用10条命令足够你玩转linux世界

玩转Linux命令free来了

玩转Linux系统-不一样的压缩命令

Linux使用详解,10分钟带你玩转Linux基础操作

玩转Windows/Linux tftp命令