modified | Thursday 1 May 2025 |
---|
Wednesday, August 1, 2018 at 00:00
su,sudo, pkexec 和 root 的 二 三 事
水
约 伊 兹 的 萍 狼 乡 手 札
到 底 有 啸 区 别 (:31 <)
什 么 是 root 权 限 ?
这 里 的 root 权 限 , 实 际 上 指 的 是 名 为 root 的 账 户 所 具 有 的 权 限 。 _ 获 取
root 权 限 “, 指 的 实 际 是 获 取 root 账 户 的 使 用 权 。 root 是 系 统 中 权 限
最 高 的 用 户 。 和 Windows 的 Administrator 相 比 , 权 限 不 知 道 高 到 哪 里
去 了 。 ( 注 : 在 Windows 中 想 获 取 较 高 的 权 限 , 可 以 使 用 NSudo) 举
个 例 子 : Administrator 是 删 除 不 了 explorerexe 文 件 的 , 而 root 可 以
删 除 你 当 前 正 在 使 用 的 shell 甚 至 整 个 系 统 。
在 GNU/Linux 上 切 换 到 root 用 户 的 方 法 大 有 三 种 :
su - 其 实 是 切 换 用 户 (switch user)
su [options] [-] [user [argument..]]
su 其 实 是 用 来 切 换 用 广 的 啦 ~ 如 果 没 参 数 的 话 , 默 认 是 切 换 到 root
的 , 所 以 会 询 问 root 的 密 码 。
以 及 su 默 认 只 改 变 HOME 和 SHELL 变 量 , 可 以 用 –login ( 或 者 更 短
些 的 - ) 来 规 避 混 合 环 境 变 量 的 副 作 用 :
SU -
直 到 离 开 shell 之 前 都 能 保 持 root 权 限 。
直 到 离 开 shell 之 前 都 能 保 持 root 权 限 。
sudo - 家 庭 常 备 ( 误 )
sudo(substitute user do) 使 得 系 统 管 理 员 可 以 授 权 特 定 用 户 或 用 户 组 作
为 root 或 他 用 户 执 行 某 些 ( 或 所 有 ) 命 令 , 同 时 还 能 够 对 命 令 及 其 参
数 提 供 审 核 跟 踪 。
一 个 典 型 的 sudo 操 作 大 概 像 这 样 :
$ Sudo pacman -Sy
水 sudo 宾 请 求 当 前 用 户 的 密 码
[sudo] password for horo:
: Synchronizing package databasesS . . .
不 过 不 是 所 有 能 用 sudo 这 一 个 命 令 的 家 伙 都 能 获 得 root 权 限 的 啦 ~
sudo 君 有 一 个 小 名 单 , 只 有 名 单 上 的 人 才 可 以 使 用 sudo。 这 个 名 单 就
是 /etc/sudoers 。
为 了 确 保 正 确 的 更 改 /etc/sudoers 文 件 , 通 常 会 使 用 visudo 命 令 。
visudo 会 锁 住 sudoers 文 件 , 保 存 修 改 到 临 时 文 件 , 然 后 检 查 文 件 格
式 , 确 保 正 确 后 才 会 覆 盖 sudoers 文 件 。
pkexec - Systemd 全 家 桶 内 置 ( 误 )
pkexec allows an authorized user to execute PROGRAM as another
user. If PROGRAM is not specified.the default shell will be run. if
username is not specified, then the program will be executed as the
administrative super user root.
pkexec 用 法 上 和 sudo 大 概 差 不 多 :
S pkexec
pkexec allows an authorized user to execute PROGRAM as another
user. If PROGRAM is not specified.the default shell will be run. ff
username is not specified, then the program will be executed as the
administrative super user root.
pkexec 用 法 上 和 sudo 大 概 差 不 多 :
$ pkexec
不 过 这 个 貌 似 桌 面 环 境 里 用 的 比 较 多 , 在 桌 面 环 境 上 接 下 来 会 弹 出 一 个
河 , 提 示 汝 输 入 汝 自 己 的 密 码 , 大 概 像 这 样 (GNOME 大 概 像 这
Authentication Required
Authentication is needed to run /binjzsh「 as the
SUper USer
$ pkexec
不 过 这 个 貌 似 桌 面 环 境 里 用 的 比 较 多 , 在 桌 面 环 境 上 接 下 来 会 弹 出 一 个
河 , 提 示 汝 输 入 汝 自 己 的 密 码 , 大 概 像 这 样 (GNOME 大 概 像 这
Authentication Required
Authentication is needed to run /binjzsh「 as the
SUper USer
所 以 这 仨 到 底 有 啶 区 别 还 是 没 搞 清 楚 (:31 <)