暴力删除registry镜像文件
直接进入这个目录删除仓库 /HHD4/docker/docker_hub/docker/registry/v2/repositories
进入docker实例执行垃圾回收 /bin/registry garbage-collect /etc/docker/registry/config.yml
重启registry
RawMessage Scan&Value
json.RawMessage
以[]byte
形式存储json数据,但在父结构体marshal和unmarshal时不会重复序列化,仅仅将数据复制到新json字符串中
通过继承Scanner和Valuer实现结构体变量写入和读出数据库
使用i3的时候终端总是却一些字体,比如FontAwesome, 调了半天也没法解决, 无奈只能将所有用到的字体合并成一个字体
使用FontCreator打开要合并的字体文件
接收端
首先我们有这样一段测试代码来接收 POST 请求,并返回其接收到的字段信息。
1package main
2
3import (
4 "fmt"
5 "log"
6 "net/http"
7)
8
9func urlencodedHandler(w http.ResponseWriter, r *http.Request) {
10 err := r.ParseForm()
11 if err != nil {
12 log.Printf("r.ParseForm(): %v", err)
13 return
14 }
15
16 result := ""
17 for k, v := range r.Form {
18 result += fmt.Sprintf("%s:%v\n", k, v)
19 }
20
21 fmt.Fprintf(w, result)
22}
23
24func multipartHandler(w http.ResponseWriter, r *http.Request) {
25 err := r.ParseMultipartForm(4 * 1024 * 1024)
26 if err != nil {
27 log.Printf("r.ParseForm(): %v", err)
28 return
29 }
30
31 result := ""
32 for k, v := range r.MultipartForm.Value {
33 result += fmt.Sprintf("%s:%v\n", k, v)
34 }
35
36 for k, v := range r.MultipartForm.File {
37 result += fmt.Sprintf("%s:%v\n", k, v)
38 }
39
40 fmt.Fprintf(w, result)
41}
42
43func main() {
44 http.HandleFunc("/urlencoded", urlencodedHandler)
45 http.HandleFunc("/multipart", multipartHandler)
46
47 log.Fatal(http.ListenAndServe(":8080", nil))
48}
发送 urlencoded 请求
urlencoded
主要用于纯文本请求,代码如下:
右键菜单改回Win10(展开)
1reg add "HKCU\Software\Classes\CLSID\{86ca1aa0-34aa-4e8b-a509-50c905bae2a2}\InprocServer32" /f /ve
2taskkill /f /im explorer.exe & start explorer.exe
右键菜单改回Win11(折叠)
1reg delete "HKCU\Software\Classes\CLSID\{86ca1aa0-34aa-4e8b-a509-50c905bae2a2}" /f
2taskkill /f /im explorer.exe & start explorer.exe
介绍
元素为[]byte
的队列的golang实现(适用于多线程环境下,当然单线程也能用
如果想更改队列的元素类型,请自行将queue [][]byte
中的[]byte
替换为其他类型,同时修改函数中的相关代码
https://github.com/tw93/Pake/tree/master
安装程序
1npm install pake-cli -g
安装依赖
1sudo apt install libwebkit2gtk-4.0-dev \
2 build-essential \
3 curl \
4 wget \
5 file \
6 libssl-dev \
7 libgtk-3-dev \
8 libayatana-appindicator3-dev \
9 librsvg2-dev
10# 安装rust
11curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
打包网站
Nvidia 驱动在Linux下, 必须安装 Xorg
查看显卡信息
1lspci -k | grep -EA3 'VGA|3D|Display'
2lspci | grep VGA
3lspci | grep -i nvidia
4# 查看指定显卡的详细信息用以下指令
5lspci -v -s 00:0f.0
6# Nvidia自带一个命令行工具可以查看显存的使用情况:
7nvidia-smi
8# Fan:显示风扇转速,数值在0到100%之间,是计算机的期望转速,如果计算机不是通过风扇冷却或者风扇坏了,显示出来就是N/A;
9# Temp:显卡内部的温度,单位是摄氏度;
10# Perf:表征性能状态,从P0到P12,P0表示最大性能,P12表示状态最小性能;
11# Pwr:能耗表示;
12# Bus-Id:涉及GPU总线的相关信息;
13# Disp.A:是Display Active的意思,表示GPU的显示是否初始化;
14# Memory Usage:显存的使用率;
15# Volatile GPU-Util:浮动的GPU利用率;
16# Compute M:计算模式;
17
18# 如果要周期性的输出显卡的使用情况,可以用watch指令实现
19watch -n 10 nvidia-smi
20
21# 检测显卡驱动是否正常
22sudo apt-get install hwinfo
23hwinfo --display
安装核显驱动
Intel 核显不需要单独安装驱动,系统自带
修改键盘重复频率和延迟
XServer startup options
As alternative to this tool, you can set defaults for the X Server at startup.
For the keyboard repeat rate:
/etc/X11/xinit/xserverrc
1X -ardelay 200 -arinterval 30 # (interval is 1000/rate_in_hz)
For this to configure, you need the privileges to edit X launch properties (probably in your login tool like lightdm).
XServer configuration file
XServer since version 21.1.0 supports the option AutoRepeat. Basically you need an xorg config section like this (the second value again 1000/rate_in_hz):
可以使用xset命令进行操作
1xset dpms force off # 关闭屏幕
2xset s 300 #设置屏保时间为300秒,时间单位为秒
3xset s 0 #关闭屏幕保护
4xset dpms 600 900 1200 # 三个数值分别为Standby、Suspend、Off,具体什么意思就不多说了,单位秒
5xset -dpms #关闭电源管理
6
7xset -q # 查看设置情况。
也可以编辑xorg.conf(或者在/etc/X11/xorg.conf.d/
添加.conf
结尾的配置文件),添加如下选项把xscreen saver直接关闭:
1# 安装PPTP客户端
2apt-get install pptp-linux
编辑配置文件 vim /etc/ppp/chap-secrets
1# Secrets for authentication using CHAP
2# client server secret IP addresses
3your_username PPTP your_password home.akvicor.com
在 /etc/ppp/peers/
下新建一个VPN配置文件,文件名就是VPN的名字 vim /etc/ppp/peers/PPTP