linux怎么查看服务器的配置,查看linux服务器有哪些用户
- 综合资讯
- 2024-09-30 07:10:48
- 4

***:在Linux中查看服务器配置可使用多种命令,如“lscpu”查看CPU信息,“free -h”查看内存情况,“df -h”查看磁盘空间等。而查看Linux服务器...
***:本文主要涉及两个关于Linux服务器的操作问题,一是查看服务器配置,二是查看服务器有哪些用户。对于查看服务器配置,可以通过多种命令实现,如lscpu查看CPU信息、free -m查看内存使用情况等。而要查看有哪些用户,可使用命令cat /etc/passwd,该文件存储着用户相关信息,通过对这些操作的掌握,能更好地管理和了解Linux服务器的基本情况。
本文目录导读:
《Linux服务器用户查看与服务器配置查看全攻略》
查看Linux服务器有哪些用户
(一)查看/etc/passwd文件
1、原理
- 在Linux系统中,/etc/passwd文件存储了系统用户的基本信息,每一行代表一个用户,各字段之间用冒号(:)分隔。
- 一个典型的行可能像这样:“root:x:0:0:root:/root:/bin/bash”,root”是用户名,“x”表示密码是加密存储在/etc/shadow文件中的,“0:0”分别是用户ID(UID)和组ID(GID),“root”是用户的注释(通常是用户名的描述),“/root”是用户的主目录,“/bin/bash”是用户的默认shell。
2、查看命令
- 可以使用“cat /etc/passwd”命令来查看文件内容,不过,对于大型系统,文件内容可能较多,可以使用“less /etc/passwd”命令,这样可以逐页查看内容,在命令行输入“less /etc/passwd”后,可以使用方向键上下滚动查看,按“q”键退出查看。
(二)使用getent命令
1、原理
- getent命令用于从各种系统数据库中获取条目,当查询用户时,它会从/etc/passwd文件(以及其他可能的用户数据库,如NIS、LDAP等,如果系统配置了的话)中获取用户信息。
2、查看命令
- “getent passwd”命令会列出系统中的所有用户,它的优点是,如果系统配置了其他用户数据库,它能够整合这些数据库中的用户信息并显示出来,而“cat /etc/passwd”只能显示本地/etc/passwd文件中的用户。
(三)查看登录用户
1、原理
- 有时候我们只关心当前登录到系统的用户,Linux系统会记录当前登录用户的相关信息。
2、查看命令
- “who”命令可以显示当前登录到系统的用户信息,包括用户名、登录终端、登录时间等。“who -u”命令还可以显示每个用户的空闲时间等更详细的信息。“w”命令也可以显示当前登录用户及其正在执行的任务等信息,它比“who”命令提供的信息更丰富。
查看Linux服务器的配置
(一)查看CPU信息
1、使用lscpu命令
原理:lscpu命令从sysfs和/proc/cpuinfo中收集CPU体系结构信息,它能够提供关于CPU的核心数、线程数、型号、缓存大小等详细信息。
命令示例:在命令行输入“lscpu”,会得到类似如下的输出:
- Architecture: x86_64,表示CPU的架构是64位的x86架构。
- CPU op - mode(s): 32 - bit, 64 - bit,说明CPU支持32位和64位的操作模式。
- CPU(s): 4,表示系统中有4个CPU核心。
- Thread(s) per core: 2,每个核心有2个线程,这可能是超线程技术的体现。
- Core(s) per socket: 2,每个CPU插槽有2个核心。
- Socket(s): 1,说明系统中有1个CPU插槽。
分析意义:通过这些信息,可以了解服务器的CPU处理能力,核心数和线程数较多的服务器在多任务处理方面会更有优势,可以同时处理更多的并发请求,对于需要大量计算资源的应用,如数据分析、科学计算等,了解CPU的缓存大小也很重要,因为较大的缓存可以提高数据访问速度。
2、查看/proc/cpuinfo文件
原理:/proc是一个虚拟文件系统,它提供了关于系统硬件和进程的信息。/proc/cpuinfo文件包含了每个CPU核心的详细信息。
命令示例:可以使用“cat /proc/cpuinfo”命令查看,文件内容会显示每个CPU核心的信息,如处理器型号(model name)、缓存大小(cache size)等。
- model name : Intel(R) Core(TM) i7 - 8700K CPU @ 3.70GHz,这是CPU的型号和基本频率。
- cache size : 12288 KB,这是CPU的缓存大小。
分析意义:通过查看/proc/cpuinfo文件,可以深入了解每个CPU核心的具体参数,这对于优化服务器性能、确定是否需要升级CPU等决策非常有帮助,如果发现某些核心的参数与预期不符,可能表示存在硬件故障或者BIOS设置问题。
(二)查看内存信息
1、使用free命令
原理:free命令用于显示系统内存的使用情况,包括总内存、已使用内存、空闲内存、共享内存、缓冲内存和缓存内存等。
命令示例:输入“free -h”命令(“-h”选项用于以人类可读的格式显示,如KB、MB、GB等),会得到类似如下的输出:
- total used free shared buff/cache available
- Mem: 8G 3.5G 1.2G 96M 3.3G 4.2G
- Swap: 2G 0B 2G
分析意义:从这个输出中,可以了解到服务器的总内存是8GB,已经使用了3.5GB,空闲内存为1.2GB,共享内存为96MB,缓冲和缓存内存总共为3.3GB,可用内存为4.2GB,通过分析这些数据,可以判断服务器是否存在内存不足的情况,如果已使用内存接近总内存,可能需要考虑增加内存或者优化内存使用的应用程序,交换空间(Swap)的使用情况也很重要,如果交换空间有大量的写入操作,说明系统可能在内存不足时频繁使用交换空间,这会影响系统性能,因为交换空间的读写速度比内存慢很多。
2、查看/proc/meminfo文件
原理:/proc/meminfo文件包含了系统内存的详细信息,比free命令提供的信息更全面。
命令示例:“cat /proc/meminfo”命令会显示大量的内存相关信息,
- MemTotal: 8388608 kB,表示系统的总内存是8388608KB(8GB)。
- MemFree: 1258896 kB,表示空闲内存是1258896KB(1.2GB)。
- Buffers: 307200 kB,表示缓冲内存是307200KB。
- Cached: 3098880 kB,表示缓存内存是3098880KB。
分析意义:通过查看/proc/meminfo文件,可以深入了解内存的各个组成部分,对于内存优化,可以查看缓存和缓冲内存的大小,以及它们与应用程序性能的关系,如果某个应用程序频繁地读写磁盘,可以考虑调整系统的缓存策略,以提高磁盘I/O的效率。
(三)查看磁盘信息
1、使用df命令
原理:df命令用于显示文件系统的磁盘空间使用情况,它会显示每个挂载点的总磁盘空间、已使用空间、可用空间和使用百分比等信息。
命令示例:输入“df -h”命令(“-h”选项用于以人类可读的格式显示),会得到类似如下的输出:
- Filesystem Size Used Avail Use% Mounted on
- /dev/sda1 50G 30G 18G 62% /
- /dev/sda2 100G 20G 75G 21% /home
分析意义:从这个输出中,可以看到根目录(/)所在的/dev/sda1分区总大小为50GB,已使用30GB,可用18GB,使用百分比为62%;/home目录所在的/dev/sda2分区总大小为100GB,已使用20GB,可用75GB,使用百分比为21%,通过这些信息,可以判断磁盘空间是否充足,如果某个分区的可用空间接近耗尽,可能需要清理磁盘或者扩展分区,对于服务器应用,如数据库服务器,需要定期监控磁盘空间,因为数据库文件可能会不断增长,如果磁盘空间不足,可能会导致数据库无法正常运行。
2、使用fdisk -l命令(需要root权限)
原理:fdisk -l命令用于列出系统中的磁盘分区表信息,它可以显示磁盘的大小、分区类型、起始和结束扇区等详细信息。
命令示例:以root用户身份输入“fdisk -l”命令,会得到类似如下的输出:
- Disk /dev/sda: 150.3 GB, 150323857408 bytes
- 255 heads, 63 sectors/track, 18268 cylinders, total 293601284 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 identifier: 0x00000000
- Device Boot Start End Blocks Id System
- /dev/sda1 * 2048 104859647 52428800 83 Linux
- /dev/sda2 104859648 309659647 102400000 83 Linux
分析意义:通过fdisk -l命令的输出,可以详细了解磁盘的物理结构和分区情况,可以知道磁盘的总大小为150.3GB,以及每个分区的起始和结束扇区、分区大小等信息,这对于磁盘管理非常重要,如重新分区、磁盘克隆等操作,如果要扩展某个分区,需要先了解磁盘的分区布局,以确保操作的安全性和正确性。
(四)查看网络信息
1、使用ifconfig命令(或ip addr命令)
原理:ifconfig命令用于配置和显示网络接口的信息,它可以显示网络接口的IP地址、子网掩码、广播地址、MAC地址等信息,不过,在一些较新的Linux发行版中,推荐使用ip addr命令,它提供了更强大和灵活的网络配置功能。
命令示例:
- 使用ifconfig命令:输入“ifconfig”,可能会得到如下输出(以eth0为例):
- eth0 Link encap:Ethernet HWaddr 00:11:22:33:44:55
- inet addr:192.168.1.100 Bcast:192.168.1.255 Mask:255.255.255.0
- inet6 addr: fe80::211:22ff:fe33:4455/64 Scope:Link
- UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
- RX packets:10000 RX bytes:1000000 (976.5 KiB)
- TX packets:5000 TX bytes:500000 (488.3 KiB)
- 使用ip addr命令:输入“ip addr”,会得到类似如下的输出:
- 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
- link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
- inet 127.0.0.1/8 scope host lo
- valid_lifetime forever preferred_lifetime forever
- inet6 ::1/128 scope host
- valid_lifetime forever preferred_lifetime forever
- 2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
- link/ether 00:11:22:33:44:55 brd ff:ff:ff:ff:ff:ff
- inet 192.168.1.100/24 scope global eth0
- valid_lifetime forever preferred_lifetime forever
- inet6 fe80::211:22ff:fe33:4455/64 scope link
- valid_lifetime forever preferred_lifetime forever
分析意义:通过这些命令的输出,可以获取网络接口的重要信息,IP地址用于在网络中标识服务器,子网掩码用于确定网络范围,MAC地址是网络接口的物理地址,通过查看接收(RX)和发送(TX)的数据包数量和字节数,可以了解网络流量情况,这对于网络性能优化、网络故障排查非常重要,如果发现某个网络接口的发送数据包数量远远大于接收数据包数量,可能表示服务器正在进行大量的数据上传操作,需要检查相关的应用程序或者网络配置是否正常。
2、查看网络连接状态(使用netstat或ss命令)
原理:
- netstat命令用于显示网络连接、路由表、接口统计等网络相关信息,它可以显示各种协议(如TCP、UDP等)的连接状态,包括本地地址、外部地址、连接状态(如ESTABLISHED、LISTEN等)等信息。
- ss命令是一个较新的命令,它的功能与netstat类似,但在性能上可能更好,尤其是在处理大量连接时。
命令示例:
- 使用netstat命令:输入“netstat -tunlp”命令(“-t”表示显示TCP连接,“-u”表示显示UDP连接,“-n”表示以数字形式显示地址和端口,“-l”表示显示监听端口,“-p”表示显示与连接相关的进程),会得到类似如下的输出:
- Active Internet connections (only servers)
- Proto Recv - Q Send - Q Local Address Foreign Address State PID/Program name
- tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 1234/sshd
- tcp6 0 0 :::22 :::* LISTEN 1234/sshd
- udp 0 0 0.0.0.0:68 0.0.0.0:* 5678/dhclient
- 使用ss命令:输入“ss -tunlp”命令,会得到类似如下的输出:
- State Recv - Q Send - Q Local Address:Port Peer Address:Port
- LISTEN 0 0 0.0.0.0:22 0.0.0.0:* users:(("sshd",pid = 1234,fd = 3))
- LISTEN 0 0 [::]:22 [::]:* users:(("sshd",pid = 1234,fd = 4))
- UNCONN 0 0 0.0.0.0:68 0.0.0.0:* users:(("dhclient",pid = 5678,fd = 6))
分析意义:通过查看网络连接状态,可以了解服务器上正在运行的网络服务及其监听端口,看到“0.0.0.0:22”监听端口,并且对应的进程是“sshd”,就知道SSH服务正在运行,并且在监听所有网络接口的22端口,这对于网络安全管理非常重要,可以及时发现异常的网络连接或者未经授权的服务监听端口,如果发现有未知的服务在监听端口,可能表示服务器存在安全风险,需要进一步调查。
在Linux服务器管理中,准确查看服务器的用户情况和配置信息是非常重要的,通过这些查看方法,可以深入了解服务器的运行状态,为系统优化、安全管理和故障排查等工作提供有力的依据。
本文链接:https://www.zhitaoyun.cn/79976.html
发表评论