Linux 系统管理进阶
Linux 系统管理进阶从 Shell 变量到用户权限目录Shell 环境变量环境变量概述常用环境变量详解变量持久化配置命令替换与引号命令替换引号和转义字符用户和组管理本地用户管理本地组管理综合案例密码管理/etc/shadow 文件解析chage 命令用户锁定与解锁提权管理su 命令sudo 命令1. Shell 环境变量1.1 环境变量概述环境变量分为两种类型说明内置变量设置 shell 的运行环境如 PATH、PS1、LANG用户自定义变量用户自己定义的普通变量查看所有变量[ggcentos7 ~16:46:47]$set|head-10BASH/bin/bashBASHOPTScheckwinsize:cmdhist:expand_aliases:extglob:extquote:force_fignore:histappend:interactive_comments:login_shell:progcomp:promptvars:sourcepathBASH_ALIASES()BASH_ARGC()BASH_ARGV()BASH_CMDS()BASH_COMPLETION_VERSINFO([0]2[1]7)BASH_LINENO()BASH_SOURCE()BASH_VERSINFO([0]4[1]2[2]46[3]2[4]release[5]x86_64-redhat-linux-gnu)1.2 常用环境变量详解EDITOR - 默认编辑器[ggcentos7 ~16:46:55]$echo$EDITOR# 设置默认编辑器为 vim[ggcentos7 ~16:47:00]$exportEDITOR/bin/vim[ggcentos7 ~16:47:05]$echo$EDITOR/bin/vim# 使用 visudo 时会自动使用 vim[ggcentos7 ~16:47:10]$sudoEDITORvim visudoLANG - 系统语言[ggcentos7 ~16:47:15]$date2026年 07月18日 星期四16:47:15 CST# 切换为英文[ggcentos7 ~16:47:22]$exportLANGen_US.utf8[ggcentos7 ~16:47:27]$dateThu Jul1816:47:27 CST2026# 切换回中文[ggcentos7 ~16:47:32]$exportLANGzh_CN.utf8[ggcentos7 ~16:47:37]$date2026年 07月18日 星期四16:47:37 CSTPATH - 命令搜索路径[ggcentos7 ~16:47:42]$echo$PATH/usr/local/bin:/usr/bin:/bin:/usr/local/sbin:/usr/sbin:/home/gg/.local/bin:/home/gg/bin# 将自定义目录添加到 PATH[ggcentos7 ~16:47:50]$exportPATH$PATH:/home/gg/scripts[ggcentos7 ~16:47:55]$echo$PATH/usr/local/bin:/usr/bin:/bin:/usr/local/sbin:/usr/sbin:/home/gg/.local/bin:/home/gg/bin:/home/gg/scriptsPS1 - 命令提示符[ggcentos7 ~16:48:00]$echo$PS1[\u\h\W]\$# 修改提示符为带时间格式[ggcentos7 ~16:48:05]$PS1[\u\h \W \t]\$ [ggcentos7 ~16:48:05]$# 恢复默认提示符[ggcentos7 ~16:48:12]$PS1[\u\h \W]\$ [ggcentos7 ~]$PS1 常用转义字符字符说明\u当前用户名\h主机名\W当前目录名\w当前完整路径\t当前时间HH:MM:SS\$提示符root 显示 #普通用户显示 $彩色提示符配置[ggcentos7 ~16:48:20]$PS1[\[\e[91m\]\u\[\e[0m\]\[\e[92m\]\h\[\e[0m\] \[\e[94m\]\W\[\e[0m\]]\$ [ggcentos7 ~]$HISTTIMEFORMAT - 历史命令时间格式[ggcentos7 ~16:48:30]$history|head-31000ls-l1001cd/etc1002catpasswd# 设置历史命令显示时间[ggcentos7 ~16:48:35]$exportHISTTIMEFORMAT%F %T [ggcentos7 ~16:48:40]$history|head-310002026-07-1816:46:47ls-l10012026-07-1816:46:52cd/etc10022026-07-1816:46:55catpasswd1.3 变量持久化配置Login Shell 加载顺序SSH 登录、su -/etc/profile系统级别~/.bash_profile用户级别~/.bashrc用户级别/etc/bashrc系统级别Non-login Shell 加载顺序bash、图形界面终端~/.bashrc用户级别/etc/bashrc系统级别# 方法1写入 /etc/profile影响所有用户[ggcentos7 ~16:48:47]$sudoechoexport HISTTIMEFORMAT%F %T /etc/profile# 方法2写入 ~/.bashrc只影响当前用户[ggcentos7 ~16:48:55]$echoexport HISTTIMEFORMAT%F %T ~/.bashrc# 立即生效[ggcentos7 ~16:49:00]$source~/.bashrc# 验证[ggcentos7 ~16:49:05]$echo$HISTTIMEFORMAT%F %T2. 命令替换与引号2.1 命令替换两种格式$(COMMAND)- 推荐支持嵌套COMMAND- 传统格式# 获取当前日期[ggcentos7 ~16:49:12]$TODAY$(date%F)[ggcentos7 ~16:49:17]$echo今天是$TODAY今天是2026-07-18# 创建带日期的文件[ggcentos7 ~16:49:22]$touchbackup-$(date%Y%m%d).tar.gz[ggcentos7 ~16:49:27]$lsbackup* backup-20260718.tar.gz# 获取当前用户[ggcentos7 ~16:49:32]$CURRENT_USER$(whoami)[ggcentos7 ~16:49:37]$echo当前用户$CURRENT_USER当前用户gg# 计算 12...100 的和[ggcentos7 ~16:49:42]$echo$[$(echo{1..100}|tr )]5050# 嵌套命令替换[ggcentos7 ~16:49:50]$echo当前目录有$(ls|wc-l)个文件当前目录有15个文件2.2 引号和转义字符符号说明\转义单个字符双引号变量和命令替换生效单引号原样输出[ggcentos7 ~16:49:57]$NAME张三# 无引号[ggcentos7 ~17:00:02]$echo$NAMEis here 张三 is here# 双引号 - 变量替换生效[ggcentos7 ~17:00:07]$echo$NAMEis here张三 is here# 单引号 - 原样输出[ggcentos7 ~17:00:12]$echo$NAME is here$NAMEis here# 转义字符[ggcentos7 ~17:00:17]$echo价格是 \$100价格是$100# 双引号中转义变量[ggcentos7 ~17:00:22]$echo欢迎 \$NAME来到课堂欢迎$NAME来到课堂# 双引号中命令替换生效[ggcentos7 ~17:00:27]$echo今天是$(date%F)今天是2026-07-18# 单引号中命令替换不生效[ggcentos7 ~17:00:32]$echo今天是 $(date %F)今天是$(date%F)3. 用户和组管理3.1 本地用户管理useradd - 创建用户# 创建基本用户[ggcentos7 ~17:00:40]$sudouseraddoperator1# 创建用户并指定多个选项[ggcentos7 ~17:00:47]$sudouseradd-u1088-gusers-cOperator One-m-d/home/operator1 operator1# 验证用户信息[ggcentos7 ~17:00:55]$idoperator1uid1088(operator1)gid100(users)groups100(users)# 查看 /etc/passwd 中对应条目[ggcentos7 ~17:01:00]$grepoperator1 /etc/passwd operator1:x:1088:100:Operator One:/home/operator1:/bin/bashuseradd 常用选项选项说明-u指定 UID-g指定主组-G指定补充组-c设置用户描述-m创建家目录-d指定家目录路径-s指定登录 Shellusermod - 修改用户# 修改 UID[ggcentos7 ~17:01:10]$sudousermod-u2000operator1# 修改后验证[ggcentos7 ~17:01:15]$idoperator1uid2000(operator1)gid100(users)groups100(users)# 添加补充组[ggcentos7 ~17:01:22]$sudousermod-aGwheel operator1# 验证补充组[ggcentos7 ~17:01:27]$idoperator1uid2000(operator1)gid100(users)groups100(users),10(wheel)# 修改用户描述[ggcentos7 ~17:01:32]$sudousermod-cSenior Operatoroperator1# 查看修改后的描述[ggcentos7 ~17:01:37]$grepoperator1 /etc/passwd operator1:x:2000:100:Senior Operator:/home/operator1:/bin/bashuserdel - 删除用户# 删除用户保留家目录[ggcentos7 ~17:01:45]$sudouserdeloperator1# 验证用户已删除[ggcentos7 ~17:01:50]$idoperator1 id: operator1: no such user# 删除用户及其家目录[ggcentos7 ~17:01:55]$sudouserdel-roperator1 userdel: user operator1 does not exist3.2 本地组管理groupadd - 创建组# 创建基本组[ggcentos7 ~17:02:02]$sudogroupadddeveloper# 创建组并指定 GID[ggcentos7 ~17:02:07]$sudogroupadd-g2000developer# 验证组信息[ggcentos7 ~17:02:12]$grepdeveloper /etc/group developer:x:2000:groupmod - 修改组# 修改组名称[ggcentos7 ~17:02:20]$sudogroupmod-ndevelopers developer# 修改组 GID[ggcentos7 ~17:02:25]$sudogroupmod-g3000developers# 验证修改[ggcentos7 ~17:02:30]$grepdevelopers /etc/group developers:x:3000:groupdel - 删除组[ggcentos7 ~17:02:37]$sudogroupdeldevelopers# 验证删除[ggcentos7 ~17:02:42]$grepdevelopers /etc/groupgroupmems - 管理组成员# 创建用户和组[ggcentos7 ~17:02:50]$sudouseradddeveloper1[ggcentos7 ~17:02:55]$sudogroupadddevelopers# 添加成员[ggcentos7 ~17:03:02]$sudogroupmems-gdevelopers-adeveloper1# 查看成员[ggcentos7 ~17:03:07]$ groupmems-gdevelopers-ldeveloper1# 验证用户组信息[ggcentos7 ~17:03:12]$iddeveloper1uid2001(developer1)gid2001(developer1)groups2001(developer1),3000(developers)# 删除成员[ggcentos7 ~17:03:17]$sudogroupmems-gdevelopers-ddeveloper1# 验证删除[ggcentos7 ~17:03:22]$ groupmems-gdevelopers-l3.3 综合案例案例1手动创建一个用户# 1. 添加账户到 /etc/passwd[ggcentos7 ~17:03:30]$sudovim/etc/passwd# 最后一行添加zhangsan:x:1002:1002::/home/zhangsan:/bin/bash# 2. 添加组到 /etc/group[ggcentos7 ~17:03:35]$sudovim/etc/group# 最后一行添加zhangsan:x:1002:# 3. 添加密码到 /etc/shadow[ggcentos7 ~17:03:40]$sudovim/etc/shadow# 最后一行添加密码为 redhatzhangsan:$6$FgUNKn74$pxDk9AEhsxkJGYi76Rv91zLy5LRns8olgAyGuNssQYG07ypaidhuX0gHAU4hrNi9Zp9A7vtMEvbyzCQ0e/gbk1::0:99999:7:::# 4. 准备家目录[ggcentos7 ~17:03:45]$sudocp-r/etc/skel/ /home/zhangsan[ggcentos7 ~17:03:50]$sudochownzhangsan:zhangsan /home/zhangsan[ggcentos7 ~17:03:55]$ls-ld/home/zhangsan drwxr-xr-x.16zhangsan zhangsan4096Jul1817:03 /home/zhangsan# 5. 测试登录[ggcentos7 ~17:04:00]$sshzhangsanlocalhost zhangsanlocalhosts password: Last login: Thu Jul1817:04:002026from localhost[zhangsancentos7 ~]$案例2误删用户家目录恢复# 故障现象[ggcentos7 ~17:04:10]$sshzhangsanlocalhost zhangsanlocalhosts password: Could not chdir to home directory /home/zhangsan: No suchfileor directory -bash-4.2$# 恢复方法[ggcentos7 ~17:04:15]$sudocp-r/etc/skel/ /home/zhangsan[ggcentos7 ~17:04:20]$sudochownzhangsan:zhangsan /home/zhangsan[ggcentos7 ~17:04:25]$ls-ld/home/zhangsan drwx------.3zhangsan zhangsan78Jul1817:04 /home/zhangsan4. 密码管理4.1 /etc/shadow 文件解析[ggcentos7 ~17:04:32]$sudogrepgg /etc/shadow gg:$6$w9Q5VJvZ$7cT...:19692:0:99999:7:::九个字段说明字段说明1用户名2加密的密码6 66 SHA-5123上次密码更改日期距离 1970-1-1 的天数4最小密码生命周期0 可随时更改5最大密码生命周期99999 永不过期6密码过期前告警天数7密码过期后非活跃天数8账户过期日期9保留域4.2 chage 命令# 查看用户密码信息[ggcentos7 ~17:04:40]$sudochage-loperator1 最近一次密码修改时间 7月18,2026密码过期时间 从不 密码失效时间 从不 帐户过期时间 从不 两次改变密码之间相距的最小天数 0 两次改变密码之间相距的最大天数 99999 在密码过期之前警告的天数 7# 设置密码最大生命周期为 100 天[ggcentos7 ~17:04:50]$sudochage-M100operator1# 设置密码最小生命周期为 3 天[ggcentos7 ~17:04:55]$sudochage-m3operator1# 设置密码过期前告警天数为 7 天[ggcentos7 ~17:05:00]$sudochage-W7operator1# 设置密码过期后非活跃天数为 30 天[ggcentos7 ~17:05:05]$sudochage-I30operator1# 验证修改[ggcentos7 ~17:05:10]$sudochage-loperator1 最近一次密码修改时间 7月18,2026密码过期时间 10月26,2026密码失效时间 11月25,2026帐户过期时间 从不 两次改变密码之间相距的最小天数 3 两次改变密码之间相距的最大天数 100 在密码过期之前警告的天数 7# 强制用户下次登录时修改密码[ggcentos7 ~17:05:15]$sudochage-d0operator1# 验证已设置[ggcentos7 ~17:05:20]$sudogrepoperator1 /etc/shadow operator1:$6$...:0:3:100:7:30::4.3 用户锁定与解锁passwd 命令# 设置密码[ggcentos7 ~17:05:27]$sudopasswdoperator1 Changing passwordforuser operator1. New password: BAD PASSWORD: The password is shorter than8characters Retype new password: passwd: all authentication tokens updated successfully.# 删除密码允许无密码登录[ggcentos7 ~17:05:37]$sudopasswd-doperator1 Removing passwordforuser operator1. passwd: Success# 锁定密码[ggcentos7 ~17:05:42]$sudopasswd-loperator1 Locking passwordforuser operator1. passwd: Success# 解锁密码[ggcentos7 ~17:05:47]$sudopasswd-uoperator1 Unlocking passwordforuser operator1. passwd: Successusermod 命令# 锁定用户密码[ggcentos7 ~17:05:52]$sudousermod-Loperator1# 验证锁定密码字段前有 !![ggcentos7 ~17:05:57]$sudogrepoperator1 /etc/shadow operator1:!!$6$...:19692:0:99999:7:::# 解锁用户密码[ggcentos7 ~17:06:02]$sudousermod-Uoperator1# 验证解锁[ggcentos7 ~17:06:07]$sudogrepoperator1 /etc/shadow operator1:$6$...:19692:0:99999:7:::禁止用户登录# 方法1修改 Shell 为 nologin[ggcentos7 ~17:06:15]$sudousermod-s/sbin/nologin operator1# 验证[ggcentos7 ~17:06:20]$su- operator1 This account is currently not available.# 恢复[ggcentos7 ~17:06:25]$sudousermod-s/bin/bash operator1# 方法2设置账户过期[ggcentos7 ~17:06:30]$sudousermod-e2024-7-18 operator1# 验证[ggcentos7 ~17:06:35]$su- operator1 Your account has expired;please contact your system administrator# 恢复[ggcentos7 ~17:06:40]$sudousermod-eoperator15. 提权管理5.1 su 命令su 命令用于切换用户身份# 切换到 root非登录 Shell保留当前环境[ggcentos7 ~17:06:47]$suPassword:[rootcentos7 gg]# whoamiroot[rootcentos7 gg]# pwd/home/gg[rootcentos7 gg]# exitexit[ggcentos7 ~17:06:55]$# 切换到 root登录 Shell加载 root 环境[ggcentos7 ~17:07:00]$su- Password: Last login: Thu Jul1817:06:472026on pts/0[rootcentos7 ~]# whoamiroot[rootcentos7 ~]# pwd/root[rootcentos7 ~]# exitlogout[ggcentos7 ~17:07:08]$# 切换到指定用户[ggcentos7 ~17:07:12]$su- operator1 Password:[operator1centos7 ~]$whoamioperator1[operator1centos7 ~]$pwd/home/operator1[operator1centos7 ~]$exitlogout[ggcentos7 ~17:07:20]$# 执行单个命令后返回[ggcentos7 ~17:07:25]$su-cwhoami; pwdPassword: root /rootsu 缺点用户必须知道 root 密码未记录用户执行命令无法以/sbin/nologin用户身份运行命令5.2 sudo 命令sudo 允许用户以其他用户身份执行特定命令# 以 root 身份执行命令[ggcentos7 ~17:07:32]$sudowhoami[sudo]passwordforgg: root# 指定用户执行命令[ggcentos7 ~17:07:40]$sudo-uoperator1whoamioperator1# 切换到 root Shell[ggcentos7 ~17:07:45]$sudo-i[rootcentos7 ~]# whoamiroot[rootcentos7 ~]# pwd/root[rootcentos7 ~]# exitlogout[ggcentos7 ~17:07:52]$# 查看可执行的 sudo 命令[ggcentos7 ~17:07:57]$sudo-lMatching Defaults entriesforgg on centos7:!visiblepw, always_set_home, match_group_by_gid User gg may run the following commands on centos7:(ALL)ALLsudo 优点用户输入自己的密码而非 root 密码执行命令记录在/var/log/secure精确控制用户可执行的命令sudoers 配置# 编辑配置文件使用 visudo 自动检查语法[ggcentos7 ~17:08:05]$sudovisudo# 配置示例ggALL(ALL)ALL# 允许执行所有命令ggALL(ALL)NOPASSWD: ALL# 免密执行所有命令ggALL(ALL)/sbin/useradd,/sbin/usermod# 只允许执行特定命令# 使用从配置文件推荐[ggcentos7 ~17:08:15]$sudoechogg ALL(ALL) ALL/etc/sudoers.d/gg[ggcentos7 ~17:08:20]$cat/etc/sudoers.d/gg ggALL(ALL)ALL命令别名# 定义命令别名Cmnd_Alias USER_COMMANDS/usr/sbin/useradd, /usr/sbin/usermod, /usr/sbin/userdel Cmnd_Alias GROUP_COMMANDS/usr/sbin/groupadd, /usr/sbin/groupmod, /usr/sbin/groupdel# 使用命令别名ggALL(ALL)USER_COMMANDS, GROUP_COMMANDS提权管理最佳实践优先使用 sudo临时获取权限操作完成后自动退回普通用户合理配置 sudoers精确控制用户可执行的命令使用绝对路径防止环境变量篡改导致的安全风险定期审计日志检查/var/log/secure追踪权限使用情况总结本文涵盖了 Linux 系统管理的核心内容Shell 环境变量掌握 EDITOR、LANG、PATH、PS1、HISTTIMEFORMAT 等常用环境变量的配置方法命令替换与引号理解$(COMMAND)和COMMAND的使用掌握转义字符和引号的区别用户和组管理熟练使用 useradd/usermod/userdel 和 groupadd/groupmod/groupdel/groupmems 命令密码管理掌握 chage 命令配置密码策略了解用户锁定与解锁的多种方法提权管理理解 su 和 sudo 的区别掌握 sudoers 文件的配置方法这些技能是 Linux 系统管理的基础建议多加练习熟练掌握

相关新闻

Python 3.13无GIL时代的数据分析性能优化

Python 3.13无GIL时代的数据分析性能优化

1. Python 3.13无GIL时代的性能革命Python 3.13版本最引人注目的特性莫过于移除了全局解释器锁(GIL),这一改变彻底打破了Python在多线程并行计算方面的性能瓶颈。GIL作为Python解释器中的一个互斥锁,长期以来限制了Python在多核CP…

2026/7/21 18:17:20 阅读更多 →
2小时,我搭了一套库存分析看板,库存风险一眼看清

2小时,我搭了一套库存分析看板,库存风险一眼看清

很多企业并不缺库存数据。仓库有出入库明细,财务有库存金额,采购有在途订单,销售有商品销量。但这些数据散落在不同表格里,真正遇到问题时,仍然很难快速判断:哪些商品正在积压?哪些库存占用了大…

2026/7/21 18:17:23 阅读更多 →
TI EMIFA接口配置实战:驱动异步NAND Flash的时序计算与寄存器详解

TI EMIFA接口配置实战:驱动异步NAND Flash的时序计算与寄存器详解

1. 项目概述与核心价值 在嵌入式系统开发中,尤其是基于TI C6000系列DSP或ARM处理器进行复杂数据处理时,外部存储器的扩展能力往往是决定系统性能上限的关键。处理器内部的高速缓存和RAM容量有限,当需要处理海量数据(如图像、音频流…

2026/7/21 18:17:23 阅读更多 →

最新新闻

HTML dl元素使用技巧与最佳实践

HTML dl元素使用技巧与最佳实践

1. 项目概述"part5 dl的学习技巧"这个标题看起来有些模糊&#xff0c;但从上下文和搜索内容来看&#xff0c;它很可能指的是HTML中的<dl>元素&#xff08;Description List&#xff09;的学习方法和使用技巧。作为前端开发的基础元素之一&#xff0c;<dl>…

2026/7/24 9:28:07 阅读更多 →
UE5地形植被实例残留问题:绘制密度清零法彻底解决

UE5地形植被实例残留问题:绘制密度清零法彻底解决

1. 项目概述&#xff1a;当Foliage说“再见”却赖着不走 在虚幻引擎5&#xff08;UE5&#xff09;的世界里&#xff0c;尤其是从5.2版本开始&#xff0c;地形植被&#xff08;Foliage&#xff09;系统变得更加智能和强大&#xff0c;但随之而来的一个“甜蜜的烦恼”也困扰着不少…

2026/7/24 9:28:07 阅读更多 →
SteamCleaner开源工具:精准清理游戏冗余文件,释放数十GB硬盘空间

SteamCleaner开源工具:精准清理游戏冗余文件,释放数十GB硬盘空间

1. 项目概述&#xff1a;为什么你的Steam游戏库总是“空间告急”&#xff1f;如果你是一个Steam重度用户&#xff0c;那么硬盘空间告急的红色感叹号&#xff0c;大概率是你电脑桌面上的“常客”。每次看到心仪的游戏打折&#xff0c;第一反应不是“买不买”&#xff0c;而是“还…

2026/7/24 9:28:07 阅读更多 →
ChatGPT在业财融合中的应用与数字化转型实战

ChatGPT在业财融合中的应用与数字化转型实战

1. 项目背景与核心价值 这份120页的PPT资料《ChatGPT与数字化转型的业财融合》是当前企业数字化升级过程中的实战指南。我在去年为某跨国集团做财务系统智能化改造时&#xff0c;就深刻体会到传统业财系统与AI技术融合的迫切性——他们的财务团队每月要处理超过5万张发票&#…

2026/7/24 9:28:07 阅读更多 →
MSP430FR2676电容触摸开发实战:从硬件连接到软件调优

MSP430FR2676电容触摸开发实战:从硬件连接到软件调优

1. 从零上手电容触摸&#xff1a;MSP430FR2676评估板深度解析与实战如果你正在寻找一种可靠、低成本且易于集成的触摸交互方案&#xff0c;那么电容触摸技术绝对值得你投入时间研究。不同于传统的机械按键&#xff0c;电容触摸无需物理接触压力&#xff0c;仅通过检测人体手指带…

2026/7/24 9:28:06 阅读更多 →
漫步者Comfo Clip耳夹式蓝牙耳机评测:骨传导+气传导技术解析

漫步者Comfo Clip耳夹式蓝牙耳机评测:骨传导+气传导技术解析

漫步者 Comfo Clip 耳夹式蓝牙耳机最近在市场上引起了不少关注&#xff0c;很多用户都在问&#xff1a;这款设计新颖的耳夹式耳机到底值不值得买&#xff1f;音质表现如何&#xff1f;相比传统入耳式和半入耳式耳机有什么优势&#xff1f; 如果你经常遇到以下问题&#xff1a;…

2026/7/24 9:27:06 阅读更多 →

日新闻

用Highcharts 创建可拖拽三维散点立方体3D图表

用Highcharts 创建可拖拽三维散点立方体3D图表

该案例基于Highcharts scatter3d 三维散点图实现空间立方体散点可视化&#xff0c;核心特色&#xff1a;三维 X/Y/Z 三轴空间&#xff0c;所有散点分布在 0~10 立方体空间内&#xff1b;散点使用径向渐变实现立体 3D 圆球质感&#xff1b;支持鼠标 / 触屏拖拽画布&#xff0c;…

2026/7/24 0:00:29 阅读更多 →
AppCertDlls:进程创建路径上的 DLL 入口

AppCertDlls:进程创建路径上的 DLL 入口

AppCertDlls&#xff1a;进程创建路径上的 DLL 入口 AppCertDlls 位于 HKLM\System\CurrentControlSet\Control\Session Manager\AppCertDlls。本文的程序功能是只读列出这个键在 64 位和 32 位注册表视图中的全部值&#xff0c;并显示每条值的来源、名称、类型和可安全显示的数…

2026/7/24 0:00:29 阅读更多 →
我的编程之路:第一篇博客

我的编程之路:第一篇博客

大家好&#xff0c;我是一名编程初学者&#xff0c;同时这也是我编程学习之路上的第一篇博客。在这里&#xff0c;我想要向大家介绍我的一些想法和规划。a.自我介绍我是一个刚刚接触编程的新手&#xff0c;目前在学习c语言&#xff0c;我对编程世界充满了强烈的好奇。当然&…

2026/7/24 0:00:29 阅读更多 →

周新闻

Go语言静态资源打包方案对比与实践指南

Go语言静态资源打包方案对比与实践指南

1. 项目背景与核心需求在Go语言开发中&#xff0c;我们经常需要处理静态资源文件的打包问题。无论是Web应用的模板文件、前端资源&#xff0c;还是配置文件、证书等&#xff0c;都需要随程序一起分发。传统做法是将这些文件与编译后的二进制文件放在同一目录下&#xff0c;但这…

2026/7/24 3:59:20 阅读更多 →
Go语言实现高性能LDAP认证服务的架构与实践

Go语言实现高性能LDAP认证服务的架构与实践

1. 项目背景与核心价值LDAP&#xff08;轻量级目录访问协议&#xff09;作为企业级身份认证的黄金标准&#xff0c;已经服务了超过80%的财富500强公司。我在金融科技领域实施统一认证体系时&#xff0c;发现传统Java方案存在启动慢、内存占用高等痛点。而Go语言凭借其协程并发模…

2026/7/24 1:23:39 阅读更多 →
【AI面试官实战指南】:用ChatGPT模拟10类高频技术岗面试,3天提升应答精准度92%

【AI面试官实战指南】:用ChatGPT模拟10类高频技术岗面试,3天提升应答精准度92%

更多请点击&#xff1a; https://intelliparadigm.com 第一章&#xff1a;AI面试官实战指南的核心价值与适用场景 AI面试官并非替代人类HR的“黑箱工具”&#xff0c;而是以可解释、可审计、可迭代的方式&#xff0c;赋能招聘全链路的关键基础设施。其核心价值在于将主观经验沉…

2026/7/23 17:49:47 阅读更多 →

月新闻