run0

主要观点run0可用于临时交互获取提升或不同的权限,与sudo作用相似但在关键方面不同,通过polkit进行认证,为调用命令分配独立伪终端,不使用SetUID/SetGID文件访问位功能,实现更安全健壮,会话通过“systemd-run0”PAM 栈,是systemd-run的替代多调用,可设置多种选项来控制运行行为。
关键信息

  • 可设置--unit--property等多种选项,如指定单元名、设置服务单元属性等。
  • 可通过--user等选项切换用户或组,还可设置工作目录等。
  • 有多种控制终端相关的选项,如--pty等。
  • 环境变量方面,会继承系统环境,还设置了特定的环境变量如$TERM等。
    重要细节
  • 不同选项的添加版本,如--unit在版本 256 添加等。
  • 各选项的具体作用,如--via-shell调用目标用户登录 shell 等。
  • 关于退出状态,成功返回 0,失败返回非 0 值。
  • 命令行参数处理方式,非选项参数成为启动进程的命令行等。
  • sudo的不同,run0始终以登录 shell 语义启动 shell 等。
阅读 5
0 条评论