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

【Linux金典面试题(上)】41道Linux金典面试问题+详细解答,包含基本操作、系统维护、网络配置、脚本编程等问题。

大家好,我是摇光~,用大白话讲解所有你难懂的知识点

之前写了一篇关于 python 的面试题,感觉大家都很需要,所以打算出一个面试专栏。
【数据分析岗】Python金典面试题

这个专栏主要针对面试大数据岗位、数据分析岗位、数据运维等。

这是上半部分,下半部分链接:【Linux金典面试题(下)】41道Linux金典面试问题+详细解答


我们都知道开发岗都会或多或少的接触到Linux、如果你掌握了Linux,就多一份技能。
我之前写过一篇Linux零基础入门的文章,很值得新手学习,收藏量都快 100 啦~大家有空可以看看。Linux零基础入门,覆盖Linux全部基础知识

好了,回归正题;下是这些题目及其答案,希望能为您的面试之路增添一份助力。


一、基础概念与操作

1. 简述Linux操作系统的特点及其与Windows的主要区别?

  • Linux是一款开源、免费、多用户、多任务的操作系统,具有高度的稳定性和安全性。
  • 与Windows相比,Linux系统更加灵活,支持广泛的硬件和软件,尤其擅长于服务器和嵌入式系统的应用。此外,Linux社区活跃,拥有大量的开源资源和开发工具。

2. 解释Linux文件系统的层次结构,并列举几个关键目录的作用。

Linux文件系统以根目录“/”为起点,采用树状结构组织文件和目录。

# 关键目录包括:/bin	# 存放基本的可执行文件,如ls、cp等。
/etc	# 存放配置文件,如passwd、group等。
/home	# 存放用户的主目录,每个用户都有一个以用户名命名的子目录。
/lib	# 存放基本的库文件。
/root	# 超级用户的主目录。
/tmp	# 存放临时文件。
/usr	# 存放用户级的应用程序、库文件和文档。
/var	# 存放系统运行时需要改变数据的文件,如日志文件、邮件等。

3. 如何在Linux系统中查看当前登录的用户?

使用who命令可以查看当前登录的用户信息,包括用户名、登录终端、登录时间等。

4. 描述一下chmod和chown命令的功能及常用选项。

  • chmod命令:用于改变文件或目录的权限,常用选项包括-R(递归修改)和模式字符串(如u+rwx表示用户拥有读、写、执行权限)。

  • chown命令:用于改变文件或目录的所有者,常用选项包括-R(递归修改)和–reference=FILE(参考另一个文件的所有者)。

5. 解释硬链接与软链接(符号链接)的区别,并演示如何创建它们?

  • 硬链接:是指通过文件系统的索引节点(inode)建立的文件链接,多个硬链接指向同一个文件内容,删除其中一个链接不会影响其他链接。
  • 软链接:是指向另一个文件或目录的路径名,类似于Windows中的快捷方式。
# 软链接和硬链接的创建
ln source_file hard_link 			# 创建硬链接使用ln命令
ln -s source_file soft_link			# 创建软链接也使用ln命令,但需要加上-s选项

6. 如何在Linux中查找文件内容?

使用grep命令可以搜索文件内容,匹配指定的正则表达式。
grep 搭配 管道符 | 进行筛选,就能准确定位需要找的内容。

7. 解释Linux中的进程状态,如R、S、D、T、Z等。

通过 ps -ef 查看进程状态:

  • R:运行或在运行队列中等待。
  • S:可中断的睡眠状态。
  • D:不可中断的睡眠状态,通常是因为等待I/O操作。
  • T:停止或被跟踪。
  • Z:僵尸状态,进程已结束但父进程尚未回收其资源。

二、系统管理与维护

8. 描述一下Linux系统启动过程,并说明如何设置系统为单用户模式。

  • Linux系统启动过程:BIOS自检、加载内核、初始化系统环境、启动init进程(或systemd)、加载必要的服务、启动用户登录界面等步骤。

  • 系统设置为单用户模式:在GRUB引导菜单中进行。在GRUB菜单中选择要启动的内核版本,按e键编辑启动参数,在linux行末尾添加single或1(表示运行级别1),然后按Ctrl+X或F10启动系统。

9. 如何使用cron和at进行任务调度?

  • cron:是Linux下用于定时执行任务的工具,通过编辑crontab文件来定义任务和时间。使用crontab -e命令编辑当前用户的crontab文件,添加任务条目。

  • at命令:用于一次性定时执行任务,使用echo “command” | at time语法来定义任务和时间。

10. 解释Linux中的inode概念?

inode:是Linux文件系统中的一个数据结构,用于存储文件的元数据,如文件类型、权限、所有者、大小、时间戳以及指向文件数据块的指针。每个文件都有一个唯一的inode号,通过inode可以访问文件的数据。

11. 面对磁盘空间不足的情况,你会采取哪些措施进行排查和处理?

  • 1、使用df -h查看各文件系统的磁盘使用情况。
  • 2、使用du -sh /path/to/directory查看特定目录的磁盘使用情况。
  • 3、根据输出结果,找出占用空间较大的文件或目录,进行删除或压缩处理。

12. 如何备份和恢复Linux系统?

常见备份方法:是使用rsync命令将系统目录(如/home、/etc、/var等)同步到远程服务器或外部存储设备。
恢复:只需将备份的数据重新同步回系统目录即可。

13. 解释SELinux(安全增强型Linux)的作用及其基本配置方法。

  • SELinux是一种安全模块,用于增强Linux系统的安全性。它通过强制访问控制(MAC)策略来限制进程对文件和资源的访问权限。
  • SELinux有三种模式:Enforcing(强制模式)、Permissive(宽容模式)和Disabled(禁用模式)。

基本配置方法包括使用setenforce命令切换SELinux模式,使用semanage、chcon、restorecon等工具管理SELinux策略、上下文和恢复默认上下文。

三、网络配置与服务管理

14. 如何在Linux系统中配置静态IP地址?

  • 1、编辑网络配置文件(如/etc/sysconfig/network-scripts/ifcfg-eth0)
  • 2、设置BOOTPROTO为none或static,添加IPADDR、NETMASK、GATEWAY和DNS1等参数。
  • 3、然后重启网络服务或重启系统使配置生效。

15. 使用netstat或ss命令查看网络连接状态,解释输出中的关键字段。

netstat和ss命令用于显示网络连接、路由表、接口统计等信息。关键字段包括:

  • Proto:协议类型(如TCP、UDP)。
  • Recv-Q和Send-Q:接收和发送队列的长度。
  • Local Address和Foreign Address:本地和远程地址及端口号。
  • State:连接状态(如ESTABLISHED、LISTEN等)。

16. 描述一下Linux下的防火墙工具iptables的基本工作原理?

iptables是Linux下用于配置防火墙的工具,它基于内核的netfilter模块实现。iptables通过定义一系列的规则来过滤和转发数据包。每个规则都有一个匹配条件和一个动作(如ACCEPT、DROP、REJECT等)。

17. 如何安装和配置Apache/Nginx服务器?

  • 安装Apache:可以使用包管理器(如yum、apt等)执行yum install httpd或apt-get install
    apache2命令。

  • 配置Apache:需要编辑配置文件(如/etc/httpd/conf/httpd.conf),设置服务器端口、根目录、虚拟主机等参数。

  • 安装Nginx:也可以使用包管理器执行yum install nginx或apt-get install nginx命令。

  • 配置Nginx:需要编辑配置文件(如/etc/nginx/nginx.conf),设置服务器块、监听端口、位置块等参数。

18. MySQL数据库在Linux上的安装、启动及基本管理命令有哪些?

  • 安装MySQL:可以使用包管理器执行yum install mysql-server或apt-get install
    mysql-server命令。
  • 启动MySQL服务:可以使用systemctl start mysqld或service mysqld
    start命令。

基本管理命令包括:

mysql -u root -p						# 登录MySQL数据库。  
CREATE DATABASE database_name;			# 创建数据库。  
USE database_name;						# 选择数据库  
CREATE TABLE table_name (...);			# 创建表。  
INSERT INTO table_name VALUES (...);	# 插入数据。  
SELECT * FROM table_name;				# 查询数据。

19. 简述SSH服务的配置与安全的优化措施?

  • 修改默认SSH端口:设置Port参数为其他非标准端口,减少被扫描和攻击的风险。
  • 使用基于密钥的认证方式:禁用密码登录(设置PasswordAuthentication no),强制用户使用SSH密钥对进行认证。
  • 限制可登录的用户:通过AllowUsers参数指定允许登录的用户名列表。
  • 配置登录失败次数限制:设置MaxAuthTries参数,限制用户登录失败的尝试次数。
  • 定期更新SSH版本和补丁:确保SSH服务使用的版本是最新的,且已应用所有安全补丁。

20. 在Linux系统中,如何通过防火墙规则限制特定IP地址的访问?

可以使用iptables或firewalld等防火墙工具来限制特定IP地址的访问。
以iptables为例,可以使用以下命令:

bash iptables -A INPUT -s <IP_ADDRESS> -j DROP
# 其中,<IP_ADDRESS>为要限制的IP地址。这条规则表示将来自该IP地址的所有数据包丢弃。

21. 描述一下Linux系统中的服务管理机制,并解释systemctl命令的作用。

  • Linux系统中的服务管理机制负责启动、停止、重启和管理系统服务。传统的init系统使用/etc/inittab和/etc/rc.d等脚本来管理服务。而现代的systemd系统则提供了更加灵活和强大的服务管理机制。

  • systemctl是systemd的命令行工具,用于管理服务单元(如服务、挂载点、设备等)。它允许用户启动、停止、重启、启用、禁用和检查服务状态等操作。例如,systemctl
    start httpd命令用于启动httpd服务。

22. 在Linux系统中,如何配置和管理NTP(网络时间协议)服务?

NTP服务用于同步网络中各个计算机的时间。在Linux系统中,可以使用ntp或chrony等NTP客户端软件来配置和管理NTP服务。

以ntp为例,安装ntp软件包后,编辑/etc/ntp.conf文件来配置NTP服务器地址和其他参数。然后,启动ntp服务,并设置其为开机自启动。使用ntpq
-p命令可以查看NTP同步状态。

23. 解释Linux系统中的虚拟内存机制,并描述swap分区的作用。

  • Linux系统中的虚拟内存机制允许进程使用比实际物理内存更多的内存空间。它通过分页和交换等技术将物理内存和磁盘空间结合起来,实现内存的动态分配和管理。

  • swap分区是Linux系统中用于扩展虚拟内存的一种磁盘空间。当物理内存不足时,系统会将部分不常用的内存页面交换到swap分区中,以释放物理内存给更需要的进程使用。这样可以避免内存溢出和进程崩溃等问题。

24. 在Linux系统中,如何配置和使用NFS(网络文件系统)?

  • NFS是一种允许网络中的计算机共享文件的协议。在Linux系统中,可以使用nfs-utils软件包来配置和使用NFS服务。
  • 1、首先,安装nfs-utils软件包。
  • 2、然后,编辑/etc/exports文件来配置NFS导出目录和权限。
  • 3、接下来,启动rpcbind和nfs-server服务,并设置它们为开机自启动。
  • 4、最后,在客户端上安装nfs-common软件包,并使用mount -t nfs命令挂载NFS导出目录。

25. 解释Linux系统中的日志管理机制,并列举常见的日志文件及其作用。

Linux系统中的日志管理机制用于记录系统事件、用户操作、程序运行等信息。这些日志信息对于系统维护、故障排查和安全审计等方面非常重要。

常见的日志文件包括:/var/log/messages		# 记录系统整体信息,包括启动、运行和关闭过程中的重要事件。
/var/log/syslog			# 与/var/log/messages类似,但用于基于syslog协议的日志记录系统。
/var/log/auth.log		# 记录认证相关信息,如用户登录、注销和sudo操作等。
/var/log/kern.log		# 记录内核相关的日志信息。
/var/log/boot.log		# 记录系统启动过程中的日志信息。

26. 在Linux系统中,如何配置和使用SMTP服务器发送邮件?

在Linux系统中,可以使用sendmail、postfix或exim等SMTP服务器软件来发送邮件。

  • 以postfix为例,安装postfix软件包后,编辑/etc/postfix/main.cf文件来配置SMTP服务器参数,如邮件服务器地址、域名和认证方式等。
  • 然后,启动postfix服务,并设置其为开机自启动。最后,使用mail、sendmail或mutt等邮件客户端软件来发送邮件。

27. 解释Linux系统中的LVM(逻辑卷管理)机制,并描述其优点。

LVM是Linux系统中的一种逻辑卷管理机制,它允许用户将多个物理磁盘或分区组合成一个或多个逻辑卷组,并在这些逻辑卷组上创建和管理逻辑卷。LVM提供了灵活的磁盘空间管理和扩展能力。

LVM的优点包括:

灵活的磁盘空间管理:用户可以根据需要动态地调整逻辑卷的大小,而无需重新分区或格式化磁盘。
高效的磁盘空间利用:LVM可以跨多个物理磁盘或分区分配磁盘空间,实现了磁盘空间的最佳利用。
易于管理和维护:LVM提供了强大的管理工具和命令,使得磁盘空间的管理和维护变得更加简单和方便。

28. 在Linux系统中,如何配置和使用iSCSI(Internet Small Computer System Interface)存储?

iSCSI是一种基于IP网络的块级存储协议,它允许用户通过网络将远程的存储设备连接到本地系统中。在Linux系统中,可以使用iscsi-initiator-utils软件包来配置和使用iSCSI存储。

  • 首先,安装iscsi-initiator-utils软件包。
  • 然后,编辑/etc/iscsi/initiatorname.iscsi文件来设置iSCSI发起者名称。
  • 接下来,使用iscsiadm命令来发现、登录和挂载iSCSI目标设备。
  • 最后,可以在/dev/目录下找到挂载的iSCSI磁盘设备,并对其进行分区、格式化和挂载等操作。

29. 解释Linux系统中的SELinux(安全增强型Linux)机制,并描述其工作原理。

SELinux是Linux系统中的一种安全增强机制,它提供了强制访问控制(MAC)功能,以限制进程对文件和资源的访问权限。SELinux通过策略来定义访问控制规则,并在内核级别强制执行这些规则。

SELinux的工作原理包括:

策略加载:在系统启动时,SELinux加载预定义的策略文件,并解析其中的访问控制规则。
上下文分配:SELinux为每个进程、文件和资源分配一个安全上下文(如用户、角色和类型等)。
访问控制决策:当进程尝试访问文件或资源时,SELinux根据安全上下文和策略文件中的规则来做出访问控制决策。如果决策结果为允许,则进程可以访问该文件或资源;否则,访问将被拒绝。

30. 在Linux系统中,如何配置和使用SNMP(简单网络管理协议)服务?

SNMP是一种用于网络管理和监控的协议。在Linux系统中,可以使用net-snmp软件包来配置和使用SNMP服务。

  • 首先,安装net-snmp软件包。
  • 然后,编辑/etc/snmp/snmpd.conf文件来配置SNMP服务的参数,如社区字符串、监听地址和端口等。接下来,启动snmpd服务,并设置其为开机自启动。
  • 最后,使用snmpwalk、snmpget或snmpset等SNMP命令来查询、获取和设置网络设备的信息。

这是上篇,下篇:【Linux金典面试题(下)】41道Linux金典面试问题+详细解答

这就是全部的 41 道金典题,有些可能对新手比较难,但是能够理解到位就ok,毕竟面试都是靠自己讲述。

相关文章:

【Linux金典面试题(上)】41道Linux金典面试问题+详细解答,包含基本操作、系统维护、网络配置、脚本编程等问题。

大家好&#xff0c;我是摇光~&#xff0c;用大白话讲解所有你难懂的知识点 之前写了一篇关于 python 的面试题&#xff0c;感觉大家都很需要&#xff0c;所以打算出一个面试专栏。 【数据分析岗】Python金典面试题 这个专栏主要针对面试大数据岗位、数据分析岗位、数据运维等…...

SpringBoot【九】mybatis-plus之自定义sql零基础教学!

一、前言&#x1f525; 环境说明&#xff1a;Windows10 Idea2021.3.2 Jdk1.8 SpringBoot 2.3.1.RELEASE mybatis-plus的基本使用&#xff0c;前两期基本讲的差不多&#xff0c;够日常使用&#xff0c;但是有的小伙伴可能就会抱怨了&#xff0c;若是遇到业务逻辑比较复杂的sq…...

CTF 攻防世界 Web: FlatScience write-up

题目名称-FlatScience 网址 index 目录中没有发现提示信息&#xff0c;链接会跳转到论文。 目前没有发现有用信息&#xff0c;尝试目录扫描。 目录扫描 注意到存在 robots.txt 和 login.php。 访问 robots.txt 这里表明还存在 admin.php admin.php 分析 在这里尝试一些 sql…...

【记录49】vue2 vue-office在线预览 docx、pdf、excel文档

vue2 在线预览 docx、pdf、excel文档 docx npm install vue-office/docx vue-demi0.14.6 指定版本 npm install vue-office/docx vue-demi <template><VueOfficeDocx :src"pdf" style"height: 100vh;" rendere"rendereHandler" error&…...

机器学习中的 Transformer 简介(第 1 部分)

目录 一、说明 二、为什么是 Transformer&#xff1f; 三、什么是 Transformer&#xff1f; 3.1 译者的类比 四、编码器部分 4.1 、从文本输入到输入嵌入 4.2 词嵌入 4.2 N倍编码器段 4.4 多头注意力机制 4.5 添加残差和层归一化 4.6 添加残差和层归一化 五、总结 一、说明 西如…...

宝塔-docker拉取宝塔镜像,并运行宝塔镜像

宝塔-拉取宝塔镜像&#xff0c;并运行镜像 第1步&#xff1a;查询 docker search btpanel/baota此docker镜像由堡塔安全官方发布&#xff0c;镜像版本为宝塔面板9.2.0正式版和9.0.0_lts 稳定版&#xff0c;镜像会随着宝塔面板更新。 目前支持x86_64和arm架构可供下载使用 版本…...

【从零开始入门unity游戏开发之——C#篇12】新的引用类型——数组array

文章目录 一、数组&#xff08;array&#xff09;&#xff08;一维数组&#xff09;1、声明数组2、初始化数组3、访问数组元素4 、修改数组元素5、获取数组的长度6、遍历数组使用 for 循环&#xff1a;使用 foreach 循环&#xff1a; 7、数组方法排序&#xff1a;逆序&#xff…...

人工智能在数字人的技术与应用

在人工智能领域&#xff0c;数字人技术正逐渐从科幻小说走向现实。数字人&#xff0c;也称为虚拟助手或虚拟形象&#xff0c;是通过AI技术模拟人类行为、语言和情感的数字化存在。本文将深入探讨数字人技术的核心原理、最新进展以及在不同领域的应用案例&#xff0c;为专业人士…...

【机器人】Graspness 端到端 抓取点估计 | 论文解读

在复杂场景中实现抓取检测&#xff0c;Graspness是一种端到端的方法&#xff1b; 输入点云数据&#xff0c;输出抓取角度、抓取深度、夹具宽度等信息。 开源地址&#xff1a;GitHub - rhett-chen/graspness_implementation: My implementation of Graspnet Graspness. 论文地…...

服务器Docker OOM RSS高问题排查思路

优质博文&#xff1a;IT-BLOG-CN 防走弯路为防止走弯路&#xff0c;强烈建议先仔细阅读以下加粗内容&#xff1a; 如果你的应用是因为公司最近降成本调小实例物理内存才出现docker oom&#xff0c;而之前从来没有出现过&#xff0c;那么大概率是堆内存太大导致&#xff0c;这种…...

动态导出word文件支持转pdf

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 前言一、功能说明二、使用步骤1.controller2.工具类 DocumentUtil 导出样式 前言 提示&#xff1a;这里可以添加本文要记录的大概内容&#xff1a; 例如&#xff…...

【文档搜索引擎】在内存中构造出索引结构(下)

文章目录 4.保存到磁盘中为什么要保存在磁盘中怎么保存操作步骤1. 前期准备2. 主要操作 5. 将磁盘中的数据加载到内存中Parser 类完整源码Index 类完整源码 4.保存到磁盘中 为什么要保存在磁盘中 索引本来是存储在内存中的&#xff0c;为什么要将其保存在硬盘中&#xff1f; …...

旅游资源系统|Java|SSM|VUE| 前后端分离

【技术栈】 1⃣️&#xff1a;架构: B/S、MVC 2⃣️&#xff1a;系统环境&#xff1a;Windowsh/Mac 3⃣️&#xff1a;开发环境&#xff1a;IDEA、JDK1.8、Maven、Mysql5.7 4⃣️&#xff1a;技术栈&#xff1a;Java、Mysql、SSM、Mybatis-Plus、VUE、jquery,html 5⃣️数据库可…...

如何用细节提升用户体验?

前端给用户反馈是提升用户体验的重要部分&#xff0c;根据场景选择不同的方式可以有效地提升产品的易用性和用户满意度。以下是常见的方法&#xff1a; 1. 视觉反馈 用户执行了某些操作后&#xff0c;需要即时确认操作结果。例如&#xff1a;按钮点击、数据提交、页面加载等。…...

容器设计模式:Sidecar

文章目录 容器设计模式&#xff1a;Sidecar 模式1. 什么是 Sidecar 模式&#xff1f;2. Sidecar 模式的原理2.1 工作机制2.2 常见用途 3. Sidecar 模式示例示例&#xff1a;日志收集 4. Sidecar 模式的架构图图例&#xff1a; 5. Sidecar 模式的优点6. Sidecar 模式的局限性7. …...

深入剖析MyBatis的架构原理

架构设计 简要画出 MyBatis 的架构图 >> ​​ Mybatis 的功能架构分为哪三层&#xff1f; API 接口层 提供给外部使用的接口 API&#xff0c;开发人员通过这些本地 API 来操纵数据库。接口层一接收到调用请求就会调用数据处理层来完成具体的数据处理。MyBatis 和数据库的…...

深入C语言文件操作:从库函数到系统调用

引言 文件操作是编程中不可或缺的一部分&#xff0c;尤其在C语言中&#xff0c;文件操作不仅是处理数据的基本手段&#xff0c;也是连接程序与外部世界的重要桥梁。C语言提供了丰富的库函数来处理文件&#xff0c;如 fopen、fclose、fread、fwrite 等。然而&#xff0c;这些库…...

【Linux】shell脚本二

2、接收用户的参数 shell脚本已经内设了用于接收用户输入参数的变量&#xff0c;变量之间可以使用空格隔开。 如&#xff1a;./test.sh one two three four $0&#xff1a;对应的是当前shell脚本程序的名称&#xff0c;即test.sh$#&#xff1a;对应的是总共有几个参数&#…...

从万维网到人工智能:改变生活的11项技术里程碑

1984 年 1 月 24 日&#xff0c;苹果公司推出了 Macintosh 128K&#xff0c;从此永远改变了个人电脑的面貌。 史蒂夫・乔布斯&#xff08;Steve Jobs&#xff09;这款小巧且用户友好的电脑向全世界引入了图形用户界面&#xff0c;标志着个人技术发展历程中的一个关键时刻。 从…...

Hyperledger Fabric 2.x 环境搭建

Hyperledger Fabric 是一个开源的企业级许可分布式账本技术&#xff08;Distributed Ledger Technology&#xff0c;DLT&#xff09;平台&#xff0c;专为在企业环境中使用而设计&#xff0c;与其他流行的分布式账本或区块链平台相比&#xff0c;它有一些主要的区别。 环境准备…...

【Maven】自定义Maven插件

场景&#xff1a; 1、自定义一个插件目标 timer&#xff0c;用于显示当前日期时间。 2、将 timer 绑定到 validate 阶段。 调研 1、maven-clean-plugin 下载 maven-clean-plugin 插件的源码&#xff0c;在本地使用 IDEA 打开 可以看到&#xff0c;maven-clean-plugin 插件是…...

修改vscode中emmet中jsx和tsx语法中className的扩展符号从单引号到双引号 - HTML代码补全 - 单引号双引号

效果图 实现步骤 文件 > 首选项 > 设置搜索“”在settings.json中修改&#xff0c;增加 "emmet.syntaxProfiles": {"html": {"attr_quotes": "single"},"jsx": {"attr_quotes": "double","…...

数据结构day3作业

一、完整功能【顺序表】的创建 【seqList.h】 #ifndef __SEQLIST_H__ #define __SEQLIST_H__#include <stdio.h> #include <string.h> #include <stdlib.h>//宏定义&#xff0c;线性表的最大容量 #define MAX 30//类型重定义&#xff0c;表示要存放数据的类…...

pydub AudioSegment实现音频重采样 - python 实现

DataBall 助力快速掌握数据集的信息和使用方式&#xff0c;会员享有 百种数据集&#xff0c;持续增加中。 需要更多数据资源和技术解决方案&#xff0c;知识星球&#xff1a; “DataBall - X 数据球(free)” -------------------------------------------------------------…...

C++多线程常用方法

在 C 中&#xff0c;线程相关功能主要通过头文件提供的类和函数来实现&#xff0c;以下是一些常用的线程接口方法和使用技巧&#xff1a; std::thread类 构造函数&#xff1a; 可以通过传入可调用对象&#xff08;如函数指针、函数对象、lambda 表达式等&#xff09;来创建一…...

【网络安全】Web Timing 和竞争条件攻击:揭开隐藏的攻击面

Web Timing 和竞争条件攻击&#xff1a;揭开隐藏的攻击面 在传统的 Web 应用中&#xff0c;漏洞的发现和利用通常相对容易理解。如果代码存在问题&#xff0c;我们可以通过发送特定输入来强制 Web 应用执行非预期的操作。这种情况下&#xff0c;输入和输出之间往往有直接关系&…...

12月最新编程语言排行榜

“岁末将至&#xff0c;2024年的编程世界又发生了哪些变化&#xff1f;是Python依然稳坐王座&#xff0c;还是有新语言杀出重围&#xff1f;让我们一起看看12月最新编程语言排行榜&#xff0c;寻找未来技术的风向标。” 今年&#xff0c;哪些编程语言成为行业焦点&#xff1f;…...

迭代器模式

迭代器模式 迭代器模式&#xff08;Iterator Pattern&#xff09;是一种行为设计模式&#xff0c;它提供了一种方法来访问一个聚合对象中的各个元素&#xff0c;而又不暴露其内部的表示。这种模式允许你逐个访问对象中的元素&#xff0c;而无需知道其底层的数据结构。迭代器模…...

探秘 WB 实验:AI 助力攻克操作难关

在生物学研究的浩瀚领域中&#xff0c;WB 实验犹如一座关键的灯塔&#xff0c;照亮了我们探索蛋白质世界的道路。今天&#xff0c;就让我们一同深入了解 WB 实验的全貌&#xff0c;以及 AI 如何在其中发挥神奇作用&#xff0c;帮助我们应对实际操作中的重重挑战。 WB 实验&…...

labelimg使用指南

YOLOv8目标检测(一)_检测流程梳理&#xff1a;YOLOv8目标检测(一)_检测流程梳理_yolo检测流程-CSDN博客 YOLOv8目标检测(二)_准备数据集&#xff1a;YOLOv8目标检测(二)_准备数据集_yolov8 数据集准备-CSDN博客 YOLOv8目标检测(三)_训练模型&#xff1a;YOLOv8目标检测(三)_训…...

车载终端_智能车载终端定制_农机/出租车/叉车/驾培车载终端MTK方案

车载终端集成了先进的技术和卓越的性能&#xff0c;采用了联发科的高效低功耗ARM处理器&#xff0c;具备八核架构&#xff0c;主频高达2.0GHz&#xff0c;基于12nm制程工艺&#xff0c;不仅性能强劲&#xff0c;而且功耗控制出色。基本配置为4GB内存与64GB存储&#xff0c;用户…...

Unity中Pico实现透视

1.参照Pico官方【透视 | PICO 开发者平台】文档设置。 2.额外的需要将主相机的post processing禁用。...

elk部署与实战案例

**ELK Stack** 是一个非常强大的日志处理和分析平台&#xff0c;由 **Elasticsearch**、**Logstash** 和 **Kibana** 三个组件组成。它被广泛应用于日志收集、搜索、分析和可视化。ELK 可以处理大量数据&#xff0c;并帮助用户从中提取有价值的信息。以下是一个从部署到实际应用…...

Isaac Gym, Sim, Lab

本文仅为个人学习笔记&#xff0c;文章参考请见参考资料部分&#xff0c;主要目的是进行多场景并行仿真测试&#xff0c;笔记中大部分内容都是针对于这个目标。 参考资料 常见问题 — Isaac Lab 文档 https://github.com/isaac-sim/IsaacLab 一. Gym, Sim, Lab 之间的关系 Is…...

活着就好20241217

亲爱的朋友们&#xff0c;大家早上好&#xff01;&#x1f31e; 今天是17号&#xff0c;星期二&#xff0c;2024年12月的第十七天&#xff0c;同时也是第50周的第八天&#xff0c;农历甲辰[龙]年十一月初十三日。在这晨光熹微的美好时刻&#xff0c;愿那温暖而明媚的阳光轻轻拂…...

第十六章:IO流 (java.io包中)

一、理解 1. 简单而言&#xff1a;流就是内存与存储设备之间传输数据的通道、管道。 2. 分类&#xff1a; (1) 按方向 ( 以 JVM 虚拟机为参照物 ) 【重点】 输入流&#xff1a;将 < 存储设备 > 中的内容读入到 < 内存 > 中。 输出流&#xff1a;将 < 内…...

Introduction to NoSQL Systems

What is NoSQL NoSQL database are no-tabular非數據表格 database that store data differently than relational tables 其數據的存儲方式與關係型表格不同 Database that provide a mechanism機制 for data storage retrieval 檢索 that is modelled in means other than …...

【JVM】JVM基础教程(四)

上一章&#xff1a;【JVM】JVM基础教程&#xff08;三&#xff09;-CSDN博客 目录 自动垃圾回收 方法区的回收 方法区回收条件 手动触发回收 堆回收 如何判断堆上的对象可以回收&#xff1f; 可以给对象引用赋值null&#xff0c;切断引用 引用计数法 循环引用缺点 查…...

前端实现在线预览excel文件

在前端开发中&#xff0c;经常会遇到需要在线预览各种文件的需求。本文将介绍如何使用前端技术实现在线预览 Excel 文件的功能。 一、基于微软office服务的excel预览 获取要预览的 Excel 文件的 URL&#xff08;例如存储在 OneDrive 或 SharePoint 上的文件&#xff09;。 使…...

Python 写的《桌面时钟》屏保

原代码&#xff1a; # 日历式时钟 # 导入所需的库 # 作者&#xff1a;Hoye # 日期&#xff1a;2024年12月16日 # 功能&#xff1a;显示当前日期、星期、时间&#xff0c;并显示模拟时钟 import tkinter as tk from tkinter import ttk import time import math import sysdef …...

计算机视觉单阶段实例分割实践指南与综述

概述 原文地址&#xff1a;https://towardsdatascience.com/single-stage-instance-segmentation-a-review-1eeb66e0cc49 实例分割是一项具有挑战性的计算机视觉任务&#xff0c;需要预测对象实例及其每像素分割掩码。这使其成为语义分割和目标检测的混合体。 自 Mask R-CNN …...

Axios结合Typescript 二次封装完整详细场景使用案例

Axios 是一个基于 promise 的 HTTP 客户端&#xff0c;用于浏览器和 node.js。二次封装 Axios 主要是为了统一管理 HTTP 请求&#xff0c;例如设置统一的请求前缀、头部、超时时间&#xff0c;统一处理请求和响应的格式&#xff0c;以及错误处理等。 以下是一个使用 TypeScrip…...

C++面试:HTTP1.0/1.1,HTTP2.0,HTPP3.0的区别

1.你对HTTP1.0/1.1&#xff0c;HTTP2.0&#xff0c;HTPP3.0有什么了解&#xff1f; 答&#xff1a;HTTP1.0&#xff1a; ①属于无连接式&#xff0c;每次发送HTTP请求都需要建立TCP连接。 ②会造成发送时的对头阻塞&#xff0c;当上一个请求没有应答&#xff0c;当前的请求就会…...

使用 Docker Compose 部署 Redis 主从与 Sentinel 高可用集群

文章目录 使用 Docker Compose 部署 Redis 主从与 Sentinel 高可用集群Redis 主从架构简介Redis Sentinel 简介配置文件1. 主节点配置 (redis-master.conf)2. 从节点配置 (redis-slave1.conf 和 redis-slave2.conf)redis-slave1.confredis-slave2.conf3. Sentinel 配置 (sentin…...

【Java】4、虚拟机 JVM

目录 Java内存区域详解(重点) JVM垃圾回收详解(重点) 类文件结构详解 类加载过程详解 类加载器详解(重点) 最重要的JVM参数总结 JDK监控和故障处理工具总结 JVM线上问题排查和性能调优案例 参考&#xff1a; JVM 核心技术 32 讲 深入浅出 Java 虚拟机...

Vue3之组合式API详解

Vue 3引入了一种新的API风格——组合式API&#xff08;Composition API&#xff09;&#xff0c;旨在提升组件的逻辑复用性和可维护性。本文将详细阐述Vue 3中的组合式API&#xff0c;包括其定义、特点、使用场景、优势等&#xff0c;并给出具体的示例代码。 一、定义 组合式…...

Flutter编译Module was compiled with an incompatible version of Kotlin错误解决

文章目录 编译报错如下解决方法修复方案 编译报错如下 e: C:/Users/YUAN/.gradle/caches/modules-2/files-2.1/org.jetbrains.kotlin/kotlin-stdlib/1.9.20/e58b4816ac517e9cc5df1db051120c63d4cde669/kotlin-stdlib-1.9 .20.jar!/META-INF/kotlin-stdlib-jdk8.kotlin_module:…...

Uniapp插件如何通过NFC读取多种证卡信息?

nfc读卡uniapp插件&#xff0c;由中软高科进行开发&#xff0c;主要是通过NFC读取居民身份证、港澳台居住证、外国人居住证、护照等证卡的信息。经过多个版本的升级更新&#xff0c;目前性能已趋于稳定&#xff0c;并且读卡速度较之最初版本有了大的提升。 注意事项 测试使用的…...

本地docker镜像改名字

如果你想修改本地 Docker 镜像的名字&#xff0c;可以通过创建该镜像的新标签&#xff08;tag&#xff09;来实现。Docker 中没有直接修改镜像名字的命令&#xff0c;但可以通过重新打标签的方式实现类似的效果。以下是具体步骤&#xff1a; 查看当前镜像&#xff1a; docker…...

VS Code 远程连接 SSH 服务器

文章目录 一、安装 Remote - SSH 扩展并连接远程主机二、免密连接远程主机1. 生成 SSH 密钥对2. 将公钥复制到远程服务器3. 配置 SSH 客服端4. 连接测试 随着技术的不断迭代更新&#xff0c;在 Linux 系统中使用 Vim、nano 等基于 Shell 终端的编辑器&#xff08;我曾经也是个 …...