记录修改Ubuntu的root账户密码时遇到的问题

在忘记Ubuntu root账户密码的情况下,需要通过重启并进入GRUB菜单选择recovery mode,然后在命令行修改密码。遇到权限问题,通过改变/etc/passwd文件权限解决,成功修改后需恢复文件权限并正常启动。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

由于需要修改权限问题,但是忘记了Ubuntu的root账户密码,经过几次查阅资料碰壁再查阅后成功更改密码,简单记录一下更改过程。

重启系统长按shift进入GRUB菜单

注意重启后按住shift直到这个界面出现,不然可能就得再来一遍。然后选择第二个选项进入,能看到以下两个选项。

选择第二个带有(recovery mode)的选项进入,稍等片刻进入以下界面。

选择root界面进入后命令行界面,输入passwd默认修改root密码,如果想修改用户密码则在passwd后加上用户名即可。

然而输入密码后显示“身份验证令牌操作错误”,密码修改失败。上网又查了发现是密码文件权限的问题,先修改

### 初始化 Ubuntu 中 MySQL 的 Root 账户 对于在 Ubuntu 上安装并配置 MySQL 后首次设置 root 用户的情况,通常涉及几个重要步骤来确保安全性和功能性。当遇到忘记密码或其他认证问题,可以通过特定的方法重新获取对数据库系统的控制。 #### 方法一:跳过权限表启动 MySQL 来重置 Root 密码 为了能够绕过当前存在的任何访问限制,在命令行下以管理员身份执行如下操作可以实现无授权表校验的服务重启: ```bash sudo mysqld --user=mysql --skip-grant-tables & ``` 这会使得 MySQL 不检查用户的权限而允许直接连接到服务器[^1]。之后就可以通过常规手段登录并修改 root 用户的信息了。 #### 修改 Root 用户信息 一旦成功进入了不需要验证权限的状态,则可利用 SQL 命令更改 root 用户的密码或者其他属性。具体来说就是更新 `mysql.user` 表内的记录项: ```sql FLUSH PRIVILEGES; ALTER USER 'root'@'localhost' IDENTIFIED BY '新密码'; ``` 上述语句首先刷新所有权限缓存以应用最新的改动;接着改变指定用户的身份识别方式及其关联的新密码值。 #### 设置环境变量以便于管理 为了让每次进入 shell 或者切换用户的候都能方便地使用某些自定义参数或路径,可以在全局范围内设定相应的环境变量。比如把必要的配置加入 `/etc/bash.bashrc` 和创建一个新的脚本文件放在 `/etc/profile.d/` 下面,从而保证这些设置适用于每一个可能的方式去获得终端会话[^2]。 #### 配置远程访问能力(如果需要) 默认情况下,MySQL 只监听来自 localhost 的请求。若希望可以从其他机器上进行管理和查询工作,则需编辑 MySQL 的配置文件 `/etc/mysql/mysql.conf.d/mysqld.cnf` 并取消绑定地址前的注释符号,即去掉 `bind-address = 127.0.0.1` 这一行前面的井号 (`#`) 符号[^4]。不过需要注意的是开放远程访问可能会带来额外的安全风险,因此建议仅限信任网络内使用此功能,并采取适当措施保护数据传输过程中的安全性。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值