本文首发于:https://blog.frytea.com/archives/526/
近期在 Fedora 33 系统上总是无法访问 gitee 私有库,得到以下报错:
$ git clone git@gitee.com:songtianlun/workflow.git
正克隆到 'workflow'...
git@gitee.com: Permission denied (publickey).
fatal: 无法读取远程仓库。
请确认您有正确的访问权限并且仓库存在。 使用 ssh -v git@gitee.com 命令检查得到以下输出:
...
本文首发于:https://blog.frytea.com/archives/525/
在进行网络设备调试时常常会使用到多 IP ,Linux 上可以很方便的为物理网卡配置子接口解决,但是在 Windows 上如果物理网卡必须使用 DHCP 就无法再配置多 IP 了,只能暂时的使用 USB 转网卡解决。近期突然灵机一动,能不能使用 Windows 10 天然支持的 WSL 来解决这个问题,经过本人实测,是可以的,方法也很简单。
...
StarUML 是一个开源的 UML 工具列表软件,它遵守 GNU GPL 的一个修订版。StarUML 项目宣称的目标是代替大型的商业 UML 工具软件,如 IBM 的 Rational Rose , Borland 公司的 Together 。StarUML 支持 UML2.0 定义的大多数图,是一款跨平台且轻量高效的现代 UML 绘图工具。
...
由于经常使用到 Windows 下的 CMD 终端进行各种操作,特别是集成了 Ubuntu 子系统之后,在 Windows 平台上进行 C 开发更方便了。为了呼出 WSL 子系统,我习惯在 CMD 下进行,可默认皮肤不够美观,为了让自己心情愉悦,检索了一番换肤方法,并在此简单记录。
...
最近给 Win10 电脑加装了一个无线网卡,想要开热点使用,但是发现手机连上之后显示无法联网,在这里记录解决办法。
首先查看一下当前电脑上网使用的网卡是哪一张,我当前使用的是 Hyper-V 虚拟的一个桥接网卡 vEthernet (NetBridge) 开启 wifi 热点后新增的网卡是 本地连接* 12 。
...
以下几个示例带领你快速了解nmap的基本扫描方法,更多详情请查阅nmap手册。
1、Nmap 简单扫描 $ nmap <target ip address> $ nmap 192.168.41.41 直接指定需要扫描的主机IP开始扫描,返回详细描述。
...
Unix domain socket 或者 IPC socket是一种终端,可以使同一台操作系统上的两个或多个进程进行数据通信。提供 UDP 和 TCP 两种通信机制。
因为一些原因,项目现有软件架构采用的都是 IPC sockte 中的 TCP 通信机制,虽然保证了通信的可靠性,但近期需要对该程序进行热迁移(基于 criu ),有连接的 IPC 套接字状态很难被保存和恢复,而 无连接的 UDP 只需要保证服务端先冻结、先恢复即可实现程序整体状态迁移,因此写下本文,记录迁移过程,最后提供示例程序,可以自行通过 BCompare 等文本对比工具对比差异。
...
常见的github加速方法如修改 hosts 文件、魔法上网、设置 proxy 等方法在此不在赘述,本文主要介绍在不进行多余网络配置的情况下,直接使用提供了github国内镜像服务的网站进行github各种资源拉取加速,在这里向各位提供github国内镜像服务的大佬们致敬。
...
在软件中,术语共享内存指可被多个进程存取的内存,一个进程是一段程序的单个运行实例。在这种情况下,共享内存被用作进程间的通讯。——WikiPedia
...
版本限制 Docker: 17.06.0-ce criu: 3.12 kernal: 3.10.0-957.el7.x86_64 || 5.10.2-1.el7.elrepo.x86_64 (Optional) os: CentOS Linux release 7.9.2009 (Core) (Optional) 实测在该环境下,容器热迁移可用,热迁移成功与否与 docker 和 criu 版本强相关。
环境部署 # Docker 安装 $ sudo yum install -y yum-utils $ sudo yum-config-manager \ --add-repo \ https://download.docker.com/linux/centos/docker-ce.repo $ sudo yum list docker-ce --showduplicates | sort -r $ sudo yum install docker-ce-17.06.0.ce $ sudo systemctl start docker # 启动Docker实验特征 vim **/etc/docker/daemon.json + { "experimental": true }** # criu 安装 $ sudo yum install criu -y # Go安装(可选) wget https://golang.org/dl/go1.15.6.linux-amd64.tar.gz tar -C /usr/local -xzf go1.15.6.linux-amd64.tar.gz vim /etc/profile + export PATH=$PATH:/usr/local/go/bin source /etc/profile 热迁移示例 # On the host $ docker run -d --name looper2 --security-opt seccomp:unconfined busybox \ /bin/sh -c 'i=0; while true; do echo $i; i=$(expr $i + 1); sleep 1; done' # wait a few seconds to give the container an opportunity to print a few lines, then $ docker checkpoint create looper2 checkpoint2 # check your container & print log file $ docker logs looper2 # On the client $ docker create --name looper-clone --security-opt seccomp:unconfined busybox \ /bin/sh -c 'i=0; while true; do echo $i; i=$(expr $i + 1); sleep 1; done' $ docker start --checkpoint=checkpoint2 looper-clone # check your container $ docekr ps $ docker logs looper-clone 以上步骤将容器 looper2 的状态迁移到 looper-clone ,可实现当前容器、跨容器的状态迁移,甚至可以实现跨主机的迁移,只需将该目录 /var/lib/docker/{docker id}/checnkpoints/ 下面与检查点同名的文件夹迁移即可。
...