vscode C++ 扩展clangd介绍

概要

clangd是一个基于clang的C++语言服务器, 它提供了代码补全、跳转、重构等功能。它是一个独立的项目,不是clang的一部分。它的目标是提供一个快速、可靠的C++语言服务器,以便于IDE和其他开发工具使用。

项目主页: https://clangd.llvm.org/

安装

vscode扩展商店搜索clangd,安装即可。
注意启用后,需要将原有的微软的C/C++扩展进行取消

阅读更多

Wirewhark利用ssh/nc实现抓取Linux的网络包

概述

Wireshark是一个开源的网络数据包分析器,可以实时的从网络接口捕获数据包并分析。他支持多种协议类型,是最为流行的数据包分析器。

Wireshark支持Mac和Windows版本,但是对于Linux服务器上的包,以往只能通过服务器上tcpdump后,去离线分析数据包,较为不便。

之前的文章讲过利用rpcapd实现远程抓包https://blogs.92ac.cn/2024/08/06/rpcapd/, 这种方式要求在服务器上额外编译安装rpcapd。

这里再介绍其他的几种方式。

阅读更多

使用conda和poetry来管理虚拟环境

TL;DR

衔接上文
Python包管理工具poetry介绍

里面提到使用pyenv管理python版本

pyenv管理python版本的主要问题是,需要进行编译安装,颇为麻烦
特别是对于某些不具备编译条件的、缺少系统管理员权限去安装缺失依赖的环境更是如此。

而conda作为常用与算法领域的虚拟环境管理工具,他可以更为方便的安装管理python版本,但是其依赖管理能力弱于poetry,且其是是独立与pip的仓库源,不像poety可以直接使用pip仓库源

阅读更多

使用certbot自动申请ssl证书

1. 安装certbot

sudo apt-get install certbot
# 安装nginx插件
sudo apt-get install python3-certbot-nginx

2. 申请证书

sudo certbot --nginx

按照提示输入邮箱地址,同意服务条款,选择需要申请证书的域名,然后就可以申请成功了。

阅读更多

k8s集群内docker镜像代理自动拉取工具

项目地址: https://github.com/deepwzh/k8s-auto-docker-proxy/blob/dev/imgs/image.png

内网集群内部署应用时,由于众所周知的原因,镜像无法拉取到docker镜像,或者拉取速度很慢。

以往尝试过的解决方案:

  1. 预先通过工具,在每个节点提前拉取好镜像
  2. 比第一条更进一步,通过其他方式将docker镜像拉取到内网或者加速镜像仓库,批量修改yaml或者chart中的镜像地址为内网或者加速镜像仓库
  3. 每个k8s节点上设置代理,通过代理去拉取镜像

以上的解决方案,要么需要额外的运维操作比较麻烦(比如提前脚本拉取,推送仓库啥的),要么是比较有侵入性(比如设置代理,代理挂掉也会影响其他正常的镜像拉取)

阅读更多

使用proxychain去代理tcp流量

概述

问题起因是git clone 代码的时候,发现会卡住拉取不下来

因此边使用telnet工具去测试一下端口是否是通的

telnet github.com 22

如果端口通的,应该会如下图展示
alt text
否则端口是不通的。

阅读更多

Wirewhark利用rpcapd实现抓取Linux的网络包

概述

Wireshark是一个开源的网络数据包分析器,可以实时的从网络接口捕获数据包并分析。他支持多种协议类型,是最为流行的数据包分析器。

Wireshark支持Mac和Windows版本,但是对于Linux服务器上的包,以往只能通过服务器上tcpdump后,去离线分析数据包,较为不便。

这次要推荐的一个工具叫做rpcapd, 他现是libpcap的一部分,可以用于实时远程抓包。

安装

阅读更多