如何自动为Solaris上的Active Directory用户创build主目录(使用PowerBroker)

我在Active Directory中有许多现有用户需要创build主目录。 他们不直接login到Solaris,而是login到在该服务器上运行的服务。

如果我login他们的主目录被创build,然后他们可以login。

这对新用户也是一样的!

由于有很多用户,我需要一种自动化的方法,以便新用户和现有用户自动创build它。

这可能吗??

与Linux不同的是,没有像pam_mkhomedir这样的标准pam模块来在Solaris上完成这个任务。 虽然编译这个pam模块很可能会起作用,但如果在/ etc / profile中缺less主目录,或者设置可执行的auto_home映射,还有其他select。

使用/ etc / profile来创build用户的主目录需要使用rbac或sudo,所以基于自动加载程序的解决scheme更容易实现,例如:

/etc/auto_master文件中,注释掉这行:

 # /home auto_home -nobrowse 

并添加这一行:

 /home /opt/local/mkhomedir 

注意:我在这里假设前面的auto_home地图还没有被实际用户使用过。

使用以下内容创build/opt/local/mkhomedir脚本:

 #!/bin/ksh -p actual=/tmp/home # top directory to store user's home directories homedir=$(echo ~$1) hd=$actual/$1 if [ $(dirname $homedir) = /home -a ! -d $hd ]; then mkdir -p $hd chmod 0700 $hd chown $1 $hd fi echo localhost:$hd 

就是这样。 每个configuration为拥有/ home / 用户名的用户将在第一次访问时自动创build该目录(如有必要)。 当然,你应该用mkhomedir脚本中更持久的东西replace/tmp/home ,例如/export/home ,这是Solaris上主目录后端存储的常用位置。

你有两个select:

  • 如果你可以让你的服务使用PAM,那么你可以让pam_mkhomedir为你创build它。
  • 你可以做一个批量的夜间工作,并根据用户列表创buildhomedirs。

使用这个项目

https://github.com/benr/solaris_pam_mkhomedir

如果需要,可以使用现有的SUNWgcc软件包。

当用户login到计算机时,它会自动发生。 对不起,这是MSdevise它的方式。

最好的机会是通过远程桌面在Windows机器上login(应该脚本化),并注销一个自动脚本;)