Submitted by admin on 2026, May 27, 8:53 AM
Window:
ctrl+b, C创建一个新的窗口(下方会出来)
ctrl+b, 0/1/2切换
ctrl+b, P上一个/N下一个
ctrl+b, & kill
Pane:
ctrl+b, %, 左右分割窗口
Ctrl+b," 上写分割窗口
Ctrl+b, 上下左右 切换这些窗口
Ctrl+b, X退出小串口
Ctrl+b, Z放大小窗口,再来一次恢复
ctrl+b, W可以监控所有窗口
这是 tmux 自带的滚动方案,无需任何配置,所有环境都能直接使用:
按 Prefix + [ 进入复制 / 滚动模式(此时终端底部会出现行号提示)
滚动操作:
逐行滚动:方向键 ↑/↓
整页翻页:PageUp/PageDown
Vi 模式:可用 k/j 逐行、Ctrl+u/Ctrl+d 半页翻页
Emacs 模式:可用 Ctrl+p/Ctrl+n 逐行滚动
退出滚动模式:按 q 即可回到正常终端交互模式
linux | 评论 :0
| Trackbacks :0
| 阅读 :327
Submitted by admin on 2026, May 8, 1:09 PM
apt install postgresql postgresql-contrib
sudo -u postgres psql
GRANT ALL PRIVILEGES ON DATABASE app_db TO app_user;
ALTER DATABASE app_db OWNER TO app_user;
CREATE DATABASE app_db OWNER app_user;
\l # 查看数据库及其所有者
\du # 列出所有数据库用户及其角色属性
连接到数据库:
\c mydatabase
列出当前数据库的所有表:
\dt
列出所有用户
\du
创建用户并设置密码
CREATE USER postgres WITH PASSWORD 'your_password';
3.8 修改指定用户的密码
ALTER USER username WITH PASSWORD 'new_password';
备份数据库并包含创建数据库命令:
pg_dump -U postgres -h localhost -p 5432 -F c -b -v -C -f /path/to/backup/aibox_cloud.backup mydatabase
参数解释:
pg_dump:用于备份 PostgreSQL 数据库的工具。
-U postgres:指定数据库用户名为 postgres。
-h localhost:指定数据库服务器的主机名为 localhost。
-p 5432:指定数据库服务器的端口号为 5432。
-F c:指定备份文件格式为自定义格式(custom)。这种格式支持压缩和并行恢复。
-b:包含大对象(blobs)在备份中。
-v:启用详细模式,显示备份过程中的详细信息(verbose)。
-C:在备份文件中包含创建数据库的命令(--create)。
-f /path/to/backup/aibox_cloud.backup:指定输出备份文件的路径和文件名为 /path/to/backup/aibox_cloud.backup。
mydatabase:要备份的数据库名。
5.恢复包含创建数据库命令的备份文件:
pg_restore -U postgres -h localhost -p 5432 -C -d postgres -v /path/to/backup/aibox_cloud.backup
参数解释:
pg_restore:用于恢复由 pg_dump 创建的备份文件的工具。
-U postgres:指定数据库用户名为 postgres。
-h localhost:指定数据库服务器的主机名为 localhost。
-p 5432:指定数据库服务器的端口号为 5432。
-C:在恢复过程中创建数据库。如果备份文件中包含了创建数据库的命令(--create)。
-d postgres:指定连接的目标数据库。在使用 -C 选项时,这个数据库仅用作连接,并在其中执行创建和恢复新数据库的操作。通常使用默认的 postgres 数据库。
-v:启用详细模式,显示恢复过程中的详细信息(verbose)。
/path/to/backup/aibox_cloud.backup:要恢复的备份文件的路径和文件名。
linux | 评论 :0
| Trackbacks :0
| 阅读 :366
Submitted by admin on 2026, April 16, 5:28 PM
systemctl list-unit-files --type=service --state=enabled
systemctl is-enabled name
linux | 评论 :0
| Trackbacks :0
| 阅读 :370
Submitted by admin on 2026, April 16, 5:18 PM
On Debian, iptables is a command-line utility for configuring packet filtering, NAT, and firewall rules. Since Debian 10 (Buster), the default backend is nftables via the iptables-nft compatibility layer, but you can still use the traditional syntax.
Installing iptables
If not already installed:
sudo apt update
sudo apt install iptables -y
You can check the current rules with:
sudo iptables -L
This lists the INPUT, FORWARD, and OUTPUT chains with their policies and rules .
Adding Rules
To allow incoming SSH traffic on port 22:
sudo iptables -A INPUT -i eth0 -p tcp --dport 22 -j ACCEPT
To allow HTTP/HTTPS:
sudo iptables -A INPUT -p tcp --dport 80 -j ACCEPT
sudo iptables -A INPUT -p tcp --dport 443 -j ACCEPT
To drop all other inbound traffic:
sudo iptables -A INPUT -j REJECT
sudo iptables -A FORWARD -j REJECT
You can view detailed rules with:
sudo iptables -L -n -v
Saving Rules Permanently
By default, iptables rules are lost after reboot. To persist them:
Using iptables-persistent package:
sudo apt install iptables-persistent
sudo sh -c '/sbin/iptables-save > /etc/iptables/rules.v4'
sudo sh -c '/sbin/ip6tables-save > /etc/iptables/rules.v6'
Ensure the service is enabled:
sudo systemctl enable netfilter-persistent.service
Manual restore on boot: Create /etc/network/if-pre-up.d/iptables:
#!/bin/sh
/sbin/iptables-restore < /etc/iptables.up.rules #/etc/iptables/rules.v4 可以注释不用也不影响
Make it executable:
sudo chmod +x /etc/network/if-pre-up.d/iptables
Switching Between nftables and Legacy
If you need legacy iptables instead of nftables backend:
sudo update-alternatives --set iptables /usr/sbin/iptables-legacy
Switch back to nftables:
sudo update-alternatives --set iptables /usr/sbin/iptables-nft
Tip: Always test new firewall rules in a separate SSH session to avoid locking yourself out.
linux | 评论 :0
| Trackbacks :0
| 阅读 :388
Submitted by admin on 2026, April 16, 4:23 PM
一、编辑/etc/vim/vimrc.tiny
由于/etc/vim/vimrc.tiny的拥有者是root用户,所以要在root的权限下对这个文件进行修改。方法很简单:可以输入命令“su”,然后键入密码获得root权限,然后对文件进行修改;或者输入命令“sudo vi/etc/vim/vimrc.tiny”,输入密码后直接对文件进行编辑。
至于编辑的内容也是超级简单:vimrc.tiny文件中的倒数第二句话是“set compatible”,
将“compatible”改为“nocompatible”,这样非兼容模式就可以解决方向键变ABCD的问题了。
二、set backspace=2
那么接下来要解决Backspace键的问题也非常简单,就在刚才那句话的后面加一句:
set backspace=2
即:
set nocompatible
set backspace=2
ls时目录文件均没有颜色
~/.bashrc
alias ls='ls --color=auto'
vim /etc/vim/vimrc
取消“syntax on”的注释
或
cat .vimrc
syntax on
colorscheme desert
没有主题或颜色或没有vim,apt install vim
linux | 评论 :0
| Trackbacks :0
| 阅读 :395
Submitted by admin on 2026, March 19, 11:53 AM
ssh -NfR 2222 :localhost:22 root@ip
远程连接
/etc/ssh/sshd_config,将 GatewayPorts 设置为 yes
linux | 评论 :0
| Trackbacks :0
| 阅读 :415
Submitted by admin on 2025, September 25, 11:50 AM
在使用 Vim 编辑器时,可能会遇到右键无法粘贴的问题。这通常是由于 Vim 的默认配置启用了鼠标支持,导致右键点击进入了可视模式。以下是解决这一问题的几种方法:
在 Vim 中输入以下命令可以临时禁用鼠标支持,从而启用右键粘贴功能:
此命令会禁用所有模式下的鼠标支持,使右键点击可以正常粘贴。
如果希望每次打开 Vim 都能使用右键粘贴功能,可以编辑 Vim 的配置文件 ~/.vimrc ,添加以下代码:
if has('mouse')
set mouse-=a
endif
在某些系统(如 Debian11)下,Vim 的默认配置文件可能会启用鼠标支持。可以通过编辑全局配置文件来解决此问题。以下是具体步骤:
sudo vim /etc/vim/vimrc.local
source /usr/share/vim/vim80/defaults.vim
let skip_defaults_vim = 1
if has('mouse')
set mouse-=a
endif
linux | 评论 :0
| Trackbacks :0
| 阅读 :719
Submitted by admin on 2018, September 7, 1:52 PM
使用 HAProxy 加速 Shadowsocks
最近用 ss 上网的速度越来越慢,工作日晚上 Google 都很难连上。ping 了下服务器,发现都在 300、400 ms,或者 time_out,得想些方法加速一下。
后来发现 ss 支持中继,那么只要有一个服务器,连接自己电脑和 ss 服务器都很快的话就能实现加速。下面选了阿里云作为中继服务器进行实践。
1
客户端 < - > 中继服务器 < - > Shadowsocks 服务器
在自己电脑上 ping 中继服务器,中继服务器 ping ss 服务器,延迟分别为 10+ ms、60+ ms。阿里云的出口带宽果然不一样。加速条件满足,开始进入安装配置。
HAProxy
简单介绍下 HAProxy,HAProxy 是一个高效的负载均衡软件,可以实现 TCP/HTTP 的代理。这里使用它将我们发给它的请求转发给 ss 服务器。
安装
1 2
// 以 CentOS 7 为例 yum install haproxy
配置
编辑 /etc/haproxy/haproxy.cfg,保存以下内容
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
global ulimit -n 51200 defaults log global mode tcp option dontlognull contimeout 1000 clitimeout 150000 srvtimeout 150000 frontend ss-in bind *:8388 default_backend ss-out backend ss-out server server1 222.222.222.222:2222 maxconn 20480
其中,*:8388 中的 8388 是中继服务器接受请求的端口,222.222.222.222:2222 是 ss 服务器的 IP 地址加端口号。
然后执行
1
service haproxy restart
HAProxy 就会在后台进行启动。可以使用 ps -ef 查看进程,lsof -i 查看端口占用情况来验证 HAProxy 是否已经运行。若无法连接中继服务器,使用 iptables -L 查看防火墙规则是否有问题。
客户端的配置,只要将原来配置的 ip 地址和端口更换成中继服务器的 ip 地址和端口号就可以了。
未解之迷
加速之后,公司电脑和手机使用都没问题,个人电脑却死活连不上去,一直显示 ERR_CONNECTION_CLOSED,将原来的 Shadowsocks Mac 客户端替换成 Shadowsocks-libev 之后才行,但明明公司电脑使用的客户端是一样的。
其他加速方法
除 HAProxy 加速之外,还可以使用微林加速,具体可以参考代码家的提速 Shadowsocks 。还有个更偷懒的方法,直接购买 CN2 线路的 Shadowsocks。
参考
linux | 评论 :0
| Trackbacks :0
| 阅读 :1016