Ao contrário do Linux, não há um módulo pam padrão como o pam_mkhomedir para realizar essa tarefa no Solaris. Embora a compilação desse módulo pam provavelmente funcione, existem alternativas como criar o diretório home se estiver faltando em / etc / profile ou configurar um mapa auto_home executável.
Usar / etc / profile para criar o diretório home do usuário exigiria o uso de rbac ou sudo para que uma solução baseada em automounter seja mais simples de implementar, por exemplo:
No arquivo /etc/auto_master
, comente a linha:
# /home auto_home -nobrowse
e adicione esta linha:
/home /opt/local/mkhomedir
Observação: suponho que o mapa auto_home anterior já não fosse usado por usuários reais.
Crie o script /opt/local/mkhomedir
com este conteúdo:
#!/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
e é isso. Cada usuário configurado para ter sua casa em / home / username terá este diretório criado automaticamente no primeiro acesso, se necessário. Naturalmente, você deve substituir /tmp/home
por algo mais persistente no script mkhomedir
, por exemplo, /export/home
, que é o local habitual para o armazenamento de backend do diretório inicial no Solaris.