1. 目录介绍
操作Linux命令行,最基本的对象就是目录和文件,因为Linux中一切事物都是基于文件的,而目录就是文件的文件夹,所以接下来对一些基础且核心的文件目录管理命令进行说明。
1.1 目录结构
Linux系统目录结构是一个有层次的倒立的树状目录结构,/
根目录是所有目录的顶点,一切目录都是从根目录开始的。
- 不同目录下的数据可以跨越不同的磁盘分区或不同的磁盘设备,设备可以随意挂载到任意目录上使用。
- 所有的目录都是按照一定的类别有规律的进行组织和命名的。
- 没有被挂载到目录上的磁盘,不能被使用。磁盘等设备需要进行挂载后才能进行正常使用。
- 挂载点是磁盘访问的入口,是一个目录。
1.2 绝对路径和相对路径
在Linux系统中,路径是用来定位文件或目录位置的字符串,分为绝对路径和相对路径两种类型:
- 绝对路径是从根目录(/)开始的完整路径,指向文件系统中的唯一位置。
- 例如,
/home/user/documents/textfile.txt
是一个绝对路径,它指定了从根目录开始,通过home目录,再到user的documents目录下,找到名为textfile.txt的文件。 - 绝对路径的好处在于,无论当前工作目录在哪里,都能准确无误地定位到目标文件或目录。
- 例如,
- 相对路径是相对于当前工作目录的路径,没有以根目录(/)开头。
- 例如,如果当前目录为
/home/user/documents/
,那么textfile.txt
就是一个相对路径,表示在当前目录下寻找名为textfile.txt的文件。 - 相对路径更为便捷,特别是在编写脚本或执行一系列连续命令时,可以减少路径输入的复杂度,但它的定位依赖于当前的工作目录。
- 例如,如果当前目录为
在使用时,根据具体需求和上下文选择绝对路径或相对路径,可以使文件访问和管理更加高效灵活。
1.3 根下一级目录介绍
目录 | 说明 |
---|---|
/bin | 常用二进制命令所在的目录。比如ls 、cp 等命令;/bin 目录和/usr/bin 类似,在CentOS7中已经成为一个目录,/bin 是/usr/bin 的软连接,指向/usr/bin 。 |
/sbin | root用户的可执行命令存放目录,大多是系统管理命令。普通用户可以通过sudo 执行。指向/usr/sbin 。 |
/boot | Linux的内核及系统引导程序所需的文件目录,存放引导系统启动程序,系统内核镜像等。 安装系统分区时是一个单独的boot分区, /boot 目录就是引导分区的挂载点。 |
/dev | 存放设备文件的目录,比如声卡、光驱、磁盘等。 |
/etc | 系统的配置文件存放目录,如:/etc/hosts、/etc/ssh/sshd_config等。 在CentOS6中,还是服务启动命令的存放目录,主要在 /etc/init.d/ 下。 |
/home | 普通用户的家目录,默认数据存放目录。 |
/root | 超级权限管理员root用户的家目录。 |
/lib和**/lib64** | 是启动系统和运行命令所需的共享库文件和内核模块存放目录,分别指向/usr/lib 和/usr/lib64 。 |
/lost+found | 系统宕机,临时保存数据的目录。在ext3文件系统中,当系统意外崩溃或机器意外关机时,会在这里产生一些文件碎片。系统在开机启动的过程中,fsck工具会检查这里,并修复已经损坏的文件系统。当系统发生问题时,可能会在有文件被移到这个目录中,可能需要通过手工的方式来进行修复,或者移文件到原来的位置上。 |
/media | 可移动介质挂载点,例如,CD-ROM、U盘等的挂载,使用频率较低。 |
/mnt | 临时存储介质挂载点,基本用它来替代/media ,使用频率较高。 |
/opt | 用于存放和管理非系统默认的、可选的第三方软件。类似于三方软件的隔离区,所需的库文件、配置文件等都应该位于自己的目录树中,卸载某个程序时只需删除其所在的目录即可。与他功能类似的/usr/local目录更多用于存放本地编译安装的软件,这些软件可能需要与系统有更紧密的集成或定制。 |
/proc | 虚拟文件系统的挂载点,在系统运行时,存放进程和内核信息。系统运行时,很多信息都在这个目录下,比如CPU、硬盘分区、内存信息等。/proc/loadavg #<==系统负载(系统繁忙程度)/proc/meminfo #<==系统内存信息/proc/cpuinfo #<==系统CPU信息/proc/mounts #<==系统挂载信息 |
/run | 正在运行的进程相关信息的文件 |
/srv | 为用户提供服务的数据(软件服务数据)所在目录。例如:用户主动生产的数据、对外提供服务。 |
/sys | 虚拟的文件系统,存放进程和内核信息的目录。包括内核、总线、设备、模组、电源选项等。 |
/tmp | 临时文件所在目录。 运行程序时的临时文件存放位置。可以被用作Linux系统的回收站使用,权限比较特殊。/var/tmp 目录与之类似。 |
/usr | 系统软件和用户相关程序所在目录,比如命令、帮助文件等。/usr/local :默认软件安装目录;/usr/src :程序源码目录 |
/var | 存放一些经常变化的数据文件,包括缓存(cache)、日志文件(log file)以及某些软件运作所产生的文件。/var/log 存放系统日志的目录/var/log/messages 系统日志路径/var/www 存放定义Apache服务器站点的目录/var/lib 存放一些库文件 |
2. 重要的系统文件介绍
2.1 /etc目录下
1. 网卡配置文件
/etc/sysconfig/network-scripts/ifcfg-eth0
-
ifcfg-eth0
以及ifcfg-eth1
是 CentOS6 的网卡配置文件名,在 CentOS7 中,默认网卡名改成了ens33、ens34等。不过为了统一管理,都会改成这个。 -
CentOS6可以执行
setup
命令进入图形化界面配置网卡;CentOS7则通过执行nmtui
来进行操作。也可以直接编辑配置文件。如果不使用图形化的界面,也可以直接修改配置文件。 -
配置完成后,重启网络服务
systemctl restart network
让配置文件生效。 -
如果指定单独的网卡配置生效,则可以通过命令
ifdown eth0
+ifup eth0
来实现。(重启单个网卡)
[root@local ~]# cat /etc/sysconfig/network-scripts/ifcfg-eth0
TYPE=Ethernet #《== 上网类型,目前大多为以太网
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=none #《== 启动协议,获取配置方式,有static|none(静态)|bootp(引导)|dhcp(动态)
DEFROUTE=yes #《== 使用默认路由
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=eth0 #《== 网卡逻辑设备名
UUID=051d946e-d759-4ff3-b62f-4c74b0325f62 #《== 通用唯一识别码,使用VM克隆出来的虚拟机无法启动网卡的话,可以去掉此项。
DEVICE=eth0 #《== 网卡物理设备名
ONBOOT=yes #《== 此处值必须要为yes,才能保证下次开机启动激活网卡设备(开机自启动)
IPADDR=10.0.0.200 #《== IP地址
PREFIX=24 #《== 子网掩码
GATEWAY=10.0.0.254 #《== 网关
DNS1=223.5.5.5 #《== 主DNS
IPV6_PRIVACY=no
2. DNS客户端配置文件
/etc/resolv.conf
- DNS(Domain Name System 域名系统)主要作用是把浏览器里输入的域名解析成服务器的IP地址,然后才能找到服务器,提供内容。
- 配置这个配置文件同样可以使用
nmtui
命令进行图形化修改,或直接修改配置文件/etc/resolv.conf
。
[root@localhost ~]# cat /etc/resolv.conf
# Generated by NetworkManager
nameserver 223.5.5.5
注意:
在网卡配置文件里配置的DNS可能会覆盖/etc/resolv.conf里的DNS,所以一般只在网卡配置文件里配置DNS。除此之外,还有其他别的功能。
DNS的/etc/resolv.conf配置文件基本已经废弃了,由
/etc/sysconfig/network-scripts/ifcfg-eth0
里的DNS设置替代了。
3. 主机名配置文件
/etc/hostname
- 在CentOS 7 中的系统主机名的永久配置文件为:
/etc/hostname
- 在CentOS 6 中的系统主机名的永久配置文件为:
/etc/sysconfig/network
#临时修改法:
[root@localhost ~]# hostname www
# 永久修改法:
[root@localhost ~]# hostnamectl set-hostname www
4. 系统本地DNS解析文件
/etc/hosts
/etc/hosts
的作用是设定用户IP地址与域名的对应解析表,相当于本地的DNS解析文件。- 本地DNS配置文件hosts,优先于公网的DNS解析,如果该文件内不存在就进入公网DNS服务器进行解析。此文件经常用于开发人员的测试解析。
[root@localhost ~]# cat /etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
10.0.0.200 www.baidu.com
- 如上,在该文件中配置上百度的域名和一个IP地址。等到你输入域名之后,就会将域名解析成这个IP地址,无法正常指向百度的网站。不会再向公网DNS服务器请求解析。
注意:windows系统的hosts文件的作用相同,地址是:
C:\Windows\System32\drivers\etc\hosts
文件。
5.配置开机设备自动挂载的文件
/etc/fstab
/etc/fstab
是一个用于配置开机设备自动挂载的配置文件。- 在系统启动时,各种设备都还没有挂载,无法使用。所以会在开机时先加载
/etc/fstab
文件,实现对系统分区的自动挂载,然后进入系统。 - 可以在文件里添加挂载项,使其开机自动挂载。
[root@local ~]# cat /etc/fstab
#
# /etc/fstab
# Created by anaconda on Thu Sep 30 09:57:47 2021
#
# Accessible filesystems, by reference, are maintained under '/dev/disk'
# See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info
#
UUID=1a464cd8-0b0e-40c5-a007-db2be8799ba6 / xfs defaults 0 0
UUID=116d6ae6-c3e2-470c-a163-f8e1305800d5 /boot xfs defaults 0 0
UUID=9da99cd7-c323-4ebf-a928-0ad4807b6c5b swap swap defaults 0 0
# 设备名(设备ID) 挂载点 文件系统类型 挂载参数 是否备份 是否开机检查
-----------------------------------------------------------------------------------------
# 或者是这样的由路径代替的(UUID和路径都可以)
/dev/mapper/centos-root / xfs defaults 0 0
UUID=cc24e729-b530-4ab0-aeaf-8eea7357a9a9 /boot xfs defaults 0 0
/dev/mapper/centos-swap swap swap defaults 0 0
字段中的6列内容具体说明:
- 第一列:设备名称或者UUID或者磁盘标签,可以通过
blkid
命令查看设备UUID;- 第二列:设备的挂载点,即访问设备的入口;
- 第三列:设备的文件系统类型;
- 第四列:挂载的参数;
- 第五列:是否进行备份;
- 第六列:开机是否进行磁盘检查。0是不做检查,1或2是做检查;
查看设备UUID使用命令blkid。获取对应的UUID和路径,用于编写到文件中加载。
[root@localhost dev]# blkid /dev/sda1: UUID="cc24e729-b530-4ab0-aeaf-8eea7357a9a9" TYPE="xfs" /dev/sda2: UUID="8ndvQe-fv8k-Tqvk-N1gp-W04R-DlgR-bloUig" TYPE="LVM2_member" /dev/sr0: UUID="2020-04-22-00-54-00-00" LABEL="CentOS 7 x86_64" TYPE="iso9660" PTTYPE="dos" /dev/mapper/centos-root: UUID="c3ae3604-4101-4d9c-85bd-ad2e82318c0f" TYPE="xfs" /dev/mapper/centos-swap: UUID="cba9bb3a-7250-4dc9-8e78-c0863ee4e9b5" TYPE="swap"
6. 存放开机自启动程序命令的文件
/etc/rc.local
- 该文件实际上是一个链接文件,真正指向的是
/etc/rc.d/rc.local
文件。 - 所以在对于该文件进行备份的时候要格外注意。
- CentOS7在使用之前需要运行命令:
chmod +x /etc/rc.d/rc.local
,使此文件可以运行。
[root@local ~]# ls -l /etc/rc.local
lrwxrwxrwx. 1 root root 13 Sep 30 14:20 /etc/rc.local -> rc.d/rc.local
[root@local ~]# cat /etc/rc.local
#!/bin/bash
# THIS FILE IS ADDED FOR COMPATIBILITY PURPOSES
#
# It is highly advisable to create own systemd services or udev rules
# to run scripts during boot instead of using this file.
#
# In contrast to previous versions due to parallel execution during boot
# this script will NOT be run after all other services.
#
# Please note that you must run 'chmod +x /etc/rc.d/rc.local' to ensure
# that this script will be executed during boot.
touch /var/lock/subsys/local # 开机运行命令
如果需要设置一个软件作为开机自启动软件,就可以将其开机命令添加到该文件。
CentOS7关闭了文件的运行权限,所以根据提示,在使用之前需要运行命令:
chmod +x /etc/rc.d/rc.local
,使此文件可以运行。
7. 系统启动时,设定运行级别等配置的文件
/etc/inittab
/etc/inittab
是一个指导Linux开机启动的关键文件。- 在CentOS 6以前,用于设定系统启动时init进程将系统设置成什么样的运行级别(runlevel),以及加载运行级别对应的启动文件。
- 在CentOS 6里,其仅负责设定系统启动时init进程将系统设置成什么样的运行级别。
- 在CentOS7已经将该文件废弃。
CentOS6里系统运行级别的说明如下:
# 0 关机(请不要把系统运行级别设置为0)
# 1 单用户模式 (root用户密码忘记,可用此模式找回)
# 2 没有NFS,多用户模式
# 3 命令行模式 文本模式(企业级服务器核心运行状态)
# 4 未使用
# 5 图形化模式 桌面模式 X11(桌面个人版系统运行状态)
# 6 重启(不要把系统运行级别设置为6)
CentOS7里系统运行级别的说明如下:
# poweroff.target 关机
# rescue.target 救援
# multi-user.target 多用户
# graphical.target 图形化
# reboot.target 重启
两者的对应关系:
# runlevel0.target -> poweroff.target
# runlevel1.target -> rescue.target
# runlevel2.target -> multi-user.target
# runlevel3.target -> multi-user.target
# runlevel4.target -> multi-user.target
# runlevel5.target -> graphical.target
# runlevel6.target -> reboot.target
- 可以使用
runlevel
命令可以查看当前系统的运行级别:
# C6和C7通用的方式
[root@local ~]# runlevel
N 3 #<==N表示上一次运行级别;3表示当前运行级别
[root@local ~]# who -r
run-level 3 2022-08-01 10:51
#<== 当前运行级别是3,后面的时间是当前时间
# C7专有的方式
[root@local ~]# systemctl get-default #<==查看当前默认级别
- 运行级别的切换:
# C6的方式
[root@local ~]# init 5 #<==将运行级别修改为5(临时)
[root@local ~]# runlevel #<==查验
3 5
永久的话,需要在inittab文件中修改最后一行的参数,然后重启生效。
如: id:3:initdefault 改成 id:5:initdefault
# C7的方式
[root@local ~]# systemctl get-default #<==查看当前默认级别
multi-user.target
[root@local ~]# systemctl set-default graphical.target #<== 修改级别
Removed symlink /etc/systemd/system/default.target.
Created symlink from /etc/systemd/system/default.target to /usr/lib/systemd/system/graphical.target.
[root@local ~]# systemctl get-default
graphical.target
8. 配置系统环境变量的文件
/etc/profile
# 存放环境变量的文件
- 在
/etc/profile
文件中可以配置全局环境变量(永久配置生效), ~/.bash_profile
表示只在当前用户中生效。比如前文提到的PS1、配置JDK的时候添加的环境变量等。
## 在配置文件中添加
export PS1="[\[\e[34;1m\]\u@\[\e[0m\]\[\e[32;1m\]\H\[\e[0m\]\[\e[31;1m\] \w\[\e[0m\]]\\$"
- 添加完成后保存退出文件,执行命令
source /etc/profile
,使配置永久生效,或者退出重新登录使其生效。
9. 配置别名的文件
/etc/bashrc
- 在/etc/bashrc文件用于配置别名(命令别名),在
/etc/bashrc
里编辑。“~/.baserc
”表示只在当前用户中生效。
# 例如,在文件中插入如下语句,再次使用rm时,会输出“测试使用案例”
alias rm = 'echo 测试使用案例'
-
添加完成后保存退出文件,执行命令
source /etc/profile
,使配置永久生效。 -
在
/etc/bashrc
文件中设置最容易生效。因为文件更靠后执行,所以会尽量避免被之前的配置覆盖
10. 配置用户登录前显示信息的文件
/etc/issue
和/etc/issue.net
- 这两个文件的作用是将用户登录终端之前的信息显示出来,
- 具体表现就是启动系统之后,在输入用户名和密码之前显示的那一段内容,默认是系统版本和内核相关信息。
- 在企业服务器中,为了防止相关信息泄露,一般会把issue文件的内容清空。
[root@local ~]#cat /etc/issue
\S
Kernel \r on an \m
[root@local ~]#cat /etc/issue.net
\S
Kernel \r on an \m
[root@local ~]#>/etc/issue #清空文件内容方式。
[root@local ~]#>/etc/issue.net
11. 配置用户登录系统之后显示提示内容的文件
/etc/motd
- 该文件默认是空的。文件里配置的内容会在用户输入用户名和密码登录系统之后,进入命令行之前显示。
- 相当于登录后的一个提示作用。
12.查看系统版本
/etc/redhat-release
[root@local ~]# uname -r # 查看内核版本
3.10.0-1160.42.2.el7.x86_64
[root@local ~]# cat /etc/redhat-release # 查看系统版本
CentOS Linux release 7.9.2009 (Core)
# 如果还需要查看更详细的系统信息
[root@local ~]# cat /etc/os-release #该文件用于声明版本号和名称信息。
NAME="CentOS Linux"
VERSION="7 (Core)"
ID="centos"
ID_LIKE="rhel fedora"
VERSION_ID="7"
PRETTY_NAME="CentOS Linux 7 (Core)"
ANSI_COLOR="0;31"
CPE_NAME="cpe:/o:centos:centos:7"
HOME_URL="https://www.centos.org/"
BUG_REPORT_URL="https://bugs.centos.org/"
CENTOS_MANTISBT_PROJECT="CentOS-7"
CENTOS_MANTISBT_PROJECT_VERSION="7"
REDHAT_SUPPORT_PRODUCT="centos"
REDHAT_SUPPORT_PRODUCT_VERSION="7"
13. Linux内核参数设置文件
/etc/sysctl.conf
- Linux系统内核的配置和优化经常会用到这个文件。
[root@local~]# cat /etc/sysctl.conf // CentOS7中查看该文件
# sysctl settings are defined through files in
# /usr/lib/sysctl.d/, /run/sysctl.d/, and /etc/sysctl.d/.
#
# Vendors settings live in /usr/lib/sysctl.d/.
# To override a whole file, create a new file with the same in
# /etc/sysctl.d/ and put new settings there. To override
# only specific settings, add a file with a lexically later
# name in /etc/sysctl.d/ and put new settings there.
#
# For more information, see sysctl.conf(5) and sysctl.d(5).
- 根据提示,CentOS7相较于之前的版本进行了调整。
- 相关配置建议在
/usr/lib/sysctl.d/
,/run/sysctl.d/
, 和/etc/sysctl.d/
这三个文件中进行,当然在这个文件中也可以进行配置。 - 编辑修改文件之后,需要执行:sysctl -p 命令让修改后的文件生效。
2.2 /usr目录重要文件
1. 源码编译安装软件默认的位置路径
/usr/local
- 该目录一般用来存放用户自编译安装软件的目录,对于通过源码包安装的软件,如果没有制定安装目录的话,一般会安装在这个目录,类似于
C:\Program files
。
2. 存放源码文件的目录
/usr/src
- 该目录一般用于存放在网上下载的软件源代码。可选,可以根据自己的需求进行更改。
2.3 /var目录重要文件
/var/log
目录中包含了大量记录系统和软件服务运行的日志文件,通过这些日志文件,我们可以知道系统的运行状况和故障原因。
日志名字 | 文件类型 | 作用 |
---|---|---|
messages | 文本文件 | 系统级日志文件 |
secure | 文本文件 | 安全日志文件 |
dmesg | 文本文件 | 硬件信息加载情况日志文件 |
corn | 文本文件 | 定时任务日志文件 |
wtmp | 二进制文件 | 记录登录者信息的文件,执行last命令自动读取该文件。 |
lastlog | 二进制文件 | 记录用户近期的登录情况,执行lastlog命令自动读取该文件 |
1. 系统级别日志文件(/var/log/messages)
- 系统默认的日志文件,记录Linux系统运行行为情况,当系统或软件运行出现故障时,可以通过查看该日志文件获取故障信息。
- (按周自动轮询,一周分割一次)即每周生成一个日志文件。
[root@localhost ~]# ll /var/log/messages*
-rw-------. 1 root root 109181 Dec 30 13:14 /var/log/messages
-rw-------. 1 root root 161485 Nov 28 10:35 /var/log/messages-20211128
-rw-------. 1 root root 242383 Dec 28 10:01 /var/log/messages-20211228
上述轮询日志由 /etc/logrotate.conf 和 /etc/logrotate.d/syslog 控制。
2. 用户登录信息日志文件(/var/log/secure)
- 该文件实质上是一个有关系统安全的日志文件,会记录下 “ 哪个用户、什么时候、何处登录(IP)、是否登录成功 ” 等信息。
- 对于一些暴力破解用户名和密码的都会有记录。ssh、telnet等服务的用户登录信息都会记录。
[root@localhost ~]# tail -5 /var/log/secure
Aug 4 15:40:38 localhost sshd[2489]: pam_unix(sshd:auth): authentication failure; logname= uid=0 euid=0 tty=ssh ruser= rhost=10.0.0.1 user=root
Aug 4 15:40:38 localhost sshd[2489]: pam_succeed_if(sshd:auth): requirement "uid >= 1000" not met by user "root"
Aug 4 15:40:40 localhost sshd[2489]: Failed password for root from 10.0.0.1 port 53077 ssh2
Aug 4 15:40:46 localhost sshd[2489]: Accepted password for root from 10.0.0.1 port 53077 ssh2
Aug 4 15:40:46 localhost sshd[2489]: pam_unix(sshd:session): session opened for user root by (uid=0)
- 该文件与
messages
文件相同,也是按周自动轮询,一周分割一次。
[root@localhost ~]# ll /var/log/secure*
-rw-------. 1 root root 2017 Aug 4 15:40 /var/log/secure
-rw-------. 1 root root 4961 Jun 4 20:04 /var/log/secure-20220605
-rw-------. 1 root root 2666 Aug 3 10:21 /var/log/secure-20220803
-rw-------. 1 root root 570 May 18 15:43 /var/log/secure-20221001
-rw-------. 1 root root 375 Oct 2 2022 /var/log/secure-20221002
3. 记录硬件信息加载情况的日志文件(/var/log/dmesg)
如果硬件或系统内核出现问题时,可以看看这个日志文件。也可以通过dmesg命令来收集相关信息,来解决问题。
可以使用命令dmesg来查询不同硬件的详细信息。
2.4 /proc目录文件
/proc是Linux系统的一个重要的虚拟文件系统,记录着内核和进程方方面面的信息,许多重要的信息数据可以在该目录下查看。
路径名称 | 路径说明 |
---|---|
/proc/cpuinfo | 当前CPU信息文件 |
/proc/meminfo | 当前内存信息文件 |
/proc/loadavg | 当前系统平均负载均衡信息文件 |
/proc/mounts | 当前设备挂载列表信息文件 |
/proc/interrupts | 当前系统中断信息文件 |
1. 查看内存文件(/proc/meminfo)
- 文件中有内存相关的详细信息。
[root@localhost ~]# cat /proc/meminfo
MemTotal: 2027876 kB # 内存总大小
MemFree: 1726280 kB # 内存空闲的
MemAvailable: 1707444 kB # 内存可用大小
Buffers: 4136 kB # 写缓冲
Cached: 94632 kB # 读缓冲
- 可以通过命令
free -m
查看内存
[root@localhost ~]# free -m
total used free shared buff/cache available
Mem: 972 490 225 7 256 336
Swap: 2047 0 2047
2. 查看CPU文件(/proc/cpuinfo)
- 文件中有CPU相关的详细信息
- 可以通过命令
lscpu
来查看CPU相关信息
[root@localhost ~]# lscpu
Architecture: x86_64
CPU op-mode(s): 32-bit, 64-bit
Byte Order: Little Endian
CPU(s): 2 # CPU的核心数
On-line CPU(s) list: 0,1
Thread(s) per core: 1
Core(s) per socket: 2
Socket(s): 1 # CPU的个数
......
3. 查看负载文件(/proc/loadavg)
- 负载是表示系统繁忙程度的一个综合指标,可以通过命令
uptime
进行查看当前时间的负载信息 - 负载是衡量服务器的繁忙程度和核心数量相关的。比如服务器核心数8核心负载达到8说明非常繁忙了;服务器核心数16核心负载达到16说明非常繁忙了。
- 平均负载值里的1分钟作为参考值,主要看的是5分钟和15分的值
[root@localhost ~]# cat /proc/loadavg
0.13 0.12 0.14 1/391 25863
[root@localhost ~]# uptime
10:06:51 up 1:33, 1 user, load average: 0.08, 0.16, 0.15
当前时间 开机时间 用户数 平均负载 1分钟 5分钟 15分钟
[root@localhost ~]# w
10:06:51 up 1:33, 1 user, load average: 0.08, 0.16, 0.15
USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT
root pts/0 10.10.20.233 08:33 3.00s 0.17s 0.16s -bash
在企业中,负载的情况和服务器类型相关:
- 自己运行服务有用户访问的服务负载不能超过核心数量;
- 服务器内部使用,内部测试,内部运算,大数据运算超过核心数量正常;
4. 查看挂载文件(/proc/mounts)
- 该文件用于查看当前系统的挂载信息,但是内容不是那么易读
- 可以通过命令
df-h
来查看挂载相关信息
[root@localhost ~]$ df -h
Filesystem Size Used Avail Use% Mounted on
devtmpfs 868M 0 868M 0% /dev
tmpfs 879M 0 879M 0% /dev/shm
tmpfs 879M 572K 878M 1% /run
tmpfs 879M 0 879M 0% /sys/fs/cgroup
/dev/vda1 40G 6.0G 32G 16% /
tmpfs 176M 0 176M 0% /run/user/1000