UOS&Deepin使用X11VNC和novnc远程控制

前置安装:
sudo apt install x11vnc novnc
x11vnc部分:

#设置vnc密码(可选)
x11vnc -storepasswd
#密码文件默认放在当前用户主目录下 ~/.vnc/passwd

#启动x11vnc
x11vnc -rfbauth ~/.vnc/passwd -forever -shared

PS:
-rfbauth设置密码文件路径(不设置可以删除该参数)
-forever 必须加否则每次断开连接都要重启服务。
-shared 允许多用户同时登录,不加只能第一个登陆的进桌面,第二个用户必须等前面的断开才能继续登录。

novnc部分:

#启动novnc服务
/usr/share/novnc/utils/launch.sh

PS:默认监听6080端口进行web访问,默认连接到vnc端口5900。
/usr/share/novnc/utils/launch.sh -h 可以查看帮助(其它发行版可以直接执行novnc启动该服务)

最终效果如下:

wsl2桥接网卡

1.开启Hyper-V
2.Set-VMSwitch WSL -NetAdapterName WLAN

其中WLAN根据你要桥接的网卡修改。
PS:该命令需要先开启Hyper-V。

经测试发现完全没必要设置成桥接模式,直接添加新IP就行了

3.进入WSL2里添加新IP
sudo ip addr add 192.168.1.178/24 dev eth0

该命令会给eth0网卡添加一个新ip和路由,根据你桥接的网络段修改,/24相当于255.255.255.0的掩码,具体百度CIDR格式。
4.现在在wsl2里ping 网关地址测试是否连通。

屏蔽cloudflare的ipv6网段,阻止chatgpt识别ipv6地址

cloudflare官方IP信息地址:

https://www.cloudflare.com/ips-v4

https://www.cloudflare.com/ips-v6

#创建一个新的iptables链
ip6tables -N BLOCK_IPV6
#开始BAN掉查询到的IPV6网段
ip6tables -A BLOCK_IPV6 -s 2400:cb00::/32 -j DROP
ip6tables -A BLOCK_IPV6 -s 2606:4700::/32 -j DROP
ip6tables -A BLOCK_IPV6 -s 2803:f800::/32 -j DROP
ip6tables -A BLOCK_IPV6 -s 2405:b500::/32 -j DROP
ip6tables -A BLOCK_IPV6 -s 2405:8100::/32 -j DROP
ip6tables -A BLOCK_IPV6 -s 2a06:98c0::/29 -j DROP
ip6tables -A BLOCK_IPV6 -s 2c0f:f248::/32 -j DROP
#启用规则,将入站&出站都应用上
ip6tables -I INPUT -j BLOCK_IPV6
ip6tables -I OUTPUT -j BLOCK_IPV6

现在访问https://chat.openai.com 不再显示封锁的IPV6了。

配置zram

参考原文:https://segmentfault.com/a/1190000041578292

配置开机加载zram模块

echo 'zram' | sudo tee /etc/modules-load.d/zram.conf

配置udev自动创建4G大小的zram设备

PS:可以自己改成其它比如256K 512M 1G

echo 'KERNEL=="zram0",ATTR{disksize}="4G",TAG+="systemd"' | sudo tee /etc/udev/rules.d/99-zram.rules

配置自动设置为SWAP交换分区配置自动设置为SWAP交换分区

cat << EOF | sudo tee /etc/systemd/system/zram.service
[Unit]
Description=ZRAM
BindsTo=dev-zram0.device
After=dev-zram0.device

[Service]
Type=oneshot
RemainAfterExit=true
ExecStartPre=/sbin/mkswap /dev/zram0
ExecStart=/sbin/swapon -p 2 /dev/zram0
ExecStop=/sbin/swapoff /dev/zram0

[Install]
WantedBy=multi-user.target
EOF

设置为开机自启

sudo systemctl enable zram.service

正经人谁写日记啊

来源于由姜文编剧和导演的电影《邪不压正》,原对话如下:
“那日本人靠不住,我靠谁啊?老蒋?”
“更靠不住。”
“一个写日记的人。”
“正经人谁写日记啊。”
“是啊。”“你写日记吗。”
“我不写。”
“你写日记吗?”
“谁能把心里话写日记里?”
“写出来的哪能叫心里话?”
“下贱。”
“下贱。”

sudo 切换到root用户保留环境变量的方法

方法一:

sudo PATH=$PATH bash
可以用alias简化比如:
alias sudoi="sudo PATH=$PATH bash"写入到.bashrc
错误示范:假设在master用户配置了go的环境变量sudo PATH=$PATH go 这样直接执行是不行的,需要先进去bash

方法二:

/etc/sudoers中添加以下内容:
Defaults !env_reset

PS:sudo -E 也可以保留环境变量,出于安全考虑PATH变量除外

驰为Hi10GO_Ubuntu重力屏幕旋转反向修正

udevadm info /dev/iio\:device0 #查询传感器型号

我的传感器型号是MXC6655

创建/etc/udev/hwdb.d/60-sensor.hwdb文件写入下面内容

sensor:modalias:*
  ACCEL_MOUNT_MATRIX=0, 0, 1; 0, -1, 0; 0, 0, 1

直接粘贴执行可用

cat << EOF | sudo tee /etc/udev/hwdb.d/60-sensor.hwdb
sensor:modalias:*
  ACCEL_MOUNT_MATRIX=0, 0, 1; 0, -1, 0; 0, 0, 1
EOF

sudo systemd-hwdb update