GoLand 切换代码跳转时的默认系统

由于 go 原生支持了交叉编译,且允许自由的通过编译参数来做到多系统分别编译不同的代码,因此很多项目都实用这种方式来屏蔽跨系统的 API 差异。但是如果我们在非目标系统进行开发,如在 Windows 或 macOS 开发 Linux 程序,就会出现代码跳转的时候无法跳转到正确的文件。

这是因为 GoLand 默认使用我们开发环境的信息来搜索和跳转,因此如果在 Windows 开发,就会跳转到对应的 Windows 的实现。这时候,我们可以通过修改配置,来修改这一跳转行为。具体需要修改的配置为:

Preferences -> Go -> Build Tags & Vendoring
Build Tags & Vendoring

或者使用双击 Shift 输入 Build Tags 来快速定位到这个配置。

在这个配置里,将 OS 和 Arch (更多…)

安全的调试容器内的进程

通常来说,使用 gdb 等工具调试测试或生产环境的进程,是非常好的查找 Bug 的方式。但是当我们步入容器时代后,使用 gdb 工具却会遇到一些麻烦。

当我们进入容器内,尝试使用 gdb attach 的方式开始调试已运行的进程时,会得到这样的报错:

Attaching to process 123
ptrace: Operation not permitted.

通过简单的搜索我们可以发现,这是因为容器内为了安全,默认没有给 SYS_PTRACE 权限的原因。于是,很多教程告诉我们,用这个命令启动容器解决这个问题:

docker run xxx --cap-add=SYS_PTRACE

然而,在生产环境授予容器 SYS_PTRACE 权限是很危险的,有可能造成容器逃逸。因此,如果需要启用该权限,建议慎重考虑。

那么,有没有办法避开这个权限呢?由于容器本身其实就是主机上的一个进程,所以我们自然会想到,能否直接从主机找到对应的进程,然后在主机上执行 (更多…)

腾讯云云函数 SCF 与轻量服务器互通指南

去年末腾讯云轻量服务器推出了内网互联功能,但是好像有很多小伙伴不太清楚用法。因此写本文给大家一些使用思路。

本文基于官方文档 https://cloud.tencent.com/document/product/1207/56847

注意事项

  1. 轻量内网互联功能、云联网及 VPC 等功能本身不收费,但若本地互联带宽超过 5Gbps 或需要跨地域互联,则需要收取相关带宽费用。因此本文仅做同地域互联展示
  2. 由于轻量的内网 IP 无法自定义,所以建议先购买好需要的轻量服务,再规划内网其他服务(如 SCF、MySQL 等)的网段,以避免内网 IP 冲突
  3. 若轻量云 VPC 的 CIDR 与云函数 VPC 的 CIDR 有重合,可能带来一些奇怪的访问不通的问题,建议在网段规划时直接避开重合段
  4. 云联网只是打通网络,实际端口访问还是受到防火墙限制。若出现访问不通,请检查轻量服务器的防火墙设置:https://cloud.tencent.com/document/product/1207/44577
  5. 已有云函数可以通过编辑函数配置加入 (更多…)

Linux 下查看指定进程环境变量信息

Linux 会为每个进程生成一个目录,保存了进程相关的大量信息。具体位置在:

/proc/${pid}

一般有如下文件:

total 0
-rw-r--r-- 1 root root 0 Dec 31 00:00 autogroup
-r-------- 1 root root 0 Dec 31 00:00 auxv
-r--r--r-- 1 root root 0 Dec 31 00:00 cgroup
--w------- 1 root root 0 Dec 31 00:00 clear_refs
-r--r--r-- 1 root root 0 Dec 31 00:00 cmdline
-rw-r--r-- 1 root root 0 Dec 31 00:00 comm
-rw-r--r-- 1 root root 0 Dec 31 00:00 coredump_filter
-r--r--r-- (更多…)

AWS Lightsail 修改 DB 参数

AWS 推出的 Lightsail Database 是目前比较实惠的托管 DB 方案。不过相对来说,Lightsail 的控制面板功能较少,很多参数无法修改。经过搜索发现,其实我们有很多参数可以调,只是需要通过命令行的方式来调整。

准备工作

安装 aws-cli 工具

https://aws.amazon.com/cli/

https://lightsail.aws.amazon.com/ls/docs/en_us/articles/lightsail-how-to-set-up-and-configure-aws-cli

Linux:

sudo apt-get install awscli

MacOS:

brew install awscli

Python(通用):

pip install awscli

设置 Access Key

https://lightsail.aws.amazon.com/ls/docs/en_us/articles/lightsail-how-to-set-up-access-keys-to-use-sdk-api-cli

先在 (更多…)

远程桌面工具对比

由于之前很好用的 TeamView 最近开始大力检测商业用途,导致很多个人用户几乎完全无法使用,因此急需找一个替代品来使用。

通过小众软件的文章推荐,大致看到了两个不错的选择:AnyDesk 和 Remote Utilities。至于向日葵之类需要注册、登录、安装的国内软件不在考虑范围内。

于是开始试用 AnyDesk 和 Remote Utilities,下面是一个简单的对比。

  1. 从配置上来说,两款软件的配置项都很相似。相对来说 AnyDesk 的配置界面更亲民,组织更合理。但是配置项相对较少;
  2. 从画质上来说,AnyDesk 更胜一筹。相对来说颜色失真更少,帧率更高。不过这里没有使用工具测量,纯人眼感受;
  3. 从系统资源占用来看,二者相差不大。在同一台机器同网络同分辨率的环境下,基本 CPU 和 内存占用都差不多;
  4. 从网络流量来看,AnyDesk 远超 Remote (更多…)

Epic Store 购买攻略

垃圾 Epic Store!

垃圾 Epic Store!

垃圾 Epic Store!

好了,说正事。

由于某些众所周知的原因,我们只能想办法在 Epic Store 上购买一些想玩的大作。但是作为一个新兴的平台,付款之路坑实在太多,在这记录一下。

TL;DR

对没有国外信用卡的人来说,中国发行的 Visa/MasterCard/AE 等信用卡,配上账号所在区域的 PP 账号,就可以支付成功。

下面来详细说明:

  1. 先进 Account 看你的账户所在区域
  2. IP 跟账户的区域无关,只要 IP 不是大陆的,账户区域不是中国就可以
  3. 在购买成功之前,账号区域可以修改。如果已经不可修改,找客服吧
  4. 中国大陆发行的信用卡直接被拒绝
  5. 账户所在区域的 PP 关联大陆卡之后,可以成功

新版 Mac U 盘重装系统的注意事项

由于苹果在新版的 Mac 中内置了 T2 安全芯片,因此当我们在下面这些版本的 Mac 上尝试使用 U 盘重装系统的时候,需要额外注意。

本文章适用的 Mac 型号包括:

主要注意的核心点是:

  1. 不要先格式化硬盘
  2. 不要先删除原系统中的管理员用户
  3. 切记先进 Recovery 模式修改安全芯片选项,再开始重装
  4. 最好先升级到最新的系统再重装

说说原因:

  1. 如果先格式化硬盘,Recovery 模式无法找到有效的管理员账号,不允许修改 T2 芯片的选项
  2. 同 1,删除所有管理员账户会导致无法修改选项
  3. (更多…)

华为 EMUI 8.0 免登录账号开启 ADB 方法

这两天拿到一台新的华为 Mate 10,准备自己折腾一下。但是在打开开发者选项,准备开 ADB 的时候,却发现必须要我登录华为账号才能开启。这就很烦人了,我并不想登录。于是搜了一下解决方案,发现网上说到这个事情的不多,而且步骤不太正确。这里记录一下正确的方法。

首先贴官方回复:

打开USB调试开关需要先登录华为账号问题现象:
在没有登录华为账号的情况下,打开开发者选项中的USB调试开关时,会提示请先登录华为账号。
在已登录华为账号的情况下,可以正常打开开发者选项中的USB调试开关。

问题原因:
华为公司收到了部分用户反馈第三方应用使用过程中遇到稳定性、推送广告、后台耗电等问题,经过调查发现,造成这些问题的原因是部分三方应用被通过USB调试端口自动安装到手机。为了使您能够更流畅、更放心的使用手机,保护您的隐私以及合法权益,避免以上问题出现,华为公司添加了对USB调试开关的身份确认,打开USB调试开关时需要登录华为账号,感谢您的理解与支持!

非华为手机出厂预装的第三方应用会有以下危害:
1.使用非华为手机出厂预装的第三方应用容易引起软件卡顿、手机发热、耗电快等问题,影响您对于手机的体验感知度;
2.使用非华为手机出厂预装的第三方应用,可能会在未经您允许情况下,向您推送一些广告。

解决方案(仅适用于网点维修):
维修工具使用注意事项
ComPartner工具的使用,注意以下事项:

建议方案:使用HDB连接(HDB不受USB调试管控影响,无需输入华为帐号):
在“设置”->“安全和隐私”->“更多安全设置”界面,确认已打开“允许HiSuite通过HDB连接设备”开关按钮;

连接USB数据线,选择“传输文件”选项。

备用方案:EMUI8.1、EMUI8.2版本也可以使用ADB连接
在拨号界面输入*#*#2846579#*#*进入工程模式;
选择“1.后台设置”->“2.USB端口设置”->“生产模式”,系统自动打开USB端口。

备注:
高维和生产环境已做了针对性适配,可以直接打开USB调试;
华为手机助手(HiSuite)使用不受影响;
Root过的手机可以直接打开USB调试;
ComPartner工具版本号为5.1.21.02,通过以上方式打开,已验证没有问题。

注意最下面的备用方案,虽然说是 (更多…)

Kapacitor 使用 Proxy 连接小电报 API

由于众所周知的原因,小电报的 Bot API 在某些地方是完全无法访问的。

那么,这导致我们最好用,最快捷的告警方式被掐死了。

于是研究了一下,发现官方有一个回复:

https://community.influxdata.com/t/how-to-set-proxy-for-telegram-and-smtp/3250

The Kapacitor 你懂的 agent uses the golang HTTP client, so you can set that with the environment variables $http_proxy (or $https_proxy). As for SMTP, we don’t currently have logic in place for that, but that sounds like a great feature (更多…)