1 加 5T 刷 PostmarketOS
2025年4月17日 · 693 字 · 2 分钟
📡 网络相关操作(NetworkManager)
安装必要组件
sudo apk add --no-check-certificate --no-interactive \
networkmanager networkmanager-cli modemmanager \
linux-firmware-ath10k linux-firmware-ath11k \
wireless-regdb wpa_supplicant
sudo rc-service networkmanager start
sudo rc-update add networkmanager default
Wi-Fi 驱动加载(OnePlus 8 Pro)
sudo modprobe -r ath11k_pci # 卸载已加载驱动
sudo modprobe ath11k_pci # 重新加载
nmcli 命令
nmcli device status
nmcli device wifi list
nmcli device wifi list --rescan yes
nmcli connection show
nmcli device set wlan0 autoconnect yes # 启用自动连接
nmcli device set wlan0 autoconnect no # 禁用自动连接
nmcli radio wifi on # 打开 Wi-Fi
nmcli radio wifi off # 关闭 Wi-Fi
Wi-Fi 连接与静态 IP 设置
# 自动连接
sudo nmcli device wifi connect 2103 password [xxxxxxxx]
sudo nmcli device wifi connect 'LC-R&D Center' password [xxxxxxx]
# 设置静态 IP
sudo nmcli connection modify "2103" \
ipv4.method manual \
ipv4.addresses "192.168.1.188/24" \
ipv4.gateway "192.168.1.66" \
ipv4.dns "192.168.1.66"
sudo nmcli connection down 2103 && sudo nmcli connection up 2103
# 切换回自动获取
sudo nmcli connection modify 2103 ipv4.method auto
🔧 网络调试与 DNS 配置
禁用 dnsmasq
sudo vim /etc/NetworkManager/conf.d/51-disable-dnsmasq.conf
# 添加以下内容:
# [main]
# dns=none
echo nameserver 223.5.5.5 > /etc/resolv.conf
使用 DHCP 获取 IP
sudo udhcpc -i wlan0
🛜 USB 网络共享
手机端设置
sudo su
ip route add default via 172.16.42.2 dev usb0
echo nameserver 223.5.5.5 > /etc/resolv.conf
主机端设置
sysctl net.ipv4.ip_forward=1
iptables -A FORWARD -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
iptables -A FORWARD -s 172.16.42.0/24 -j ACCEPT
iptables -t nat -A POSTROUTING -s 172.16.42.0/24 -j MASQUERADE
iptables-save
🔥 关闭网络防火墙
sudo service nftables stop
sudo rc-update del nftables
🐳 Docker 配置
安装与启动
sudo apk add --no-check-certificate --no-interactive docker docker-compose openssh-client rsync
sudo rc-update add docker default
sudo service docker start
sudo dockerd --debug
添加用户组权限
sudo groupadd docker
sudo adduser $(whoami) docker
sudo usermod -aG docker $USER
检查内核支持
wget https://github.com/moby/moby/raw/master/contrib/check-config.sh
chmod +x check-config.sh
./check-config.sh
🔥 iptables(兼容 Docker)
使用 legacy 模式
sudo apk add --no-check-certificate --no-interactive iptables-legacy
sudo ln -sf /usr/sbin/iptables-legacy /usr/sbin/iptables
sudo ln -sf /usr/sbin/iptables-legacy /usr/sbin/iptables-save
sudo ln -sf /usr/sbin/iptables-legacy /usr/sbin/iptables-restore
sudo iptables --version
🛠 内核模块与系统信息
zcat /proc/config.gz | grep -E 'CGROUP|BPF'
zcat /proc/config.gz | grep -E 'CONFIG_NF_NAT|CONFIG_NETFILTER_XT_MATCH_ADDRTYPE'
zcat /proc/config.gz | grep -E 'CONFIG_IP_ADVANCED_ROUTER|CONFIG_CGROUP_HUGETLB|CONFIG_SECURITY_APPARMOR'
sudo rc-service cgroups start
⏱ 时间同步
sudo apk add --no-check-certificate --no-interactive chrony
sudo rc-service chronyd start
sudo rc-update add chronyd default
sudo chronyc -a makestep
vim /etc/chrony/chrony.conf
# 添加:
# server ntp.aliyun.com iburst
🧪 Unixbench 跑分
sudo apk add unixbench
sudo ubench whets dhry
🐚 Shell 配置(zsh & bash)
安装 zsh 与配置
sudo apk add zsh git curl wget
chsh -s /bin/zsh
sh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"
# 插件 & 主题
git clone https://github.com/zsh-users/zsh-autosuggestions ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-autosuggestions
git clone https://github.com/zsh-users/zsh-syntax-highlighting.git ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-syntax-highlighting
git clone --depth=1 https://github.com/romkatv/powerlevel10k.git ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/themes/powerlevel10k
.zshrc
中配置:
ZSH_THEME="powerlevel10k/powerlevel10k"
plugins=(git zsh-autosuggestions zsh-syntax-highlighting)
切换为 bash 默认 shell
sudo apk add bash
sudo vim /etc/passwd
# 修改:
# root:x:0:0:root:/root:/bin/ash
# 为:
# root:x:0:0:root:/root:/bin/bash
🌐 apk 代理配置
/etc/apk/proxy.conf
http_proxy="http://127.0.0.1:7890"
https_proxy="http://127.0.0.1:7890"
🔧 一加 8 Pro 刷机流程(pmbootstrap)
pmbootstrap install
pmbootstrap flasher flash_dtbo
pmbootstrap flasher flash_rootfs
pmbootstrap flasher flash_kernel
⚙️ Clash 启动服务(OpenRC)
/etc/init.d/clash
#!/sbin/openrc-run
name="Clash"
description="Clash Service"
command_background="yes"
command="/home/ban/clash/clash"
command_args="-d /home/ban/clash"
pidfile="/tmp/clash.pid"
output_log="/home/ban/clash/info.log"
error_log="/home/ban/clash/err.log"