当前位置: 首页 > news >正文

嵌入式 Linux(以泰山派为例)忘记 SSH 密码怎么办?无需重装系统的重置方案

一、适用场景与前提

嵌入式 Linux 系统(如 Ubuntu 20.04 LTS)中,若你忘记了用于 SSH 远程登录的密码(无论是root管理员密码,还是之前创建的普通用户密码,如tspuser),无法通过远程终端登录,此时无需重装系统 —— 只需通过本地操作(连接显示器和键盘)即可快速重置密码。

核心前提:必须本地操作

由于 SSH 密码遗忘后无法远程登录,需满足以下硬件条件:

  1. 给泰山派连接显示器(如 HDMI 屏幕);
  2. 连接USB 键盘
  3. 确保 SD 卡正常启动(系统未损坏)。
  4. 能用串口等其他方式登陆root

二、分情况解决:忘记不同用户的 SSH 密码

嵌入式 Linux 系统中,用户分为root(管理员)和普通用户(如tspuser),忘记两者密码的重置方式略有不同,以下分场景详细说明。

场景 1:忘记 root 密码(最常见,SSH 默认用 root 登录)

root是系统最高权限用户,忘记其密码后,需通过 “根分区可写挂载 + 直接重置密码” 解决,步骤如下:

步骤 1:启动系统并进入本地终端
  1. 给泰山派通电,等待系统启动完成(显示器显示登录提示符或命令行界面);
  2. 若系统默认自动登录root(如之前配置),直接跳过步骤 2,进入步骤 3;若需手动登录,此时因忘记密码无法登录,需执行根分区可写挂载(系统启动后根分区默认可能为 “只读”,无法修改密码):
    # 关键命令:重新挂载根分区为“可写”模式(否则无法执行passwd命令)
    sudo mount -o remount,rw /
    
    • 说明:mount -o remount,rw / 表示将根分区(/)重新挂载为可读写模式,解决 “只读文件系统” 导致的密码修改失败问题。
步骤 2:直接重置 root 密码

无论是否自动登录,只要本地能进入root终端(或通过sudo获取管理员权限),执行以下命令重置密码:

# 执行root密码重置命令(无需输入旧密码,直接设置新密码)
passwd root
  • 执行后按提示操作:
    New password:  # 输入你想设置的新密码(如123456,建议后续改复杂密码)
    Retype new password:  # 再次输入新密码(确认一致性)
    passwd: password updated successfully  # 提示“updated successfully”即成功
    
  • 注意:输入密码时终端不显示任何字符(无星号 / 圆点),正常输入即可,输完按回车。
步骤 3:验证新密码并测试 SSH
  1. 若系统未自动登录,可执行su - root,输入新密码,确认能正常切换到root用户;
  2. 重启 SSH 服务(确保新密码生效):
    sudo systemctl restart ssh
    
  3. 在远程设备(如电脑)上测试 SSH 登录:
    # 远程终端输入(替换IP为泰山派的局域网IP,如192.168.167.72)
    ssh root@192.168.167.72
    
    • 输入刚重置的新密码,若成功进入root@linux:~#提示符,说明 SSH 密码重置完成。

场景 2:忘记普通用户密码(如之前创建的 tspuser)

若你忘记的是普通用户(如tspuser)的密码,且能通过root用户本地登录(或有root权限),重置方式更简单:

步骤 1:本地登录 root 用户

通过显示器和键盘,本地登录root用户(若忘记 root 密码,先按 “场景 1” 重置 root 密码)。

步骤 2:重置普通用户密码

执行以下命令,通过root权限重置普通用户密码(无需知道旧密码):

# 格式:sudo passwd 普通用户名(如tspuser)
sudo passwd tspuser
  • 按提示设置新密码:
    New password:  # 输入普通用户的新密码(如tsp123)
    Retype new password:  # 再次确认
    passwd: password updated successfully  # 提示成功即完成
    
步骤 3:测试普通用户 SSH 登录

远程设备上用新密码登录普通用户:

# 远程终端输入(替换IP和用户名)
ssh tspuser@192.168.167.72
  • 登录后若需执行管理员命令,可通过sudo 命令(如sudo apt-get update),输入普通用户的新密码即可获取权限。

三、常见问题排查(重置密码时遇到的报错)

问题 1:执行passwd时提示 “Read-only file system”(只读文件系统)

原因:根分区默认挂载为只读模式,无法修改密码文件。解决:重新挂载根分区为可写:

sudo mount -o remount,rw /
  • 若提示 “mount: /: can't find in /etc/fstab.”,说明根分区挂载信息未在/etc/fstab中,直接执行mount -o remount,rw /dev/mmcblk1p6mmcblk1p6是泰山派的根分区,参考之前的分区表)。

问题 2:重置密码后 SSH 仍提示 “Access denied”

原因:可能是 SSH 配置禁止了该用户登录(如PermitRootLogin未设为yes),而非密码问题。解决:本地登录root,检查并修改 SSH 配置:

# 编辑SSH配置文件
sudo vim /etc/ssh/sshd_config# 确保以下配置(以root为例):
PermitRootLogin yes  # 允许root通过SSH登录
# 若为普通用户,无需额外配置(默认允许普通用户登录)# 重启SSH服务
sudo systemctl restart ssh

问题 3:无法本地登录 root(系统未自动登录,且忘记密码)

原因:系统启动后直接进入登录界面,无法输入mount命令。解决:通过 “单用户模式” 启动(适合更复杂的场景,泰山派适用):

  1. 泰山派通电启动,在引导界面(若有)按e进入 grub 编辑模式(若无引导界面,需提前配置 grub 显示);
  2. 在编辑界面找到linux开头的行,在末尾添加init=/bin/bash,按Ctrl+X启动;
  3. 启动后执行mount -o remount,rw /,再执行passwd root重置密码;
  4. 重置完成后执行exec /sbin/init,正常启动系统。

四、重置密码后的安全建议

  1. 设置复杂密码:避免用123456等简单密码,建议组合 “字母 + 数字 + 符号”(如Tsp@2025!),降低被暴力破解的风险;
  2. 禁用 root 直接 SSH 登录:密码重置后,若常用普通用户(如tspuser),可修改 SSH 配置禁用 root 远程登录,提升安全性:
    sudo vim /etc/ssh/sshd_config
    PermitRootLogin no  # 禁止root SSH登录
    sudo systemctl restart ssh
    
  3. 定期备份密码:将重要用户密码记录在安全的地方(如本地密码管理器),避免频繁遗忘;
  4. 开启 SSH 密钥登录:长期使用建议配置 SSH 密钥登录(无需输入密码),彻底解决 “忘记密码” 的问题,具体可参考:
    # 本地生成密钥对(以Windows PowerShell为例)
    ssh-keygen -t rsa  # 按提示生成密钥(默认保存在~/.ssh/)
    # 将公钥上传到泰山派(替换用户名和IP)
    ssh-copy-id tspuser@192.168.167.72
    # 后续登录无需密码:ssh tspuser@192.168.167.72
    

五、总结

忘记嵌入式 Linux(泰山派)的 SSH 密码无需恐慌,核心是通过本地操作(显示器 + 键盘)重置密码—— 无论是root还是普通用户,都能通过 “可写挂载根分区 +passwd命令” 快速解决,无需重装系统,且不会破坏之前的系统配置(如 23.4G 大分区挂载、已安装的软件)。

若后续想彻底避免 “忘记密码” 的麻烦,推荐配置 SSH 密钥登录,既安全又无需记忆密码,适合长期远程管理嵌入式设备。

http://www.dtcms.com/a/458674.html

相关文章:

  • 餐饮行业做网站的数据广州网站建设广州网络推广公司排名
  • 织梦网络公司网站源码招投标 网站建设
  • 爱做网站网址wordpress建淘宝客
  • 汉中市网站建设公司淘宝买模板注浆做网站
  • 做网站的linux程序代码爱深圳小程序
  • Unity网络开发--套接字Socket(1)
  • 南京做网站的有哪些学生个人网页制作主题
  • 【LLM】ms-Swift大模型训练框架源码分析
  • 安全电子商务网站设计一个网站怎么绑定很多个域名
  • Docker镜像
  • 网站部署环境推广平台怎么赚钱
  • 2817网站中山网站建设制作
  • 【Algorithm】Day-2
  • 淘宝网站那个做的最好加盟网站建设
  • 本地的丹阳网站建设合肥大型网站
  • 做网站登录平台网站是什么
  • 个人用云计算学习笔记 --21(Linux 文本处理工具与正则表达式)
  • 室内装饰公司网站模板wordpress 主题上传
  • 网站迁移到别的服务器要怎么做人力资源公司简介
  • 第六步:加入日志功能
  • 16.C++三大重要特性之多态
  • 鄂州网站建设网站建设的界面f分
  • 网站添加对联广告代码shine跨境电商平台
  • Linux VScode 安装PHP环境
  • 云速建站与传统网站的区别在线设计装修软件
  • 南安建设局网站wordpress英文模版
  • leaflow 部署openlist 部署教程
  • 成都网站空间创新互联网站建设与管理维护的答案李建青
  • photoprism开源去中心化网络的 AI 照片应用
  • 如何在记事本中做网站链接教务处网站建设方案