深入理解 Linux 权限控制机制
引言
在 Linux 系统中,权限控制是保障系统安全的核心机制。通过限制用户对文件和资源的访问,它能有效防止未授权操作,保护数据不被篡改或泄露。合理设置权限不仅有助于实现用户隔离和最小权限原则,还能降低系统被滥用或攻击的风险,是每位系统管理员必须掌握的基础技能。
在 Web 服务管理中,权限控制尤为重要。多数情况下,即便攻击者利用漏洞入侵,所获得的权限也仅限于普通用户级别。正是依靠 Linux 严格的权限机制,才能将 Web 漏洞的影响局限在最小范围内,避免演变为更严重的系统级破坏。关于 Linux 系统中常见的权限提升手法,可以参考这个专栏:点击查看。
用户与用户组在 Linux 中的记录机制,可以参考这篇文章了解更多细节:Linux提权原理
ls -l 命令详解
示例
-rwxr-xr-x 1 root root 25451544 Apr 19 15:22 d-eyes
字段 | 示例值 | 含义说明 |
---|---|---|
文件类型+权限 | -rwxr-xr-x | - 表示普通文件;rwx 为所有者权限,r-x 为组权限,r-x 为其他用户权限 |
硬链接数 | 1 | 指向该文件的硬链接数量,普通文件通常为 1 |
所有者(用户) | root | 文件所有者 |
所属组(用户组) | root | 文件所属的用户组 |
文件大小 | 25451544 | 文件大小(以字节为单位),约 24.3 MB |
修改时间 | Apr 19 15:22 | 文件最后修改时间 |
文件名 | d-eyes | 文件的名称 |
Linux 权限基础
用户、用户组与其他用户的权限
在 Linux 中,每个文件或目录都归属于一个特定的用户(owner)和用户组(group)。系统通过权限位将访问控制划分为三类主体:文件所有者(用户)、所属用户组成员以及其他用户(others),每类主体都可以拥有各自的权限设置。
⚠️ :除去最前面的文件类型符号,后面的每三个字符依次表示所有者、用户组和其他用户的权限。
这种三段式的权限模型,使得 Linux 能够灵活地控制资源的访问,既能保护敏感数据,也能根据需要开放部分资源,确保系统的安全与多用户协作效率。
权限的类型
在 Linux 中,每个文件或目录的权限由三种基本类型组成:
- r(read)读权限
- 对文件:允许查看文件内容
- 对目录:允许列出目录中的文件和子目录
- w(write)写权限
- 对文件:允许修改或覆盖文件内容
- 对目录:允许在目录中创建、删除或重命名文件和子目录
- x(execute)执行权限
- 对文件:允许将文件作为程序运行
- 对目录:允许使用
cd
命令进入该目录
查看与修改文件权限
使用 ls -l 查看权限
在 Linux 中,可以使用 ls -l
命令查看文件或目录的权限信息,输出内容包括权限、所有者、用户组、文件大小和修改时间等。若加上 -a
参数(即 ls -la
),还能查看隐藏文件的权限情况。需要特别注意的是,权限字段的最左侧字符表示文件类型:-
表示普通文件,d
表示目录,l
表示符号链接等。
使用 chmod 修改权限
符号法(适合读写改)
chmod u+x script.sh # 给所有者添加执行权限
chmod go-w file.txt # 移除用户组和其他用户的写权限
chmod a+r config.cfg # 所有人添加读权限
数字法(适合整体设置)
权限通过三位八进制数表示,每位分别对应所有者、用户组和其他用户。
- 读(r)= 4,写(w)= 2,执行(x)= 1,叠加计算
chmod 755 run.sh # 所有者 rwx,用户组和其他用户 rx
chmod 644 index.html # 所有者 rw,用户组和其他用户 r
在实际使用中,我常通过 chmod +x examp
给可执行程序添加执行权限。需要注意的是,不建议直接使用 chmod 777
这样的权限设置,因为它会赋予所有用户读、写、执行权限,等于完全开放,可能导致系统权限控制形同虚设,带来安全隐患。
文件所有者与用户组管理
在 Linux 中,每个文件或目录都有一个所有者(user)和一个所属用户组(group),它们决定了该文件的访问权限归属。合理设置文件的所有权是权限控制的重要组成部分。
文件所有者
文件的所有者通常是创建该文件的用户,拥有对文件最全面的控制权限。所有者可以使用 chmod
修改权限,也可以通过 chown
更改所有权。
在 Linux 中,文件所有者对文件具有最高的权限控制能力。除非主动赋权,其他用户无法查看、修改或执行该文件。这种机制是 Linux 用于保护用户数据安全和隐私的核心方式之一。
只有在所有者显式开放权限后,其他用户才能访问该文件。但如果系统仅区分“文件所有者”和“其他用户”,那么一旦授权,所有非所有者用户都将获得访问权限,这在实际使用中往往过于宽泛。
查看所有者
ls -l filename
第一个root所在的位置为文件所有者。
修改文件所有者
sudo chown newuser filename
用户组
用户组是 Linux 中用于归类管理用户的机制。每个文件或目录都归属于一个用户组,组内用户可以根据设定的权限访问或修改资源。通过用户组,文件所有者可以仅向特定用户开放权限,而非对所有其他用户一视同仁。当文件所有者与部分用户属于同一组时,只需为该组设置权限,这些用户即可访问文件,而其他用户仍被限制。这种方式在团队协作中尤为实用,能够实现团队成员间资源共享,同时对非成员保持私有。
查看用户组
# 查看当前用户所属的所有组
groups
# 查看指定用户的所属组
groups 用户名
# 查看系统中所有用户组
cat /etc/group
# 优化输出
cut -d: -f1 /etc/group
修改文件所属用户组
sudo chown 用户名:用户组 文件名
sudo chgrp newgroup 文件名
特殊权限
除了基本的 r
(读)、w
(写)、x
(执行)权限外,Linux 还支持三种特殊权限,用于增强权限控制,常用于提升系统安全性或实现特定功能。下图可以看到一些隐藏文件或系统文件设置了这些特殊权限,以确保它们在共享、执行或删除时受到更严格的管理。
SUID(Set User ID)
SUID 设定后,用户执行该文件时,将临时以文件所有者的身份运行。常见于需要普通用户执行部分系统操作的程序,如 passwd
。
chmod u+s 文件名
权限标识:所有者的执行位显示为 s
,如 -rwsr-xr-x
SGID(Set Group ID)
SGID 对文件作用类似于 SUID,而对目录则更常见,表示新建的文件将继承目录的所属组。常用于共享目录。
设置命令:chmod g+s 目录名
权限标识:组执行位显示为 s
,如 drwxr-sr-x
Sticky Bit
设置 Sticky Bit 后,目录中的文件只能被其所有者或 root 删除,即使其他用户拥有写权限。常用于 /tmp
目录。
设置命令:chmod +t 目录名
权限标识:其他用户执行位显示为 t
,如 drwxrwxrwt
用户身份管理
身份切换
在 Linux 系统中,出于安全考虑,日常使用一般不建议直接以 root 用户登录。但某些操作需要 root 权限,这时可以通过用户身份切换命令完成。常用命令有两种:su
和 sudo
。
su命令(Switch User)
su [options] [username]
用于切换到指定用户身份,若不指定 username
,则默认切换为 root
用户。
常用参数说明:
-
或-l
:使用 login shell 的方式读取目标用户的环境变量(推荐使用)-m
:保留当前用户的环境设置-c "command"
:仅执行一次命令后返回当前身份
区别说明:
su
:切换用户但不加载目标用户环境(non-login shell),如PATH
变量等不会更新su -
:切换并加载目标用户完整环境(login shell),推荐使用
注意事项: 使用 su
切换到 root 时需要输入 root 用户密码。完成操作后可使用 exit
返回原用户。
sudo 命令(Superuser Do)
sudo
允许普通用户在不知晓 root 密码的情况下,临时以 root 权限执行命令。前提是该用户已被授权使用 sudo
,授权信息存储在 /etc/sudoers
文件中。
执行流程:
- 系统检查当前用户是否在 sudo 白名单中(通过
/etc/sudoers
) - 若有权限,用户输入自己的密码(root 用户免密)
- 验证通过后执行命令
sudoers文件配置
sudoers
文件用于配置哪些用户或用户组可以使用 sudo
以及他们能以何种身份执行哪些命令。
格式说明:
用户名 主机名=(可切换身份:目标组) 可执行命令
示例:
testuser ALL=(ALL:ALL) ALL # 可切换为任意用户身份,执行任意命令
testuser ALL=(root:root) ALL # 仅能以 root 身份执行任意命令
testuser ALL=(root:root) /usr/bin/passwd # 仅能以 root 身份执行 passwd 命令
这种权限分配机制保证了在保障系统安全的同时,也赋予用户必要的操作能力。如果你有团队管理需求,还可以通过用户组与 sudoers 配合实现更细粒度的权限控制。
查询用户信息
Linux 提供了多种命令,用于查询当前或指定用户的相关信息,常见命令如下:
命令 | 功能说明 |
---|---|
id <user> | 显示指定用户的 UID、GID、所属用户组等信息(默认显示当前用户) |
who am i / who -m | 显示当前登录会话用户的信息(来源于登录终端) |
whoami | 显示当前有效用户的用户名(可能与登录用户不同) |
w | 显示当前系统所有登录用户的信息及其活动状态 |
who | 显示当前系统所有登录用户的信息 |
last <user> | 显示指定用户的历史登录记录(默认显示当前用户) |
lastlog -u <user> | 显示指定用户最近一次登录信息(默认显示所有用户) |
注:此处不再展示各命令的执行效果,建议读者自行实验。
相关文章:
深入理解 Linux 权限控制机制
引言 在 Linux 系统中,权限控制是保障系统安全的核心机制。通过限制用户对文件和资源的访问,它能有效防止未授权操作,保护数据不被篡改或泄露。合理设置权限不仅有助于实现用户隔离和最小权限原则,还能降低系统被滥用或攻击的风险…...
技术书籍推荐(002)
20. 利用Python进行数据分析 免费 电子书 PDF 下载 书籍简介: 本书聚焦于使用Python进行数据处理和分析。详细介绍了Python中用于数据分析的重要库,如NumPy(提供高效的数值计算功能,包括数组操作、数学函数等)、panda…...
[SAP] SAP ERP用户参数设置
菜单路径 个人默认值的设置(数值,日期,时间) 个人参数值的设置 在给参数设置参数值后,当用户登录到对应功能页面时,这些参数值就会自动带出来 例如,我们分别对上述AAT,VKO以及VTW这3个参数设置了参数值&am…...
Python中,async和with结合使用,有什么好处?
在Python的异步编程中,async和with的结合使用(即async with)为开发者提供了一种优雅且高效的资源管理模式。这种组合不仅简化了异步代码的编写,还显著提升了程序的健壮性和可维护性。以下是其核心优势及典型应用场景的分析&#x…...
【信息系统项目管理师】第3章:信息系统治理 - 29个经典题目及详解
更多内容请见: 备考信息系统项目管理师-专栏介绍和目录 文章目录 【第1题】【第2题】【第3题】【第4题】【第5题】【第6题】【第7题】【第8题】【第9题】【第10题】【第11题】【第12题】【第13题】【第14题】【第15题】【第16题】【第17题】【第18题】【第19题】【第20题】【第…...
python实战项目69:基于Python爬虫的链家二手房数据采集方法研究
python实战项目69:链家二手房数据采集 一、项目需求1.1 房地产数据价值1.2 传统数据获取局限性1.3 技术可行性二、数据采集流程2.1 需求分析2.2 网页结构分析2.3 请求发送与反爬策略2.4 数据解析2.5 数据存储三、结论与展望四、完整代码一、项目需求 本文针对房地产数据分析需…...
PowerShell 脚本中文乱码处理
问题描述 脚本带中文,执行时命令行窗口会显示出乱码 示例 Write-Host "测试成功!"解决方法 问了DeepSeek,让确认是不是 UTF8 无 BOM 格式 事实证明方向对了 但是确认信息有偏差 改成 UTF8 with BOM 使用任意支持修改编码的文本…...
SpEL(Spring Expression Language)使用详解
SpEL(Spring Expression Language)是 Spring 框架中一种强大的表达式语言,支持在运行时动态查询和操作对象图。它与 Spring 生态深度集成,广泛应用于依赖注入、数据绑定、AOP、安全规则等场景。以下是其核心语法、应用场景及使用示…...
论文阅读与写作:《从探索到突破:解密科研和论文写作的思维密码》
文章目录 一、如何做科研1.科研的步骤2.课题选择3.快速入门一个新领域:读论文,先读综述(1)自己看论文的时候,每篇论文花3-5分钟记录一下自己的idea和一些瞬间的想法(2)高质量文献:顶会顶刊(3)如何检索 4.注重团队协作与学术交流5.…...
免费公共DNS服务器推荐
当自动获取的DNS或本地运营商的DNS出现问题,可能导致软件无法连接服务器。此时,手动修改电脑的DNS设置或许能解决问题。许多用户觉得电脑上网速度慢、游戏卡顿,归咎于DNS问题。确实,我们可以自行设置一个DNS来改善网络体验。不少用…...
CK-S650-PA60S半导体专用读写器|读写头与绿联RS232串口转接头联机测试说明
CK-S650-PA60S半导体专用读写器|读写头是一款国产替代欧姆龙V640系列,支持德州仪器公司(TI)制造的RI-TRP-DR2B、RI-TRP-WR2B-40低频玻璃管标签|射频标签读写,广泛应用半导体硅片盒、晶圆盒、花篮等RFID插件识别与产品追溯领域。 CK-S650-PA60S半导体专用…...
Babel 基础使用指南:从安装到编译的完整流程
Babel 是当今前端开发中不可或缺的工具,它允许开发者使用最新的 JavaScript 特性,同时确保代码能在各种浏览器和环境中运行。本文将带你从零开始学习 Babel 的基础使用,涵盖安装、配置到实际编译的全过程。 1. 安装 Babel 和插件 首先&…...
uniapp-商城-52-后台 商家信息(商家信息数据,云对象使用)
1、概述 已经通过好几个篇幅来说明商家信息,包括logo、商家名称,地址,电话以及商家简介。通过表单组件和标签,以及我们的文件上传标签,都做了说明。(logo上传,用的文件上传组件是上传到公共的数…...
【我的创作纪念日】512
机缘 还记得 2023 年 12 月 15 日,我撰写了第 1 篇技术博客:《oracle 跟踪文件--审计日志》。从此,这平凡的一天,赋予了我不平凡的意义。在那一刻,我已在创作这趟旅程中出发,并立志将工作中的经验总结&…...
共享内存与信号量结合
在Linux系统中,进程间通信(IPC)和原子性是并发编程中的核心问题。以下是对这些概念的详细分步解释: 一、进程间通信(IPC)方法 1. 管道(Pipe) 匿名管道:用于父子进程等有…...
西门子PLC s7-1200工艺对象“轴”的应用(1)
1. 工艺对象 “ 轴 ” 的概念 在西门子 S7-1200 PLC 中,术语 “ 轴 ” 特指用 “ 轴 ” 工艺对象表示的驱动器工艺映像。 “ 轴 ” 工艺对象是用 户程序与驱动器之间的接口,用于接收用户程序中的运动控制命令、执行这些命令并监视其运行情况。 运动控制…...
ubuntu22.04在 Docker容器中安装 ROS2-Humble
22.04 安装 docker 容器并实现rviz功能 1 docker pull命令拉取包含ROS-Humble的镜像: docker pull osrf/ros:humble-desktop-full-jammy docker images验证该镜像是否拉取成功。 使用镜像osrf/ros:humble-desktop-full-jammy创建并运行容器 sudo docker run -it…...
【LwIP源码学习6】UDP部分源码分析
前言 本文对lwip协议栈里UDP部分的源码进行分析。将源码中最关键部分提取出来,梳理UDP部分的设计框架。 应用层例子 首先举一个应用层使用UDP的简单例子,如下: //第一步:申请套接字 sock socket(AF_INET, SOCK_DGRAM, 0); //…...
Python Cookbook-7.10 在 MySQL 数据库中储存 BLOB
任务 想把一个二进制的大对象(BLOB)存入MySQL数据库 解决方案 MySQLdb 模块并不支持完整的占位符,不过可以使用模块的escape_string 函数来解决: import MySQLdb,cPickle #连接到数据库,用你的本机来测试数据库,并获得游标 connection = MySQLdb.connect(db = "tes…...
LWIP的ICMP协议
ICMP协议简介 ICMP协议是一个网络层协议 背景:如果丢包了,IP协议并不能通知传输层是否丢包以及丢包的原因。因此我们需要ICMP协议来完成这样的功能 为什么需要ICMP协议 1,IP 协议本身不提供差错报告和差错控制机制来保证数据报递交的有效…...
Spring Web MVC响应
返回静态页面 第一步 创建html时,要注意创建的路径,要在static下面 第二步 把需要写的内容写到body内 第三步 直接访问路径就可以 返回数据ResponseBody RestController Controller ResponseBody Controller:返回视图 ResponseBody&…...
STM32智能窗帘系统:从零到一的开发实战
简介 智能窗帘控制系统是智能家居领域的经典应用,随着物联网技术的不断发展,其功能从简单的远程控制演变为具备环境感知、多设备联动和跨平台兼容的智能系统。本篇文章将全面解析基于STM32的智能窗帘系统开发方案,从硬件设计到软件实现,再到企业级扩展功能,提供完整的代码…...
第三方评测机构如何凭借专业公正提供高可靠性软件检测服务?
第三方评测机构与软件开发及使用单位保持独立,凭借其专业技能和公正立场,为企业提供多样化的软件检测服务。这些检测结果的可靠性极高,不仅有助于企业减轻负担,节省人力和物力资源,而且赢得了业界的普遍认可。下面&…...
相或为K(位运算)蓝桥杯(JAVA)
这个题是相或为k,考察相或的性质,用俩个数举例子,011001和011101后面的数不管和哪个数相或都不可能变成前面的数,所以利用这个性质我们可以用相与运算来把和k对应位置的1都积累起来,看最后能不能拼起来k如果能拼起来k那…...
X.509证书详解
文章目录 1. X.509证书基础1.1 什么是X.509证书1.2 X.509证书结构1.3 证书编码格式2. Java中的X509Certificate2.1 类层次结构2.2 核心方法3. 获取X509Certificate对象3.1 从文件加载证书3.2 从KeyStore获取证书3.3 从HTTPS连接获取证书4. 创建自签名证书5. 证书验证5.1 基本验…...
深入浅出:Spring Boot 中 RestTemplate 的完整使用指南
在分布式系统开发中,服务间通信是常见需求。作为 Spring 框架的重要组件,RestTemplate 为开发者提供了简洁优雅的 HTTP 客户端解决方案。本文将从零开始讲解 RestTemplate 的核心用法,并附赠真实地图 API 对接案例。 一、环境准备 在 Spring…...
C++23 views::repeat (P2474R2) 写一篇博客
文章目录 std::views::enumerate 简介使用示例性能和灵活性与其他视图的结合使用总结 C23 标准引入了众多令人期待的新特性,其中 std::views::enumerate 便是一个备受瞩目的新增视图。这个新特性通过为迭代器提供索引和元素的组合,极大地简化了对集合中…...
微软向现实低头:悄悄延长Windows 10的Microsoft 365支持
快科技5月11日消息,Windows 10将在今年10月14日正式结束支持,此前微软曾明确表示,Microsoft 365(M365)应用,如Outlook、Teams、OneDrive、Word、Excel等,也将随之停止支持。 不过无法升级至Win…...
数字化转型-4A架构之技术架构
4A架构系列文章 数字化转型-4A架构(业务架构、应用架构、数据架构、技术架构) 数字化转型-4A架构之业务架构 数字化转型-4A架构之应用架构 数字化转型-4A架构之数据架构 数字化转型-4A架构之技术架构 一、 技术架构 Technology Architecture 1. 技…...
生产级 Flink CDC 应用开发与部署:MySQL 到 Kafka 同步示例
生产级 Flink CDC 应用开发与部署:MySQL 到 Kafka 同步示例 为了帮助你更好地理解如何将 Flink 作业部署为独立服务,下面我将提供一个完整的工程代码示例。这个例子基于之前的 MySQL 到 Kafka 的数据同步需求,但这次我们将 Flink 作业作为一个独立的服务进行打包和部署。 …...
【计算机视觉】OpenCV实战项目:Text-Extraction-Table-Image:基于OpenCV与OCR的表格图像文本提取系统深度解析
Text-Extraction-Table-Image:基于OpenCV与OCR的表格图像文本提取系统深度解析 1. 项目概述2. 技术原理与算法设计2.1 图像预处理流水线2.2 表格结构检测算法2.3 OCR优化策略 3. 实战部署指南3.1 环境配置3.2 核心代码解析3.3 执行流程示例 4. 常见问题与解决方案4.…...
TSN网络与DIOS融合:破解煤矿井下电力系统越级跳闸难题
一、引言 1.1 研究背景与意义 在现代煤矿生产中,井下电力系统作为整个煤矿生产的动力核心,其重要性不言而喻。煤矿井下的各类机械设备,如采煤机、刮板输送机、通风机、排水泵等,都依赖稳定的电力供应才能正常运行。电力系统的稳定…...
ALLinSSL:一站式SSL证书管理解决方案
引言 在当今互联网安全日益重要的背景下,SSL证书已成为保护网站安全的必备工具。然而,管理多个SSL证书常常是一项繁琐且容易出错的任务。ALLinSSL应运而生,它提供了一个一站式的SSL证书管理解决方案,大大简化了证书的申请、安装和更新过程。本文将深入介绍ALLinSSL的特性、…...
jsAPI
环境准备 1 安装nvm nvm 即 (node version manager),好处是方便切换 node.js 版本 安装注意事项 要卸载掉现有的 nodejs提示选择 nvm 和 nodejs 目录时,一定要避免目录中出现空格选用【以管理员身份运行】cmd 程序来执行 nvm 命令首次运行前设置好国…...
三、c语言练习四题
在这个系列中,我将以每次五题的形式加强对C语言的理解 1、 矩阵转置 要求 输入: 2 3 1 2 3 4 5 6输出: 1 4 2 5 3 6 //矩阵转置(复习) int main() {int i 0;int j 0;int arr[10][10];/*提前定义好一个大容量数…...
MySql(进阶)
一.数据库约束 约束类型 NOT NULL - 指示某列不能存储 NULL 值。 (not null不能为NILL) UNIQUE - 保证某列的每行必须有唯一的值。 (unique唯一值) DEFAULT - 规定没有给列赋值时的默认值。 (default为空给定默认值) PRIMARY…...
数据结构练习:顺序表题目
今天我们来进行顺序表后面习题的练习 目录 移除数组 思路1:查找后进行删除 思路2:新数组交换: 思路3:双指针法: 删除重复项 合并两个有序数组 移除数组 它的示例如下: 思路1:查找后进行删除…...
Ubuntu 22虚拟机【网络故障】快速解决指南
Ubuntu22虚拟机突然无法连接网络了,以下是故障排除步骤记录。 Ubuntu 22虚拟机网络故障快速解决指南 当在虚拟机中安装的 Ubuntu 22 系统出现 ping: connect: 网络不可达 和 ping: www.baidu.com: 域名解析出现暂时性错误的报错时,通常意味着虚拟机无法…...
SwaggerLogger.java
package further.config;import org.springframework.beans.factory.annotation.Value; import org.springframework.boot.CommandLineRunner; import org.springframework.context.annotation.Configuration; import org.springframework.util.StringUtils;/*** swagger启动ap…...
基于SpringBoot的在线教育管理系统
作者:计算机学姐 开发技术:SpringBoot、SSM、Vue、MySQL、JSP、ElementUI、Python、小程序等,“文末源码”。 专栏推荐:前后端分离项目源码、SpringBoot项目源码、Vue项目源码、SSM项目源码、微信小程序源码 精品专栏:…...
企业内训|智能调控系统算法与优化——某汽车厂商
5月9日,东北某市,TsingtaoAI团队为某汽车厂商的智能驾驶业务和研发团队交付“智能调控系统算法与优化”课程。 本课程系统化解析智能调控系统的核心算法原理与前沿优化技术,深度融合经典控制、现代控制及模型预测控制(MPC&#x…...
Web 实时通信技术:WebSocket 与 Server-Sent Events (SSE) 深入解析
一、WebSocket: (一)WebSocket 是什么? WebSocket 是一种网络通信协议,它提供了一种在单个 TCP 连接上进行全双工通信的方式。与传统的 HTTP 请求 - 响应模型不同,WebSocket 允许服务器和客户端在连接建立…...
一个网球新手的学习心得
一个网球新手的学习心得 握拍正手反手发球 网球新手学习的几个重要点就是握拍、正手、反手,还有发球。 握拍 不管是发球还是拉球,首先要注意握拍的方式。 正手的话,一般是右手握住球拍柄,掌心对着球拍柄宽的一面,食…...
12、电子电路设计与PCB布局组件 (概念) - /设计与仿真组件/pcb-layout-tool
76个工业组件库示例汇总 电子电路设计与 PCB 布局组件 (概念演示) 概述 这是一个交互式的 Web 组件,用于演示电子电路原理图设计和 PCB 布局的基本概念。用户可以从元件库中选择元件,在原理图和 PCB 画布上放置、移动,进行原理图连线&…...
[特殊字符] 免税商品优选购物商城系统 | Java + SpringBoot + Vue | 前后端分离实战项目分享
一、项目简介 本项目为一款功能完备的 免税商品优选购物商城系统,采用 Java 后端 Vue 前端的主流前后端分离架构,支持用户、商家、管理员三类角色,满足商品浏览、下单、商家管理、后台运营等多项功能,适用于实际部署或作为毕业设…...
小土堆pytorch--torchvision中的数据集的使用dataloader的使用
torchvision中的数据集的使用&dataloader的使用 一级目录二级目录三级目录 1 torchvision 中的数据集的使用1.1 对与CIFAR - 10数据集的介绍1.2 数据集加载代码1.3 使用transform加载代码 2 DataLoader的使用2.1 DataLoader的作用1. 数据读取2. 数据预处理3. 批量处理4. 并…...
【RabbitMQ】 RabbitMQ高级特性(一)
文章目录 一、消息确认1.1、消息确认机制1.2、手动确认方法1.2.1、AcknowledgeMode.NONE1.2.2、AcknowledgeMode.AUTO1.3.3、AcknowledgeMode.MANUAL 二、持久性2.1、 交换机持久化2.2、队列持久化2.3、消息持久化 三、发送方确认3.1、confirm确认模式3.2、return退回模式3.3、…...
优化理赔数据同步机制:从4小时延迟降至15分钟
优化理赔数据同步机制:从4小时延迟降至15分钟 1. 分析当前同步瓶颈 首先诊断当前同步延迟原因: -- 检查主从复制状态(在主库执行) SHOW MASTER STATUS; SHOW SLAVE HOSTS;-- 在从库执行检查复制延迟 SHOW SLAVE STATUS\G -- 关…...
lampiao靶场渗透
lampiao https://www.vulnhub.com/entry/lampiao-1,249/ 1,将两台虚拟机网络连接都改为NAT模式 2,攻击机上做namp局域网扫描发现靶机 nmap -sn 192.168.23.0/24 那么攻击机IP为192.168.23.182,靶场IP192.168.23.245 3,对靶机进行端…...
云计算中的虚拟化:成本节省、可扩展性与灾难恢复的完美结合
云计算中虚拟化的 4 大优势 1. 成本效益 从本质上讲,虚拟化最大限度地减少了硬件蔓延。团队可以将多个虚拟机整合到单个物理主机上,而不是为每个工作负载部署单独的服务器。这大大减少了前期硬件投资和持续维护。 结果如何?更低的功耗、更低…...