
Liunx
文章平均质量分 61
ALex_zry
梦想走遍天涯,后来工作攒钱实现
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
Docker Compose`down`和`stop`命令的区别
本文将详细介绍这两个命令的区别,并通过代码示例和 Mermaid 图表进行解释。创建的容器,但不会删除这些容器、网络、卷或镜像。创建的容器、网络、卷和镜像。• 当你只需要暂时停止服务,后续可能会重新启动时。• 当你完成测试或开发,需要完全清理所有资源时。• 当你想要重新部署服务,需要从干净状态开始时。:指定停止容器的超时时间(默认为 10 秒)。:指定关闭容器的超时时间(默认为 10 秒)。• 当你不想删除任何资源,只是暂停服务时。的区别,并根据实际需求选择合适的命令。文件中定义的服务的容器。原创 2025-05-22 21:17:20 · 1362 阅读 · 0 评论 -
`Release`模式下 编译器优化对 gRPC 远程调用的影响 导致堆栈非法访问
模式下编译和运行代码,逐步启用优化选项,并使用 AddressSanitizer,可以有效避免和检测这些问题。同时,确保所有变量的生命周期都符合预期,避免访问超出作用域的变量,可以进一步提高代码的健壮性。模式下,编译器的优化可能会导致 gRPC 的远程调用出现问题。这可能会影响 gRPC 的远程调用,因为 gRPC 的调用链可能依赖于某些变量的生命周期。优化可能会将一些函数内联,这可能改变栈的使用方式,导致访问超出作用域的变量。模式下,编译器的优化可能会导致 gRPC 的远程调用出现问题。原创 2025-05-22 21:03:35 · 923 阅读 · 0 评论 -
查看使用宿主机模式的Docker容器端口
时,容器会直接使用宿主机的网络命名空间,这意味着容器和宿主机共享相同的网络接口和端口。在这种情况下,容器内部的进程就像在宿主机上直接运行一样,不会通过Docker的网络栈进行端口映射。不过,我们可以通过查看宿主机上的进程和端口使用情况来确定容器使用了哪些端口。以下是使用Mermaid绘制的解释图,展示如何查看宿主机模式下容器的端口使用情况。如果你不确定容器内部运行的进程名称,可以进入容器内部查看。如果你不知道容器的进程号,但知道容器的名称或ID,可以使用。命令结合使用,来查看这些进程使用的端口。原创 2025-05-22 20:53:34 · 588 阅读 · 0 评论 -
问题排查文档
错误,具体表现为程序试图访问已经超出作用域的栈内存。这通常是因为某些变量的作用域问题导致的。重新运行程序,确保问题已经解决。在运行程序时,AddressSanitizer 报告了。检查 cleanup_sha 是否为空。函数中所有变量的作用域,确保在调用。构造 zsetKey 和 argv。的生命周期仍然有效。1.6 Mermaid 图表。处理 NOSCRIPT 错误。之前不会被销毁或重新分配。的作用域提升到整个函数。方法获取指针,但需要确保。时,所有变量仍然有效。NOSCRIPT 错误。原创 2025-05-20 23:29:57 · 779 阅读 · 0 评论 -
程序运行报错分析文档
同时,需要检查 MySQL 的重连逻辑和 SQL 插入语句的合法性,以避免其他潜在问题。错误,具体表现为程序试图访问已经超出作用域的栈内存。这通常是因为某些变量的作用域问题导致的。列的值为空字符串,而该列可能需要一个有效的日期时间值。在运行程序时,AddressSanitizer 报告了。已经被弃用,建议使用其他方式来处理重连逻辑。这是一个 SQL 错误,表明在插入数据时,函数中所有变量的作用域,确保在调用。这是一个 MySQL 的警告,表明。的生命周期仍然有效。2.6 Mermaid 图表。原创 2025-05-20 23:29:19 · 737 阅读 · 0 评论 -
告别手动输入密码:基于SSHPass的自动化文件传输实践告别手动输入密码:基于SSHPass的自动化文件传输实践
在日常运维工作中,文件传输是常见的任务,但传统的手动操作方式效率低下且容易出错。为了解决这一问题,本文介绍了一种基于SSHPass的自动化文件传输方案。该方案通过sshpass工具实现免交互传输,结合rsync/scp进行文件传输,并自动修正文件权限。文章详细介绍了自动化脚本的编写方法,包括配置区、文件传输执行、权限自动修正等关键功能。此外,还提供了安全增强、性能优化、日志记录等策略,以及与其他方案的对比选型。最后,文章探讨了该方案在CI/CD集成、批量服务器操作、数据库备份同步等场景的应用,并展示了实际生原创 2025-05-08 20:55:29 · 1036 阅读 · 0 评论 -
跨Linux发行版CPU指令集兼容性深度解析与实践指南
1.1 Ubuntu与Debian指令集差异对比关键差异指令解析表1.2 差异根源深度剖析• Ubuntu使用5.15内核启用ARMv8.5特性• Debian基于5.10内核仅支持到ARMv8.2• Ubuntu GCC 11默认启用-march=native• Debian GCC 10采用保守的-march=armv8-a。原创 2025-04-25 21:21:16 · 765 阅读 · 0 评论 -
Linux用户管理实战:创建用户并赋予sudo权限的深度解析
日志记录/var/log/auth.log。检查/var/log/auth.log。检查/etc/sudoers。chage -l 用户名。现象:用户存在但无法登录。原因:DNS反向解析超时。检查sudoers配置。密码策略/PAM模块。visudo语法验证。原创 2025-04-24 22:56:03 · 865 阅读 · 0 评论 -
从源码到实战:深度解析`rsync`增量同步机制与高级应用
rsyncrsync。原创 2025-04-15 21:18:38 · 1341 阅读 · 0 评论 -
创建系统镜像:打包你的Linux环境
通过使用这个简单的Bash脚本,你可以轻松地将你的Linux系统环境打包成一个镜像文件,无论是为了备份还是为了在其他机器上快速部署。请记得在执行脚本之前做好充分的准备和数据备份,以确保数据安全。希望这篇文章能帮助你更高效地管理你的Linux系统环境。如果你有任何问题或需要进一步的帮助,请随时联系我们。分享一个有趣的学习链接。原创 2024-09-10 11:22:02 · 8006 阅读 · 2 评论 -
深入理解Shell中的`echo`命令
在Shell脚本编程中,echo命令是最基本的命令之一,用于向终端输出文本。然而,echo的用途远不止于此。本文将深入探讨echo命令的多种用法,包括打印命令执行结果和控制命令执行流程。echo。原创 2024-08-05 14:42:39 · 775 阅读 · 0 评论 -
Linux ps 命令 查看程序应用信息详解 从自动值守查询脚本开始
ps是 Linux 系统中用来查看当前进程状态的工具。它提供了一种快速查看系统进程及其状态的方式,对于系统管理员和用户来说,是诊断问题和监控系统性能的重要工具。原创 2024-08-05 14:35:38 · 1188 阅读 · 0 评论 -
深入Linux Core文件生成与自定义命名规则
Linux 作为广泛使用的运行平台,在程序运行崩溃时能及时记录 错误信息,是很方便的查询问题的方式,这里对怎么使用 Linux下的 错误信息记录 core文件,进行总结介绍。原创 2024-06-17 10:59:08 · 803 阅读 · 0 评论 -
Linux 更新man说明手册,man中文手册
新安装的centos7,发现man手册不完全。原创 2024-05-19 23:05:13 · 486 阅读 · 0 评论 -
Linux怎样更新Centos下Gcc版本支持C17?Centos7快速安装gcc8.3.1 可支持C++17(附gcc相关链接整理)
centos7直接yum安装的那个gcc版本为4.8.5,对于大多数的需求来说都是低了。现在最新的版本可能到9了,9.2 9.3的安装教程我在网上都搜到过,但是似乎9的版本都需要make和make install?编译时间得小半天吧,有时候还会有各种奇怪的报错。所以要求不是特别严格的话可以看看8.3.1版本,我不是很清楚它和这种费时巨大的在使用的时候会不会缺胳膊少腿的,但是我目前用着还行。原创 2024-05-19 23:04:13 · 2388 阅读 · 0 评论 -
Linux 下centos 查看 -std这个编译时命令 是否支持 C17
gcc --version,可以查看版本号,笔者的电脑,gcc的版本号是8.3.0,然后查看8.3.0是什么时候发布的,查出是2019年发布的,从而推断出是支持,但是不是十分肯定,所以接着看第二种方法。实际工作中,可能会遇到c++的一些高级特性,例如std::invoke,此函数是c++17才引入的,如何判断当前的gcc是否支持c++17呢,这里提供两种办法。上图中,红色方框-std=表示支持的标准项,可以看到c11,c17之类的。centos 本身自带的版本是不支持到C17的。2.直接man gcc。原创 2024-05-19 22:58:52 · 399 阅读 · 0 评论 -
Linux技术分享:Linux设置软链接
分享一个有趣的 学习链接:https://xxetb.xet.tech/s/HY8za。原创 2024-05-19 22:56:52 · 655 阅读 · 0 评论 -
yum出现Loaded plugins: fastestmirror, security Loading mirror speeds from cached hostfile解决方法
这里的DNS设置内容,不一定是这个,要根据实际情况使用,比如,我之前是用的就是 114.114.114.114 这里你可以使用DNS2 来添加新的内容,这样一来,就可以同时使用多个DNS地址了。如果是静态网络,则在/etc/sysconfig/network-scripts/ifcfg-eth0文件中添加。如果配置的DHCP动态网络,则在/etc/resolv.conf文件中添加。原创 2024-05-19 22:53:45 · 5096 阅读 · 0 评论 -
Linux yum 运行时提示编码问题错误
分享一个有趣的 学习链接:https://xxetb.xet.tech/s/HY8za。这个报错是编码问题导致的。原创 2024-05-19 22:51:21 · 807 阅读 · 0 评论 -
Linux yum 使用时提示 获取 GPG 密钥失败Couldn‘t open file RPM-GPG-KEY-EPEL-7
把gpgcheck=1 改为gpgcheck=0 即可,意思是在安装的时候不进行源的检查。分享一个有趣的 学习链接:https://xxetb.xet.tech/s/HY8za。这个就是安装的时候会检查key这个可以再repo文件中关闭即可。原创 2024-05-19 22:50:47 · 728 阅读 · 0 评论 -
Linux Ubuntu crontab 添加错误 提示:no crontab for root - using an empty one 888
第一次使用crontab -e命令====时会让我们选择编辑器,很多人会不小心选择默认的nano(不好用),或则提示;这时候我们要重新选择编辑器crontab -ecrontab -e。原创 2024-05-19 22:50:03 · 1427 阅读 · 0 评论 -
Linux gdb调试的时候没有对应的c调试信息库怎么办?
在centos7上面gdb调试程序时候,报错信息是:解决方案:1 先修改"/etc/yum.repos.d/CentOS-Debuginfo.repo"文件的 enable=1;2 执行3 执行这里就说明了没有对应的调试信息库。原创 2024-05-19 22:49:08 · 401 阅读 · 0 评论 -
Linux 用户使用sudo时 显示xxx is not in the sudoers file.This incident will be reported.的解决方法
1.切换到root用户下,su -3.编辑sudoers文件找到这行L,在他下面添加(这里的xxx是你的用户名)ps:这里说下你可以sudoers添加下面四行中任意一条第一行:允许用户youuser执行sudo命令(需要输入密码).第二行:允许用户组youuser里面的用户执行sudo命令(需要输入密码).第三行:允许用户youuser执行sudo命令,并且在执行的时候不输入密码.第四行:允许用户组youuser里面的用户执行sudo命令,并且在执行的时候不输入密码.原创 2024-05-19 22:48:23 · 2864 阅读 · 0 评论 -
Linux技术资源分享:探索Linux软件包的宝藏:沙皇下载平台体验
沙皇下载是一个专为Linux用户设计的软件包下载平台。它提供了一个集中的资源库,让用户可以轻松地找到并下载所需的软件包。这个平台以其简洁的界面和丰富的资源库而受到用户的欢迎。Linux的世界是广阔和多元的,沙皇下载平台正是这样一个能够连接用户和软件资源的桥梁。如果你也是Linux的爱好者,我强烈推荐你访问沙皇下载,探索这个Linux软件包的宝藏。分享一个有趣的 学习链接:https://xxetb.xet.tech/s/HY8za。原创 2024-05-19 00:09:58 · 306 阅读 · 0 评论 -
Linux top命令详解:持续监听进程运行状态
ps 命令可以一次性给出当前系统中进程状态,但使用此方式得到的信息缺乏时效性,并且,如果管理员需要实时监控进程运行情况,就必须不停地执行 ps 命令,这显然是缺乏效率的。为此,Linux 提供了 top 命令。top 命令可以动态地持续监听进程地运行状态,与此同时,该命令还提供了一个交互界面,用户可以根据需要,人性化地定制自己的输出,进而更清楚地了进程的运行状态。原创 2024-05-18 23:59:30 · 1471 阅读 · 0 评论 -
Linux技术工具:bpftrace介绍
bpftrace基于eBPF技术实现轻量级、低性能开销的监控和分析,使用简单易懂的声明式语言进行脚本编写,可以快速创建和运行复杂的跟踪脚本。在进入事件中,它记录当前时间戳,并将其存储在名为start的关联数组中,该数组的键是正在进行的系统调用的名称。bpftrace使用简单易懂的声明式语言进行脚本编写,可以快速创建和运行非常复杂的跟踪脚本,以便捕获并分析各种有关进程、文件系统、网络、内存、CPU等方面的事件和统计信息。bpftrace还拥有丰富的文档和社区支持,并得到了广泛的应用和推广。原创 2024-05-18 23:46:03 · 1024 阅读 · 0 评论 -
通过ELRepo修改CentOS 7内核版本的详细步骤
在Linux系统中,内核版本决定了硬件支持和系统性能。有时,为了获得更好的性能或新特性,我们需要升级或更换内核。本文将详细说明如何在CentOS 7系统上通过ELRepo仓库安装更新的内核版本。原创 2024-05-18 23:44:21 · 1382 阅读 · 0 评论 -
selinux的安全策略可以影响ntp的方式
默认情况下,NTP使用UDP端口123进行通信,SELinux 策略需要允许NTP守护进程访问该端口。例如,可以创建一个策略,只允许受信任的NTP服务器与本地系统通信。:SELinux 提供了详细的日志和审计功能,可以帮助管理员监控和分析NTP守护进程的行为,以及检测任何潜在的安全问题。:SELinux 还可以限制NTP守护进程可以执行的操作,例如,是否可以打开套接字、是否可以读取或写入特定的设备等。:如果SELinux策略设置得太严格,可能会与NTP的正常操作发生冲突,导致NTP无法正常同步时间。原创 2024-05-18 21:41:29 · 390 阅读 · 0 评论 -
ntp协议为什么不能主动同步超两年的时钟差异?是由哪些配置决定的
NTP(网络时间协议)并不是不能主动同步超过两年的时钟差异,而是客户端可以配置一个选项来决定是否允许进行大的时间校正。这样做的原因是因为如果时间差异过大,可能是由于某一端的时间被故意手工设置用于调试,或者时钟出了故障,自动纠正可能会造成业务风险,因此建议手动检查1^。在进行NTP配置时,应谨慎操作,以确保不会引入错误的时间同步行为,特别是在处理大时间差异时。如果需要允许NTP进行大于默认限制的时间跳跃,应确保理解可能的风险,并在必要时进行适当的手动干预。:可以用于禁用特定的NTP功能或服务器。原创 2024-05-18 21:40:19 · 632 阅读 · 0 评论 -
当自身需要使用的 gcc版本 和Linux 默认版本 存在大版本差异时怎样处理
解决多版本gcc 编译器依赖冲突问题原创 2024-05-15 15:33:31 · 1334 阅读 · 0 评论 -
Linux下怎么快速部署MySQL服务,并使用
分享一个有趣的 学习链接:https://xxetb.xet.tech/s/HY8za。启动镜像,使用宿主机的共享网络,设定管理员账户密码是root。原创 2024-04-23 00:46:52 · 323 阅读 · 0 评论 -
Linux怎么安装czmq(物联网消息通讯轻量级消息队列)
分享一个有趣的 学习链接:https://xxetb.xet.tech/s/HY8za。原创 2024-04-23 00:43:48 · 485 阅读 · 3 评论 -
spdlog 日志库部分源码说明——日志格式设定,DIY你自己喜欢的调试信息,你能调试的远比你想象的还要丰富
前言最近,在使用spdlog日志库,但是不如自己使用std::cout 输出的方便,想要调整spdlog的格式化输出,但是网上缺少这块比较完整的资料,现在将这部分说明。本章节主要说明创建日志后怎样格式化输出,以及可以的格式化输出有哪些。准备#define LOG_CHARCK_HOUR 0 // 每日创建日志的小时值(24h)#define LOG_CHARCK_MINE 0 // 每日创建日志的分钟值(24h)std::shared_ptr<spdlog::logger> my_原创 2024-04-23 00:37:29 · 2231 阅读 · 2 评论 -
spdlog 日志库部分源码说明——让你可以自定义的指定自动切换日志时间
针对 网络上spdlog日志库目前存在的使用方式固定,不能发挥这个库本身应有价值的情况,这里对一些支持场景进行说明,以供初学者省去阅读源码的时间,直接上手使用。原创 2024-04-22 14:07:29 · 1071 阅读 · 0 评论 -
Linux怎样在使用ssh 链接时就指定gcc 的版本
这个命令是在启动一个新的bash shell,并在这个新的shell中启用devtoolset-8。如果你在.bashrc或者.bash_profile等bash启动脚本中写了这个命令,那么每次新开一个bash shell的时候,都会执行这个命令,从而导致循环。检查你的启动脚本,比如.bashrc或者.bash_profile,看看是否有这个命令,如果有,注释掉或者删除。如果你只是想临时启用devtoolset-8,你可以直接在命令行中执行这个命令,而不是写在启动脚本中。原创 2024-04-22 14:05:58 · 545 阅读 · 1 评论 -
Liunx怎么安装spdlog(这是用来管理日志部分)
怎么下载安装包,请参见如何从github上下载对应安装包。(其实就是从GitHub上spdlog 的仓库下载就好)分享一个有趣的 学习链接:https://xxetb.xet.tech/s/HY8za。这里介绍怎样安装spdlog这个日志管理使用的库。原创 2024-04-22 14:05:15 · 481 阅读 · 0 评论 -
Linux - 记录问题:怎么通过安装包的方式安装gRPC
当docker 构建环境不能链接到github 的时候,就可以使用本地构建的方式 完成对应服务的构建需求。原创 2023-12-26 21:59:47 · 426 阅读 · 0 评论 -
Linux - 记录问题:Ubuntu查看文件夹大小
选项表示"human-readable",它将以易于阅读的格式(例如KB,MB,GB)显示大小。选项表示"human-readable",它将以易于阅读的格式(例如KB,MB,GB)显示大小。选项表示"total",它将显示指定目录的总大小,以及所有单独文件和子目录的大小。选项表示"summary",它将只给出总计的大小,而不是每个子目录的大小。选项表示"summary",它将只给出总计的大小,而不是每个子目录的大小。选项表示"all",它将显示指定目录中所有文件和子目录的大小。原创 2023-12-26 21:47:22 · 2007 阅读 · 0 评论 -
gRPC编译时,请注意使用make clean 清理后再重复编译
清理,而是新建了一个目录进行处理,原本想法是如果编译出现什么错误,可以使用原本正确的文件进行替换,但是原本的静态库依赖的相关库文件,已经被修改了。导致了一系列的错误。在 gRPC 编译时,一开始使用了makefile,由于缺少经验,找了半天的静态库链接,最后觉得太麻烦,搞个动态库让它自己解决库依赖好了。如果你出现了如 alist 库找不到这样的问题,或者在构建 gRPC 时在百分之十时显示构建错误。解决方式,我是使用了快照恢复,如果你没有快照的话,建议手动清理相关库文件。但是在再次编译的时候,并没有使用。原创 2023-11-19 22:18:50 · 372 阅读 · 0 评论 -
Linux 用户使用sudo时 显示xxx is not in the sudoers file.This incident will be reported.的解决方法
1.切换到root用户下,su -3.编辑sudoers文件找到这行L,在他下面添加(这里的xxx是你的用户名)ps:这里说下你可以sudoers添加下面四行中任意一条第一行:允许用户youuser执行sudo命令(需要输入密码).第二行:允许用户组youuser里面的用户执行sudo命令(需要输入密码).第三行:允许用户youuser执行sudo命令,并且在执行的时候不输入密码.第四行:允许用户组youuser里面的用户执行sudo命令,并且在执行的时候不输入密码.原创 2023-11-18 23:34:36 · 2293 阅读 · 0 评论