Linux面试题

server/2025/3/28 15:59:59/

🧑 博主简介:CSDN博客专家历代文学网(PC端可以访问:https://literature.sinhy.com/#/?__c=1000,移动端可微信小程序搜索“历代文学”)总架构师,15年工作经验,精通Java编程高并发设计Springboot和微服务,熟悉LinuxESXI虚拟化以及云原生Docker和K8s,热衷于探索科技的边界,并将理论知识转化为实际应用。保持对新技术的好奇心,乐于分享所学,希望通过我的实践经历和见解,启发他人的创新思维。在这里,我希望能与志同道合的朋友交流探讨,共同进步,一起在技术的世界里不断学习成长。
技术合作请加本人wx(注明来自csdn):foreast_sea

在这里插入图片描述


在这里插入图片描述

Linux面试题

1. Linux 常用命令

我自己常用的 Linux 命令有 top 查看系统资源、ps 查看进程、netstat 查看网络连接、ping 测试网络连通性、find 查找文件、chmod 修改文件权限、kill 终止进程、df 查看磁盘空间、free 查看内存使用、service 启动服务、mkdir 创建目录、rm 删除文件、rmdir 删除目录、cp 复制文件、mv 移动文件、zip 压缩文件、unzip 解压文件等等这些。

文件操作的命令有哪些?

  • ls:列出目录内容。ls -l显示详细信息,ls -a显示隐藏文件。
  • cd:更改当前目录。cd ..回到上级目录,cd ~回到用户的主目录。
  • pwd:显示当前工作目录的完整路径。
  • cp:复制文件或目录。cp source_file target_file复制文件,cp -r source_directory target_directory复制目录。
  • mv:移动或重命名文件或目录。
  • rm:删除文件或目录。rm -r递归删除目录及其内容。
  • mkdir:创建新目录。
  • cat:查看文件内容。cat file1 file2合并文件内容显示。
如何查看系统的日志文件?

在 Linux 中,可以通过 cat、more、less、tail、head 等命令查看系统日志文件。

也可以直接通过 vim 打开日志文件,然后按照关键字去搜查对应的日志信息。

常见的系统日志文件包括:

  • /var/log/syslog:包含系统范围内的消息和错误日志,包括启动日志、内核日志等,是排查系统问题的首选日志文件之一。
  • /var/log/messages:类似于 syslog,但通常更多关注系统级别的消息和错误。

系统管理的命令有哪些?

  • ps:显示当前运行的进程。ps aux显示所有进程。
  • top:实时显示进程动态。
  • kill:终止进程。kill -9 PID强制终止。
  • df:显示磁盘空间使用情况。df -h以易读格式显示。
  • du:显示目录或文件的磁盘使用情况。
  • free:显示内存和交换空间的使用情况。
  • chmod:更改文件或目录的权限。
  • chown:更改文件或目录的所有者和所属组。
如何查看系统负载?

top 命令是实时查看系统性能的常用工具,系统负载信息通常显示在 top 命令输出的顶部。它还显示了系统运行的进程、内存使用情况等。

在这里插入图片描述

Load Average 是什么?

load average 是一个反映系统负载的指标,表示在一段时间内系统正在处理的平均进程数量。通常,它包含三个数值,分别对应过去 1 分钟、5 分钟和 15 分钟的平均负载。

比如说上图中出现的 load average: 1.80, 1.74, 1.83 表示:

  • 1.80:表示过去 1 分钟内,系统平均有 1.80 个进程在等待处理(包括 CPU 正在处理和等待被调度的进程)。
  • 1.74:表示过去 5 分钟内的平均负载。
  • 1.83:表示过去 15 分钟内的平均负载。

load average 的数值可以看作是系统的工作队列长度(等待处理的任务数量)。如果这个数值接近或等于 CPU 核心数,说明系统的负载是合理的。

如果 load average 大于 CPU 核心数,表示系统的进程比 CPU 能处理的多,系统可能处于过载状态。

在单核系统中,load average 数值超过 1 通常意味着系统繁忙(有任务在等待 CPU)。

在多核系统中,假设有 N 个 CPU 核心,load average 接近 N 时表示系统正处于高负载状态,但还在可接受范围内。如果 load average 超过 N,则意味着系统可能过载。

macOS 上可以通过 sysctl -a | grep machdep.cpu.core_count 查看 CPU 核心数,我本机目前是 16 核。

在这里插入图片描述

chmod 的参数讲一下?

chmod 命令在 Linux 中用来改变文件或目录的访问权限。这个命令的使用可以基于符号表示法(也称为文本方法)或者八进制数表示法。

chmod 777 file 赋予文件所有权限,就属于八进制数表示法。7=4+2+1,分别代表读、写、执行权限。

Linux 中的权限可以应用于三种类别的用户:

  • 文件所有者(u)
  • 与文件所有者同组的用户(g)
  • 其他用户(o)

在这里插入图片描述

①、符号模式

符号模式使用字母来表示权限,如下:

  • 读(r)
  • 写(w)
  • 执行(x)
  • 所有(a)

例如:

  • chmod u+w file:给文件所有者添加写权限。
  • chmod g-r file:移除组用户的读权限。
  • chmod o+x file:给其他用户添加执行权限。
  • chmod u=rwx,g=rx,o=r file:设置文件所有者具有读写执行权限,组用户具有读执行权限,其他用户具有读权限。

②、数字模式

数字模式使用三位八进制数来表示权限,每位数字代表不同的用户类别(所有者、组、其他用户),数字是其各自权限值的总和:

  • 读(r)= 4
  • 写(w)= 2
  • 执行(x)= 1

在这里插入图片描述

因此,权限模式可以是从 0(无权限)到 7(读写执行权限)的任何值。

  • chmod 755 file:使得文件所有者有读写执行(7)权限,组用户和其他用户有读和执行(5)权限。
  • chmod 644 file:使得文件所有者有读写(6)权限,而组用户和其他用户只有读(4)权限。

网络管理的命令有哪些?

  • ping:检查与远程服务器的连接。
  • wget:从网络上下载文件。
  • ifconfig:显示网络接口的配置信息。
  • netstat:显示网络连接、路由表和网络接口信息。

压缩和解压的命令有哪些?

  • tar:打包或解包.tar文件。tar cvf archive.tar files打包,tar xvf archive.tar解包。
  • gzip / gunzip:压缩或解压.gz文件。
  • zip / unzip:压缩或解压.zip文件。

查找文件的命令有哪些?

  • find:在目录树中查找文件。find /directory/ -name filename
Liunx 下查找一个文件怎么做?

在 Linux 环境下查找文件,有多种命令和方法可以使用。find 命令是最常用的文件查找工具之一,它可以在指定目录下递归查找符合条件的文件和目录。

例如:在当前目录及其子目录中查找名为 “example.txt” 的文件

find . -name "example.txt"

例如:查找 /home 目录中所有 .txt 结尾的文件:

find /home -name "*.txt"

例如:查找 /var/log 目录中修改时间在 7 天以前的 .log 文件

find /var/log -name "*.log" -mtime +7

2. Linux 系统管理

用户和用户组有什么区别?

在 Linux 中,用户和用户组是系统权限管理的核心概念。

每个用户在 Linux 中都有一个独立的账户,用于标识该用户并控制其对系统资源的访问。用户包括普通用户和超级用户(root)。普通用户的权限有限,只能访问和修改自己拥有的文件和目录,而超级用户拥有系统的最高权限,能够执行任何操作。

每个用户在系统中都有一个唯一的用户 ID(UID),以及一个关联的用户名(login name)。

用户组是用户的集合,用于简化权限管理。每个用户可以属于一个或多个用户组,而每个用户组都有一个唯一的组 ID(GID)。通过将用户分配到不同的组,系统可以更方便地管理对文件和目录的访问权限。

一个文件或目录可以由一个用户和一个用户组拥有,系统根据文件或目录的所有者和所属组来确定其他用户对它的访问权限。

可以使用 groupadd 命令来创建新的用户组。例如:

sudo groupadd developers

可以使用 useradd 命令来创建新的用户。创建用户时可以指定该用户的默认用户组、主目录等。例如,创建一个名为 johndoe 的用户,并将其添加到 developers 组:

sudo useradd -m -g developers johndoe
  • -m:表示创建用户的同时创建用户的主目录(通常在/home/username)。
  • -g:指定用户的初始用户组。

linuxqps_191">如何用linux命令去查找某个qps?

如果服务通过网络提供访问,可以使用 netstat 或 ss 命令统计特定端口的连接数,并结合 watch 命令来监控实时的连接速率。

例如,统计 HTTPS 服务(通常运行在端口 443)每秒的请求数:

watch -n 1 "netstat -an | grep ':443 ' | grep ESTABLISHED | wc -l"

解释一下:

  • netstat -an:显示所有连接和监听端口。
  • grep ':443 ':过滤出端口 443 的连接。
  • grep ESTABLISHED:过滤出已经建立的连接。
  • wc -l:统计连接数。
  • watch -n 1:每秒刷新一次命令的输出。

观察连接数的变化,可以大致估算出每秒的请求数。

在这里插入图片描述

3. Git 常用命令

Git 常用命令有哪些?

  • git clone <repository-url>:克隆远程仓库。
  • git status:查看工作区和暂存区的状态。
  • git add <file>:将文件添加到暂存区。
  • git commit -m "message":提交暂存区的文件到本地仓库。
  • git log:查看提交历史。
  • git merge <branch-name>:合并指定分支到当前分支。
  • git checkout <branch-name>:切换分支。
  • git pull:拉取远程仓库的更新。

http://www.ppmy.cn/server/177119.html

相关文章

libaom 源码分析:scalable_decoder.c 文件

libaom 基本特性 开放和免版税&#xff1a;libaom 提供了一个开放源代码的编码器&#xff0c;任何个人和组织都可以免费使用&#xff0c;无需支付版税&#xff0c;这促进了它在各种应用中的广泛采用。高效的编码&#xff1a;旨在提供高效的视频压缩&#xff0c;以适应不同的网络…

doris:审计日志

Doris 提供了对于数据库操作的审计能力&#xff0c;可以记录用户对数据库的登陆、查询、修改操作。在 Doris 中&#xff0c;可以直接通过内置系统表查询审计日志&#xff0c;也可以直接查看 Doris 的审计日志文件。 开启审计日志​ 通过全局变量 enable_audit_plugin 可以随时…

GCC 预定义宏:解锁编译器的隐藏信息

GCC 预定义宏&#xff1a;解锁编译器的隐藏信息 在 GCC 编译器中&#xff0c;有许多内置的预定义宏&#xff0c;它们可以提供编译环境的信息&#xff0c;如文件名、行号、时间、版本等。这些宏在调试、日志记录、条件编译等场景中非常有用。本文将介绍常见的 GCC 预定义宏&…

SpringSecurity——前后端分离登录认证

SpringSecurity——前后端分离登录认证的整个过程 前端&#xff1a; 使用Axios向后端发送请求 <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><title>登录</title><script src"https://cdn…

基于DeepSeek的智能体搭建

智能体是什么&#xff1f; 智能体是一种生成式人工智能应用程 序&#xff0c;其核心是通过观察环境并利用工 具自主采取行动以实现特定目标。 智能体架构 •大模型&#xff08;Language Model&#xff09;&#xff1a;作为agent流程的集中决策者使用的语言模型&#xff0c;能…

网络华为HCIA+HCIP WLAN

目录 WLAN 敏捷分布式AP架构 有线侧组网概念&#xff1a;CAPWAP协议 CAPWAP隧道 功能 有线侧组网概念&#xff1a;AP-AC组网方式 有线侧组网概念&#xff1a;AC连接方式 无线侧组网概念&#xff1a;无线通信系统 无线侧组网概念&#xff1a;无线电磁波 无线侧组网概…

Breeze 25A FOC 电调:无人机动力系统的智能心脏|精准控制 × 高效输出 × 多重防护

—— 以工业级技术重构无人机飞行性能 —— ▌核心技术突破 ✓ 创新 Vfast 观测器算法&#xff1a;实现 0.5ms 级响应速度&#xff0c;动态补偿误差&#xff1c;0.1% ✓ 矢量控制&#xff08;FOC&#xff09;技术&#xff1a;相比传统方波驱动效率提升 18%&#xff0c;力效比达…

基于SpringBoot+Vue3实现的宠物领养管理平台功能一

一、前言介绍&#xff1a; 1.1 项目摘要 随着社会经济的发展和人们生活水平的提高&#xff0c;越来越多的人开始关注并参与到宠物领养中。宠物已经成为许多家庭的重要成员&#xff0c;人们对于宠物的关爱和照顾也日益增加。然而&#xff0c;传统的宠物领养流程存在诸多不便&a…