最近在折腾飞牛OS的时候,遇到了一个典型的“小白”坑,导致我被锁在门外好一会儿。事情是这样的:装机的时候为了省事,随手给超管账号设了个中文名。

飞牛OS登录界面中文输入法故障示意图

登录界面无法调出中文输入法,导致中文用户名无法输入

本来一切正常,直到有一次我想接个显示器和键盘直接操作本机,结果傻眼了——登录界面死活打不开中文输入法,账号名里的汉字完全敲不进去。更要命的是,系统默认又把 root 登录给关了,SSH 也登不进。那种进退两难的滋味,懂的都懂。

折腾了大半天,靠着 AI 帮忙才算把坑填平了。为了避免大家以后踩同样的坑,这里把整个“救援”过程整理了一下。虽然我不是什么大牛,但亲测有效的命令都列出来,给需要的朋友做个参考。

第一步:争取SSH入场券

既然图形界面进不去,只能靠 SSH 强行突入。我用的是 PowerShell,当然 Xshell、Putty 这些老牌工具也一样行。

输入以下指令连接(记得把账号和 IP 换成你自己的):

ssh 你的超管名@服务器IP

接下来要拿到系统的最高权限。记得输入密码后回车:

sudo -i

看到命令行提示符变成 root@fnOS:~# 就说明你已经切到上帝模式了。

第二步:给 Root 改密码并“放行”

这时候我们先把 root 账号的密码改掉,给自己留条后路:

passwd

系统会让你输入两遍新密码,看到提示 passwd: password updated successfully 就成了。

但这时候你在新开的终端里试 ssh root@你的IP,大概率会狠狠地报一个 Permission denied(权限拒绝)。这是因为在飞牛OS的默认安全策略里,root 被禁止远程登录。

我们需要去修改 SSH 的配置文件。先用这行命令看看当前配置是个啥情况:

使用nano编辑器编辑/etc/ssh/sshd_config文件

使用nano编辑器修改SSH配置文件以允许Root登录

sudo grep -E 'PermitRootLogin|PasswordAuthentication|PubkeyAuthentication' /etc/ssh/sshd_config

如果前面的参数大多是 no,那就得动手改。

输入编辑命令:

sudo nano /etc/ssh/sshd_config

这里只能用键盘操作,稍微有点复古,记几个快捷键很有用:

  • Alt + U:撤销编辑
  • Alt + E:恢复撤销
  • Ctrl + O:保存(然后回车确认)
  • Alt + X:退出(退出前会问你要不要保存,选 y

你需要找到(或者添加)下面这几行,确保前面的 # 号被删掉,且值都是 yes

PermitRootLogin yes
PasswordAuthentication yes
PubkeyAuthentication yes

改完别急着开心,还得确认一下系统是否真的读取了这些配置。运行:

sudo sshd -T | grep -E 'permitrootlogin|passwordauthentication|pubkeyauthentication'

这里看到的如果是小写的 yes,那就稳了。

最后重启一下 SSH 服务让配置生效:

systemctl restart ssh || systemctl restart sshd

这时候,新开一个终端,再试一次 ssh root@你的IP,应该就能顺滑地进去了。只要能登录 root,其实改不改用户名都无所谓了,不过强迫症让我继续走了下一步。

第三步:强制重命名用户名

先关掉刚才的窗口,直接用 root 登录:

ssh root@你的IP

现在我们来把那个恶心的中文用户名改成英文。命令格式如下(注意顺序,新名在前,旧名在后):

usermod -l 新名称 旧名称

这里大概率会报错,提示你 user 旧名称 is currently used by process xxxx。这很常见,说明有进程还占用着旧名字。别慌,按它给的数字(比如 2110),把它杀掉:

kill 2110

你可能需要反复执行“改名 -> 报错 -> 杀进程 -> 改名”这个流程,直到不再报错为止。

改名成功后,AI 建议还要把家目录(Home Directory)也迁过去,保持一致性:

usermod -d /home/新名称 -m 新名称

这一步同样可能遇到进程占用的问题,还是老办法,看提示的 PID,然后 kill 掉,再重来一次。

第四步:验证成果

折腾了这么久,最后得验证一下是不是真的改好了。输入:

getent passwd 新名称
ls -ld /home/新名称

只要输出的信息里能正确看到你的新名字,路径也是 /home/新名称,那就大功告成。

总结一下

其实回想一下,当初直接开启 root 登录就能解决死活进不去系统的问题,改名这一步纯属“洁癖”操作。但通过这次踩坑,也算是把 Linux 的用户管理和 SSH 配置摸透了一点。希望这篇笔记能帮到同样被困在门外的兄弟们!

标签: none

评论已关闭