307 字
2 分钟
OpenWrt 安装 oh-my-zsh 并配置 powerlevel10k

OpenWrt 默认的 shell 是 BusyBox ash,没有补全、没有历史搜索、提示符只有一个 #。以下是装 zsh + oh-my-zsh + powerlevel10k 的步骤

安装依赖#

Terminal window
opkg update
opkg install zsh git git-http ca-bundle curl

装完先裸跑一下确认 zsh 能起来:

Terminal window
zsh --version

安装 oh-my-zsh#

Terminal window
sh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"

设置默认 shell#

没有 chsh,直接改 /etc/passwd。dropbear 登录时读的就是这一列。

Terminal window
sed -i 's#:/bin/ash$#:/usr/bin/zsh#' /etc/passwd

改完 grep root /etc/passwd 确认一下:

root:x:0:0:root:/root:/usr/bin/zsh
WARNING

改这一行之前,务必保留当前 SSH 会话不要断开,另开一个窗口验证能正常登录。zsh 启动失败会导致 SSH 直接把你踢出去,只能进 failsafe 模式救回来。

安装 powerlevel10k#

Terminal window
git clone --depth=1 https://github.com/romkatv/powerlevel10k.git "${ZSH_CUSTOM:-$HOME/.oh-my-zsh/custom}/themes/powerlevel10k"

~/.zshrc

ZSH_THEME="powerlevel10k/powerlevel10k"

配置主题#

重新登录后会自动进配置向导,或者手动执行:

Terminal window
p10k configure

向导的前几步是在问你终端能不能正常显示特殊字符(菱形、锁、Unicode 版本)。这些字符由你本地的终端模拟器渲染,跟路由器无关,所以要在本机装 Nerd Font 并在终端里选中它,否则向导会一路把你引导到无图标的 ASCII 模式。

配置结果写在 ~/.p10k.zsh,想换风格重跑 p10k configure 即可。

reference#

OpenWrt 安装 oh-my-zsh 并配置 powerlevel10k
https://blog.alfakyun.icu/posts/openwrt-ohmyzsh-powerlevel10k/
作者
Sakaizd
发布于
2026-08-13
许可协议
CC BY-NC-SA 4.0