速通linux系统基本命令的使用指南

查看open-Euler版本相关信息

cat /etc/os-release

更换yum(dnf)源

由于目前大部分国内镜像站还没有同步完open Euler相关仓库目录,但open Euler软件包管理方式依然RPM(红帽包管理方式)因此能够与红帽系列的操作系统基本能够通用软件包,所以可以用内核相近的红帽系列系统的源;如Centos的yum源。需要注意的是采用Centos的yum源后不能直接更新yum列表否则会报错,因此下载完成后用vim工具对repo文件中URL对应的$releasever变量直接改成内核相近的centos版本的版本号码,如改成了9否则通过环境变量直接提取为open Euler的版本,而centos仓库没有对应版本的目录。导致yum源更新失败。centos8系列因生命周期结束不在维护原因导致更新yum列表失败

yum (dnf)命令相关操作

yum clean all #清空yum缓存
yum makecache #更新yum源
yum repolist #列出yum源列表
yum update #根据yum列表更新系统软件包括内核

添加扩展epel源

vi /etc/yum.repos.d/epel.repo
[epel]
name=epel
baseurl=https://repo.huaweicloud.com/epel/9/Everything/x86_64/
enabled=1
gpgcheck=0
# 添加完以上对应epel源参数后按照下方指令更新源
yum clean all           # 清空源缓存
yum makecache           # 构建源列表
yum repolist enabled   # 查看源列表
图片[1]-速通linux系统基本命令的使用指南-青原智库

删除旧内核

yum update后多出的启动项,open Euler或CentOS系统更新后,并不会自动删除旧内核。所以在启动选项中会有多个内核选项,需要手动删除多余的内核。

查看当前使用的内核版本

uname -a    # 输出当前使用的内核版本
Linux localhost.localdomain 5.10.0-184.0.0.97.oe2203sp3.x86_64 #1 SMP Wed Jan 17 12:19:24 CST 2024 x86_64 x86_64 x86_64 GNU/Linux  

查看系统中内核RPM包

rpm -qa | grep kernel  # 输出系统中已有的内核rpm包  如下;
# kernel-5.10.0-182.0.0.95.oe2203sp3.x86_64
# kernel-tools-5.10.0-184.0.0.97.oe2203sp3.x86_64
# kernel-5.10.0-184.0.0.97.oe2203sp3.x86_64

删除旧版本内核

yum remove -y kernel-5.10.0-182.0.0.95.oe2203sp3.x86_64 # 以我当前运行系统为例删除旧版本内核

重启

reboot

tar命令简单使用

例如/home下的test文件夹打包并压缩为test.tar.gz

tar -cvzf test.tar.gz  /home/test /home           #  test.tar.gz 打包压缩后的文件名称 /home/test 需要打包的文件或目录  /home 打包压缩后存放目录 

例如/home下的 test.tar.gz 压缩包解压到/home下

tar -xvzf test.tar.gz /home                      #  test.tar.gz 解压的文件名称   /home 解压缩后存放目录

防火墙相关操作

systemctl status firewalld #查看当前防火墙运行情况
systemctl stop firewalld #停止防火墙的运行,只对当前生效
systemctl disable firewalld #彻底关闭防火墙 开机禁止启动

open-Euler配置桥接网口

在open-Euler上配置网络桥接,你需要编辑网络接口配置文件,并重启网络服务或网络接口。以下是配置桥接的步骤和示例:

找到你想桥接的网络接口名称,例如 ens33

首先创建或编辑 /etc/sysconfig/network-scripts/ifcfg-bridge0 文件,配置桥接接口配置文件。

修改相应的网络设备文件,将其从原来的网络设备文件中移除,并指定它属于新的桥接接口。

重启网络服务或者单独的网络接口。

示例配置:

  1. 创建或编辑桥接接口配置文件 /etc/sysconfig/network-scripts/ifcfg-bridge0:
DEVICE=bridge0
TYPE=Bridge
BOOTPROTO=none
ONBOOT=yes
IPADDR=192.168.1.100
NETMASK=255.255.255.0
GATEWAY=192.168.1.1
DNS1=8.8.8.8
DNS2=8.8.4.4
  1. 编辑原始网络接口配置文件 /etc/sysconfig/network-scripts/ifcfg-ens33:
DEVICE=ens33
TYPE=Ethernet
BRIDGE=bridge0
ONBOOT=yes
  1. 重启网络服务:
sudo systemctl restart network

或者仅重启特定接口:

sudo ifdown eth0 && sudo ifup ens33

确保在编辑配置文件时,你的设备名称和IP地址等信息与你的网络环境相匹配。

安装net-tools网络工具

Net-Tools是一个Linux系统中基本的网络工具集,其集成了常用的网络管理命令“ifconfig、netstat、arp、route等”。

安装Net-Tools

yum -y install net-tools  #  安装net-tools
ifconfig                 # 查看接口相关信息
route -n                 # route -n
arp -an                   # ARP协议可以根据IP地址获取其网卡的MAC地址,通过此方法查看IP对应MAC
netstat -lnupt           # 查看服务暴露的地址和端口

tcpdump抓包命令

使用tcpdump抓包的命令可以包括以下几种:

  1. 监听特定网卡:使用-i选项指定要监听的网络接口,例如tcpdump -i lo表示监听回环接口。
  2. 设置抓包数量:使用-c选项设置抓取的数据包数量,例如tcpdump -c 100表示抓取100个数据包后停止。
  3. 截取报文内容:使用-s选项截取报文内容,可以使用-s0表示截取全部报文内容,例如tcpdump -s0
  4. 保存数据包:使用-w选项将抓取的数据包保存到文件,例如tcpdump -w output.pcap
  5. 过滤数据包:使用-w选项将抓取的数据包保存到文件,例如tcpdump -w output.pcap
  6. 过滤特定协议:使用-p选项过滤特定协议的数据包,例如tcpdump -p icmp表示只抓取ICMP数据包。
  7. 过滤特定端口:使用-p选项过滤特定端口的数据包,例如tcpdump -p tcp port 80表示只抓取TCP协议下端口为80的数据包。
  8. 过滤特定IP:使用-p选项过滤特定IP的数据包,例如tcpdump -p tcp host 192.168.123.43表示只抓取IP地址为192.168.123.43的数据包。

例如,要抓取主机172.0.0.1的eth0网口的8080、8081端口传输的数据包并保存文件,可以使用命令

tcpdump -i eth0 -s0port 8080 or port 8081 host 172.0.0.1 -w 1.pcap

系统负载相关

uptime命令

Linux系统中的uptime命令主要用于获取主机运行时间和查询Linux系统负载等信息。

uptime命令可以显示系统已经运行了多长时间,信息显示依次为:现在时间、系统已经运行了多长时间、目前有多少登录用户、系统在过去的1分钟、5分钟和15分钟内的平均负载。 uptime命令用法十分简单,直接输入uptime即可查看系统负载情况。

例如:

[root@localhost ~]# uptime
13:17:19 up 1:16, 1 user, load average: 0.81, 0.37, 0.25

iostat 命令

iostat 主要用于输出磁盘IO 和 CPU的统计信息,iostat属于sysstat软件包。可以直接yum安装。

yum install sysstat
###################################################iostat命令执行后输出如下结果#################################################
[root@localhost ~]# iostat
Linux 5.10.0-182.0.0.95.oe2203sp3.x86_64 (localhost.localdomain)       2024年03月10日 _x86_64_       (8 CPU)

avg-cpu: %user   %nice %system %iowait %steal   %idle
          1.05   0.01   0.87   0.39   0.00   97.69

Device             tps   kB_read/s   kB_wrtn/s   kB_dscd/s   kB_read   kB_wrtn   kB_dscd
dm-0             9.24       150.04       31.63         0.00     647217     136428         0
dm-1             0.02         0.51         0.00         0.00       2216         0         0
dm-2             0.27         1.16         1.08         0.00       5025       4664         0
sda               7.62       164.08       32.72         0.00     707815     141128         0
sr0               0.01         0.24         0.00         0.00       1041         0         0

cpu属性值说明:

%user:CPU处在用户模式下的时间百分比。

%nice:CPU处在带NICE值的用户模式下的时间百分比。

%system:CPU处在系统模式下的时间百分比。

%iowait:CPU等待输入输出完成时间的百分比。

%steal:管理程序维护另一个虚拟处理器时,虚拟CPU的无意识等待时间百分比。

%idle:CPU空闲时间百分比。

disk属性值说明:

device:磁盘名称

tps:每秒钟发送到的I/O请求数.

Blk_read/s:每秒读取的block数.

Blk_wrtn/s:每秒写入的block数.

Blk_read:读入的block总数.

Blk_wrtn:写入的block总数.

  • iostat 1 5 间隔1秒,总共显示5次
  • iostat -d 2 每隔2秒,显示一次设备统计信息.
  • iostat -d 2 3 每隔2秒,显示一次设备统计信息.总共输出3次.
  • iostat -x sda sdb 2 3 每隔2秒显示一次sda, sdb两个设备的扩展统计信息,共输出3次.
  • iostat -p sda 2 3 每隔2秒显示一次sda及上面所有分区的统计信息,共输出3次.
  • iostat -m 以M为单位显示所有信息
  • 备注:如果 %util 接近 100%,说明产生的I/O请求太多,I/O系统已经满负荷,该磁盘可能存在瓶颈。如果 svctm 比较接近 await,说明 I/O 几乎没有等待时间;如果 await 远大于 svctm,说明I/O 队列太长,io响应太慢,则需要进行必要优化。如果avgqu-sz比较大,也表示有当量io在等待。

定位大文件

当您发现CentOS 7系统的磁盘占用率很高时,可以通过以下步骤来定位是哪个文件占用了大量空间:

  1. 查看磁盘使用情况概述: 使用df -h命令来查看所有磁盘分区的使用情况,这将显示每个分区的挂载点、使用量、可用空间等。df -h
  2. 检查inode使用情况: inode是文件系统中的一个数据结构,用于存储关于文件或目录的元数据。如果inode节点用完,即使磁盘空间还有剩余,也无法创建新文件。使用df -i命令来查看inode的使用情况。df -i
  3. 查找大文件: 使用du命令来查找占用磁盘空间较大的文件或目录。可以通过--max-depth选项来限制搜索的目录深度,例如du -h --max-depth=1 /将显示根目录下各个一级目录的大小。du -h –max-depth=1 /如果您知道文件类型或特定目录,可以针对性地搜索。例如,要查找系统中大于10MB的文件,可以使用:find / -type f -size +10M为了更精确地定位问题文件,可以逐步深入检查各个目录。
  4. 分析进程和端口占用: 如果磁盘占用是由于特定服务或进程导致的,可以使用lsof命令来查看占用磁盘空间的进程。例如,查看占用80端口的进程:lsof -i :80此外,如果系统资源管理器(如top, htop)显示某个进程占用了大量磁盘I/O,可以进一步使用lsof来查看该进程详细信息。
  5. 查看日志和缓存文件: 某些系统文件或应用程序的日志、缓存等可能会占用大量空间。检查这些文件,如/var/log目录下的日志文件,或应用程序的缓存目录(如/var/cache)。
  6. 使用第三方工具: 如果上述命令不足以定位问题,您可以考虑使用第三方工具,如baobab(一个图形化的磁盘空间使用分析工具)或disk usage analyzer等。

在执行上述操作时,请确保您有足够的权限来查看和删除文件,必要时需要使用sudo来获取超级用户权限。同时,在删除或移动文件之前,请确保备份重要数据,以防不测。

© 版权声明
THE END
喜欢就支持一下吧
点赞5 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容