在日常的软件开发和服务器运维中,我们经常需要在不同的目录之间复制或同步文件。由于许多开发人员和运维人员日常主要在 Windows 或 macOS 图形界面下工作,很容易将一些“直觉”带入到 Linux 终端中。然而,正是这些看似理所当然的直觉,往往会酿成难以挽回的灾难。 今天就来记录并分享一个关于 Linux 下 cp 命令与 Windows 复制习惯冲突的经典“踩坑”案例,并提供使用更专业的 rsync 实现“Windows 式”文件夹内容合并的完美解决方案。 一、 踩坑前因后果与痛点 1. 习惯性的思维陷阱 在…

2026-07-07 0条评论 97点热度 0人点赞 admin 阅读全文

1. 现象描述 在 Linux 服务器上使用 Supervisor 管理进程时,很多同学会遇到这样一个诡异的问题: 程序运行初期一切正常,但运行一段时间(几天或几周)后,或者在一次系统维护后,执行 supervisorctl 命令时突然报错: http://localhost:9001 refused connection 或 error: <class 'FileNotFoundError'>, [Errno 2] No such file or directory: file: /usr/lib/p…

2026-05-10 0条评论 367点热度 0人点赞 admin 阅读全文

背景 服务:Spring AI MCP Server,SSE 端点 /sse,消息端点 /mcp/message 环境:AWS EC2,Nginx 反代到本地 8049 端口 现象: 本机直连:curl -N -H "Accept: text/event-stream" http://localhost:8049/sse 正常 外部访问:curl -N -H "Accept: text/event-stream" https://ai.example.com/sse 连接建立后一直“卡住”,无事件推送 问题原因定位…

2026-03-03 0条评论 773点热度 0人点赞 admin 阅读全文

Linux服务器 上 firewalld 端口转发不生效的解决方案 问题描述 在 AWS EC2 服务器上使用 firewalld 配置端口转发时,遇到了一个令人困惑的问题: 需求:将本机 5001 端口的流量转发到另一台服务器 1.2.3.4 的 5001 端口 现象:从外部 telnet 到 EC2 的 5001 端口失败,但直接 telnet 目标服务器 1.2.3.4:5001 是通的 配置:firewalld 的规则看起来完全正确,端口也已开放,masquerade 也已启用 排查过程 1. 检查 fir…

2026-02-11 0条评论 702点热度 0人点赞 admin 阅读全文

问题背景 在国内服务器上安装 Docker CE 时,许多运维人员会选择使用阿里云提供的镜像源以加快下载速度。然而,在某些 RHEL 系发行版上(如 Amazon Linux 2023、AlibabaCloud Linux 3 等),按照官方文档操作时会遇到 404 错误,导致安装失败。 问题复现 按照阿里云官方文档(https://developer.aliyun.com/mirror/docker-ce)的步骤操作: bash sudo dnf install -y dnf-utils sudo yum-con…

2025-11-01 0条评论 1029点热度 0人点赞 admin 阅读全文

问题描述 作为开发者,我们经常会遇到这样的场景:在远程 Linux 服务器上使用 Vim 编辑文件,辛辛苦苦修改了大量内容,准备保存时却发现文件是只读的,无法保存。这种情况通常发生在: 编辑系统配置文件(如 /etc/nginx/nginx.conf) 修改其他用户拥有的文件 编辑权限受限的日志文件 传统的做法是退出 Vim,然后用 sudo vim /path/to/file 重新打开,但这意味着你刚才的所有编辑都白费了。虽然可以养成使用 sudo vim 的习惯,但这并不符合很多人的工作流程,而且每次都要 su…

2025-10-24 0条评论 1089点热度 0人点赞 admin 阅读全文

问题场景 在Linux系统中,我们经常遇到这样的尴尬情况: 使用普通用户身份打开vim编辑系统文件 花费大量时间修改内容 准备保存时发现没有写入权限 面临丢失所有修改内容的风险 bash # 典型的错误操作 vim /etc/hosts # 编辑了很多内容后... :w # E45: 'readonly' option is set (add ! to override) 解决方案::w !sudo tee % 命令详解 vim :w !sudo tee % 让我们拆解这个命令: :w ! - 将缓冲区内容写入到外…

2025-09-05 0条评论 1987点热度 0人点赞 admin 阅读全文

问题描述 在 MySQL 8.0.32 版本中,当使用 UNION 操作将多个 SELECT 语句的结果合并,并在 WHERE 条件中使用中文字符进行过滤时,可能会出现无法查询到预期结果的问题。 现象 比如一个视图是这样定义的: select col1, col2 from table_a union select col1, col2 from table_b; 然后查询视图(假设视图名称为view_a):select * form view_a 是有数据的且包含col=中文1'的数据,但是select * fr…

2025-01-24 0条评论 2173点热度 0人点赞 admin 阅读全文

一台小服务器上安装了docker,跑了几个container,没过一阵子发现磁盘空间不够了,查了一下,主要是docker安装了gitlab-ce,这个容器产生的日志特别多,一天能有几百MB,在这个文件夹下: /var/lib/docker/containers/7daa91c2495dec29ebac0ba77d1b4bf9e665e20f10f504ed02dbfaea94c3d7b5/7daa91c2495dec29ebac0ba77d1b4bf9e665e20f10f504ed02dbfaea94c3d7b5…

2024-09-16 0条评论 2039点热度 0人点赞 admin 阅读全文

用MySQL的shell创建了一个MySQL账号: CREATE USER 'root'@'%' IDENTIFIED BY 'some-secret-pw'; GRANT ALL ON *.* TO 'root'@'%'; flush privileges; 但是登录的时候报错,如下: [root@git mysql]# mysql -uroot -h172.17.0.8 -p Enter password: ERROR 2059 (HY000): Authentication plugin 'caching_s…

2024-08-16 0条评论 1554点热度 0人点赞 admin 阅读全文
1234525