CentOS7下普通账号通过systemctl管理服务需要输入root密码

当使用普通用户test尝试通过systemctl启动系统服务时,会遇到需要root权限的提示。这个问题可以通过修改polkit的配置解决。具体操作为编辑/usr/share/polkit-1/actions/org.freedesktop.systemd1.policy文件,将manae-units的defaults部分的授权选项全部设置为yes,然后重启polkit服务。这样设置后,非root用户将能够无限制地管理服务。

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

问题描述:
使用普通账号test通过systemctl启动系统服务提示需要输入root密码:

解决方案:
根据上面提示得知权限由polkit进行管理,对应的是org.freedesktop.systemd1.policy这个配置文件下的manae-units动作

进入/usr/share/polkit-1/actions/org.freedesktop.systemd1.policy,将对应manae-units的defaults中的授权全部改为yes,然后执行systemctl restart polkit重启polkit

<defaults>
        <allow_any>yes</allow_any>
        <allow_inactive>yes</allow_inactive>
        <allow_active>yes</allow_active>
</defaults>

### CentOS 7 上 MySQL 账号密码配置与重置教程 在 CentOS 7 环境中,MySQL 的账号密码配置和重置是一项常见的操作。以下是详细的步骤说明: #### 停止 MySQL 服务 首先需要停止 MySQL 服务以进行配置更改: ```bash systemctl stop mysqld ``` [^1] #### 修改 MySQL 配置文件 编辑 MySQL 的配置文件 `/etc/my.cnf`,添加 `skip-grant-tables` 参数以跳过权限验证: ```bash vim /etc/my.cnf ``` 在 `[mysqld]` 部分的末尾添加以下内容: ```ini [mysqld] skip-grant-tables ``` 保存并退出编辑器。 [^4] #### 重启 MySQL 服务 重新启动 MySQL 服务以应用更改: ```bash systemctl start mysqld ``` [^1] #### 登录 MySQL 客户端 此时可以无需密码直接登录 MySQL 客户端: ```bash mysql -u root ``` #### 设置或重置密码 进入 MySQL 数据库后,执行以下 SQL 语句以设置或重置密码: 1. 切换到 `mysql` 数据库: ```sql use mysql; ``` 2. 更新用户表中的密码字段(适用于 MySQL 5.7 及以下版本): ```sql update user set authentication_string=PASSWORD("新密码") where User='root' AND Host = 'localhost'; ``` 或者使用 `ALTER USER` 命令(适用于 MySQL 8.0 及以上版本): ```sql ALTER USER 'root'@'localhost' IDENTIFIED BY '新密码'; ``` 3. 刷新权限: ```sql flush privileges; ``` [^3] #### 退出 MySQL 客户端 完成密码修改后,退出客户端: ```sql quit ``` 或者: ```sql exit; ``` #### 恢复 MySQL 配置 重新停止 MySQL 服务: ```bash systemctl stop mysqld ``` 编辑 `/etc/my.cnf` 文件,移除之前添加的 `skip-grant-tables` 参数。 启动 MySQL 服务: ```bash systemctl start mysqld ``` #### 验证新密码 使用新设置的密码登录 MySQL 客户端: ```bash mysql -u root -p ``` 输入密码以验证配置是否成功。 --- ### 注意事项 - 在修改配置文件时,请确保备份原始文件以防意外。 - 如果使用的是 MySQL 8.0,推荐使用 `ALTER USER` 方法设置密码。 - 修改完成后务必移除 `skip-grant-tables` 参数以恢复正常的权限验证机制。 [^4] ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值