6.2. 覆盖 LDAP UID 属性

作为管理员,您可以将现有主机配置为使用 LDAP 中的帐户。但是,LDAP 中用户(名称、UID、GID、主目录、shell)的值与本地系统中的值不同。您可以按照以下步骤定义不同的 UID 来覆盖 LDAP UID 属性。

先决条件

  • root 访问权限
  • 已安装 sssd-tools

步骤

  1. 显示用户当前的 UID:

    # id -u user-name

    使用用户名称替换 user-name

  2. 覆盖用户帐户的 UID:

    # sss_override user-add user-name -u new-UID

    使用用户名替换 user-name,再将 new-UID 替换为新的 UID 号。

  3. 使内存缓存过期:

    # sss_cache --users
  4. 使用 sss_override user-add 命令创建第一次覆盖后,重启 SSSD 以使更改生效:

    # systemctl restart sssd

验证步骤

  • 验证新 UID 是否已应用:

    # id -u user-name
  • 可选。显示用户的覆盖:

    # sss_override user-show user-name
    user@ldap.example.com::new-UID:::::

    例 6.2. 覆盖用户的 UID

    使用 UID 6666 覆盖用户 sarah 的 UID:

    1. 显示 sarah 用户的当前 UID:

      # id -u sarah
      1001
    2. 使用 UID 6666 覆盖用户 sarah 的帐户的 UID:

      # sss_override user-add sarah -u 6666
    3. 手动使内存缓存过期:

      # sss_cache --users
    4. 重启 SSSD 以使更改生效:

      # systemctl restart sssd
    5. 验证是否应用了新的 UID,并正确覆盖用户显示:

      # id sarah
      6666
      
      # sss_override user-show sarah
      user@ldap.example.com::6666:::::

其他资源

  • sss_override man page