当前位置: 首页 > article >正文

Linux 常见面试题汇总

        在当今数字化时代,Linux 作为一种开源、稳定且高效的操作系统,在服务器领域占据着举足轻重的地位。无论是运维工程师、开发人员还是系统管理员,掌握 Linux 相关知识都成为了必备技能。这篇博客将为大家汇总一些常见的 Linux 面试题,帮助大家更好地应对面试。

一、Linux 基础概念

1. 什么是 Linux?

Linux 是一种类 Unix 的开源操作系统内核,它最初由芬兰人林纳斯・托瓦兹(Linus Torvalds)开发。Linux 操作系统基于 Linux 内核,并结合了各种自由软件和工具,形成了完整的操作系统。其特点包括开源、多用户、多任务、稳定性高、安全性强等。

2. Linux 有哪些常见的发行版?

常见的 Linux 发行版有 Ubuntu、Debian、CentOS、Red Hat Enterprise Linux(RHEL)、Fedora、Arch Linux 等。每个发行版都有其特点和适用场景,例如 Ubuntu 以易用性和丰富的软件源著称,适合新手和桌面用户;CentOS 是基于 RHEL 源代码编译的社区版,稳定性高,常用于服务器环境。

二、Linux 常用命令

1. 如何查看文件内容?

  • cat:用于查看文件的全部内容,如cat file.txt。
  • more:分页查看文件内容,按空格键翻页,按q键退出,如more file.txt。
  • less:与more类似,但功能更强大,支持向前向后翻页,搜索等操作,如less file.txt。
  • head:查看文件的前几行,默认前 10 行,如head -n 20 file.txt查看前 20 行。
  • tail:查看文件的后几行,默认后 10 行,如tail -n 15 file.txt查看后 15 行,还可以使用tail -f实时跟踪文件的新增内容。

2. 如何创建、删除和移动文件 / 目录?

  • 创建文件:使用touch命令,如touch newfile.txt。
  • 创建目录:使用mkdir命令,如mkdir newdir,若要创建多级目录可使用mkdir -p parentdir/childdir。
  • 删除文件:使用rm命令,如rm file.txt,若要删除目录及其所有内容,使用rm -rf dir(-r表示递归删除,-f表示强制删除,不提示确认)。
  • 移动文件 / 目录:使用mv命令,如mv file.txt /newdir/将文件移动到新目录,mv olddir newdir可重命名目录。

三、文件权限与用户管理

1. 简述 Linux 文件权限的含义?

Linux 文件权限分为读(r)、写(w)、执行(x)三种权限,分别对应数字 4、2、1。每个文件和目录都有所有者、所属组和其他用户三种身份的权限设置。例如,权限表示为rwxr-xr-x,则所有者拥有读、写、执行权限,所属组和其他用户只有读和执行权限。可以使用chmod命令来修改文件权限,如chmod 755 file.txt(所有者有读、写、执行权限,所属组和其他用户有读和执行权限) 。

2. 如何添加、删除用户和修改用户密码?

  • 添加用户:使用useradd命令,如useradd newuser,添加用户时可同时指定用户组等参数,如useradd -g users newuser将用户添加到users组。
  • 删除用户:使用userdel命令,如userdel newuser,若要同时删除用户的家目录,使用userdel -r newuser。
  • 修改用户密码:使用passwd命令,如passwd newuser,普通用户使用passwd命令可修改自己的密码,root 用户可修改任意用户密码。

四、进程管理

1. 如何查看当前运行的进程?

可以使用ps命令,如ps aux查看所有用户的所有进程,ps -ef也有类似功能,两者略有差异。top命令可以动态实时查看系统进程状态,类似于 Windows 的任务管理器,按q键退出。

2.Linux上如何查询某个端口是否被占用?
在Linux上,你可以使用以下几种方法来查询某个端口是否被占用:

使用netstat命令:

netstat -tuln | grep <端口号>
这个命令会列出当前正在运行的所有TCP和UDP端口,并过滤出指定端口是否被占用。如果端口被占用,会显示对应的PID和程序名称。

使用ps命令结合grep命令:

ps -aux | grep <端口号>
这个命令会列出所有正在运行的进程,并过滤出包含指定端口号的进程信息。通过查看对应的PID和程序名称,可以判断该端口是否被占用。

3. 如何杀死进程?

使用kill命令,首先通过ps等命令获取进程 ID(PID),然后使用kill PID来终止进程。如果进程比较顽固,可使用kill -9 PID强制杀死进程(-9是信号值,代表强制终止)。

五、网络配置

1. 如何查看网络配置信息?

在 Linux 中,使用ifconfig命令(在较新的系统中逐渐被ip命令替代)查看网络接口配置信息,如 IP 地址、子网掩码等。ip addr show命令可显示更详细的网络地址信息,route命令用于查看路由表。

2. 如何设置静态 IP?

不同的 Linux 发行版设置方式略有不同,以 CentOS 为例,编辑网络配置文件,如/etc/sysconfig/network-scripts/ifcfg-eth0(根据实际网卡名称修改),修改其中的BOOTPROTO为static,并添加IPADDR、NETMASK、GATEWAY等参数来设置静态 IP 地址、子网掩码和网关。修改完成后,重启网络服务使设置生效,如systemctl restart network。

相关文章:

Linux 常见面试题汇总

在当今数字化时代&#xff0c;Linux 作为一种开源、稳定且高效的操作系统&#xff0c;在服务器领域占据着举足轻重的地位。无论是运维工程师、开发人员还是系统管理员&#xff0c;掌握 Linux 相关知识都成为了必备技能。这篇博客将为大家汇总一些常见的 Linux 面试题&#xff0…...

网络运维学习笔记 015网工初级(HCIA-Datacom与CCNA-EI)NAT网络地址转换

文章目录 NAT(Network Address Translation&#xff0c;网络地址转换)思科&#xff1a;1&#xff09;PAT2&#xff09;静态端口转换 华为&#xff1a;1&#xff09;EasyIP2&#xff09;NAT Server静态NAT&#xff1a;动态NAT&#xff1a;实验1&#xff1a;在R1上配置NAPT让内网…...

蓝桥杯刷题25.2.22|打卡

一、幸运数 3491 谨记&#xff1a;使用函数&#xff0c;拆分成多个小问题&#xff0c;不容易出错 #include <iostream> using namespace std; //计算位数 int check(int a){int count0;while(a){aa/10;count;}return count; } bool fun(int sum){int countcheck(sum);int…...

学习笔记-沁恒第五讲-米醋

一&#xff0c;设置音量 上次 这次 #include "uart.h" #include "debug.h" void audio_init() { Usart3_Init(); } void audio_play(u8 num) { u8 string[]{0x7e,0x05,0x41,0x00,num,0x05^0x41^0x00^num,0xef}; u8 i; for(i0;i<7;i) { USART_Se…...

骁勇善战的量化利器:多因子模型【量化理论】

我叫补三补四&#xff0c;很高兴见到大家&#xff0c;欢迎一起学习交流和进步 今天来讲一讲alpha策略制定后的测试问题 风险模型雏形 股票因子受多种因素影响&#xff0c;其价格由多种因素决定&#xff0c;所谓的多因子策略就是要发掘诸如此类的因子&#xff0c;以一种合理的方…...

Android Loader机制解析

参考: Android Loader 机制...

使用Docker部署SearXNG

SearXNG 搜索引擎 SearXNG 是一个整合了超过70个搜索服务结果的免费的私有互联网搜索引擎&#xff0c;用户不会被网站跟踪或被建立档案进行特征分析&#xff0c;良好地保障了用户的隐私。知识库可以有效地弥补大模型的知识欠缺问题&#xff0c;但依旧无法补充或弥补知识库和大…...

C# ConcurrentQueue 使用详解

总目录 前言 在C#多线程编程中&#xff0c;数据共享如同走钢丝——稍有不慎就会引发竞态条件&#xff08;Race Condition&#xff09;或死锁。传统Queue<T>在并发场景下需要手动加锁&#xff0c;而ConcurrentQueue<T>作为.NET Framework 4.0 引入的线程安全集合&a…...

armv7l

在 **ARMv7l** 中&#xff0c;最后的字符是字母 **“l”**&#xff08;小写字母 “L”&#xff09;&#xff0c;而不是数字 **“1”**。 --- ### 1. **ARMv7l 的含义** - **ARMv7**&#xff1a;指的是 **ARM 架构的第 7 代版本**&#xff0c;是一种广泛应用于嵌入式系统&…...

spring中关于Bean的复习(IOC和DI)

文章目录 1.spring程序开发步骤1.1 导入spring开发的基本包坐标1.2 编写Dao接口和实现类1.3 创建spring核心配置文件1.4 在spring配置文件中配置UserDaoImpl1.5 使用Spring的Api获得Bean实例 2. Bean实例化的三种方式2.1 无参构造方法实例化2.2 工厂静态方法实例化2.3 工厂实例…...

Docker内存芭蕾:优雅调整容器内存的极限艺术

title: “&#x1f4be; Docker内存芭蕾&#xff1a;优雅调整容器内存的极限艺术” author: “Cjs” date: “2025-2-23” emoji: “&#x1fa70;&#x1f4a5;&#x1f4ca;” 当你的容器变成内存吸血鬼时… &#x1f680; 完美内存编排示范 &#x1f4dc; 智能内存管家脚本…...

一周学会Flask3 Python Web开发-flask3上下文全局变量session,g和current_app

锋哥原创的Flask3 Python Web开发 Flask3视频教程&#xff1a; 2025版 Flask3 Python web开发 视频教程(无废话版) 玩命更新中~_哔哩哔哩_bilibili flask3提供了session,g和current_app上下文全局变量来方便我们操作访问数据。 以下是一个表格&#xff0c;用于比较Flask中的…...

【蓝桥杯单片机】客观题

一、第十三届省赛&#xff08;一&#xff09; 二、第十三届省赛&#xff08;二&#xff09;...

QT中经常出现的用法:组合

在 C 中&#xff0c;一个类包含另一个类的对象称为组合&#xff08; Composition &#xff09;。这是一种常见的设计模式&#xff0c;用 于表示一个类是由另一个类的对象组成的。这种关系通常表示一种 " 拥有 " &#xff08; "has-a" &#xff09;的关系。…...

下载CentOS 10

1. 进入官网&#xff1a;https://www.centos.org/ 2. 点击右上角的Download进入下载页面。 3. 选择对应的CPU架构&#xff0c;点击ISOs下面的Mirrors开始下载。...

第9章:LangChain让大模型结构化输出

文章详细介绍了LangChain4j中如何使用结构化输出&#xff08;Structured Outputs&#xff09;。主要内容包括&#xff1a; JSON Schema&#xff1a;通过指定JSON Schema&#xff0c;LLM可以生成符合结构的输出。工具&#xff08;Tools&#xff09;&#xff1a;通过工具调用实现…...

ES6 新特性,优势和用法?

ES6 新特性&#xff0c;优势和用法&#xff1f; ES6&#xff08;ECMAScript 2015&#xff09;引入了许多新特性&#xff0c;这些特性让 JavaScript 变得更加强大、简洁和易于使用。下面为你详细介绍一些常见的 ES6 新特性、它们的优势以及用法。 1. 块级作用域&#xff1a;le…...

简说spring 的设计模式

spring 的设计模式&#xff08;23种…) &#xff08;面试题&#xff09;说说BeanFactory和FactoryBean的实现原理和区别&#xff1f; spring 中你还知道哪些设计模式&#xff1f;&#xff1f; 1.简单工厂模式 实质&#xff1a; 由一个工厂类根据传入的参数&#xff0c;动态决…...

【 Avalonia UI 语言国际化 I18n】图文结合教学,保姆级教学,语言国际化就是这么简单(.Net C#)

完整项目地址 github : https://github.com/Crazy-GrowUp/AvaloniaI18nTest/tree/master gitee :https://gitee.com/jack_of_disco/avalonia-i18n-test 0.项目新建 Properties 文件夹 对应的项目配置文件里面就会增加 <Folder Include"Properties\" /> 1.项…...

Spring Boot 日志管理(官网文档解读)

摘要 本篇文章详细介绍了SpringBoot 日志管理相关的内容&#xff0c;文章主要参考官网文章的描述内容&#xff0c;并在其基础上进行一定的总结和拓展&#xff0c;以方便学习Spring Boot 的小伙伴能快速掌握Spring Boot 日志管理相关的内容。 日志实现方式 Sping Boot 的日志管…...

Nginx学习笔记:常用命令端口占用报错解决Nginx核心配置文件解读

Nginx 1. 基础命令1.1 重新加载systemd配置1.2 停止Nginx服务1.3 启动Nginx服务1.4 重启Nginx服务1.5 查看Nginx服务状态1.6 测试配置和重载Nginx 2. 额外命令2.1 启用开机自启2.2 禁用开机自启2.3 强制关闭所有Nginx进程 3. Nginx端口占用解决方案3.1 查找占用端口8090的进程3…...

【玩转 Postman 接口测试与开发2_020】(完结篇)DIY 实战:随书示例 API 项目本地部署保姆级搭建教程(含完整调试过程)

《API Testing and Development with Postman》最新第二版封面 文章目录 最新版《Postman 接口测试与开发实战》示例 API 项目本地部署保姆级搭建教程1 前言2 准备工作3 具体部署3.1 将项目 Fork 到自己名下3.2 创建虚拟环境并安装依赖3.3 初始运行与项目调试 4 示例项目的用法…...

高清下载油管视频到本地

下载工具并安装: yt-dlp官网地址&#xff1a; GitHub - yt-dlp/yt-dlp: A feature-rich command-line audio/video downloader ffmpeg官网地址&#xff1a; Download FFmpeg 注&#xff1a;记住为其添加环境变量 操作命令&#xff1a; 该指令表示以720p码率下载VIDEO_UR…...

网络运维学习笔记 021 HCIA-Datacom新增知识点02 SDN与NFV概述

SDN与NFV概述 经典IP网络是一个分布式的、对等控制的网络。 每台网络设备存在独立的数据平面、控制平面和管理平面。 设备的控制平面对等的交互路由协议&#xff0c;然后独立的生成数据平面指导报文转发。 它的优势在于设备与协议解耦&#xff0c;厂家间的兼容性较好且故障场景…...

《论模型驱动架构设计方法及其应用》审题技巧 - 系统架构设计师

软件测试工程师软考论文写作框架 一、考点概述 “模型驱动架构设计及其应用”这一论题&#xff0c;主要考察了考生对模型驱动架构设计&#xff08;MDA&#xff09;这一先进软件设计方法的理解与应用能力。论题涵盖了MDA的基本概念、核心要素、实施流程及在实际项目中的应用等…...

【Linux】多线程 -> 线程同步与基于BlockingQueue的生产者消费者模型

线程同步 条件变量 当一个线程互斥地访问某个变量时&#xff0c;它可能发现在其它线程改变状态之前&#xff0c;它什么也做不了。 例如&#xff1a;一个线程访问队列时&#xff0c;发现队列为空&#xff0c;它只能等待&#xff0c;直到其它线程将一个节点添加到队列中。这…...

Docker Mysql 数据迁移

查看启动命令目录映射 查看容器名称 docker ps查看容器的启动命令 docker inspect mysql8.0 |grep CreateCommand -A 20如下图所示:我这边是把/var/lib/mysql 目录映射到我宿主机的/mnt/mysql/data目录下,而且我的数量比较大使用方法1的话时间比较久,所以我采用方法2 如果没…...

四步彻底卸载IDEA!!!

各位看官早安午安晚安呀 如果您觉得这篇文章对您有帮助的话 欢迎您一键三连&#xff0c;小编尽全力做到更好 欢迎您分享给更多人哦 大家好&#xff0c;我们今天来学习四步彻底卸载IDEA&#xff01;&#xff01;&#xff01; 首先我要提醒各位 如果你想删除 IDEA 相关&#xf…...

HTTP实验(ENSP模拟器实现)

HTTP概述 HTTP&#xff08;HyperText Transfer Protocol&#xff0c;超文本传输协议&#xff09;&#xff0c;设计HTTP最初的目的是为了提供一种发布和接收HTML页面的方法。 HTTP定义了多种请求方法&#xff0c;常用的包括&#xff1a; GET&#xff1a;请求资源。 POST&…...

【网络安全】常见的web攻击

1、SQL注入攻击 定义&#xff1a; 攻击者在HTTP请求中注入恶意的SQL代码&#xff0c;当服务器利用参数构建SQL语句的时候&#xff0c;恶意的SQL代码被一起构建,并在数据库中执行。 示例&#xff1a; 用户登录&#xff1a; 输入用户名xx&#xff0c; 密码 or 1 …...