On larger sites, it is useful to use a dedicated storage server for
storing user home directories and data. The design for handling this
in Debian Edu / Skolelinux, is
to update the automount rules in LDAP and let the automount daemon on
the clients take care of the rest. I was reminded about the need to
document this better when one of the customers of
Skolelinux Drift AS, where I am
on the board of directors, asked about how to do this. The steps to
get this working are the following:
- Add new storage server in DNS. I use nas-server.intern as the
example host here.
- Add automoun LDAP information about this server in LDAP, to allow
all clients to automatically mount it on reqeust.
- Add the relevant entries in tjener.intern:/etc/fstab, because
tjener.intern do not use automount to avoid mounting loops.
DNS entries are added in GOsa², and not described here. Follow the
instructions
in the manual (Machine Management with GOsa² in section Getting
started).
Ensure that the NFS export points on the server are exported to the
relevant subnets or machines:
root@tjener:~# showmount -e nas-server
Export list for nas-server:
/storage 10.0.0.0/8
root@tjener:~#
Here everything on the backbone network is granted access to the
/storage export. With NFSv3 it is slightly better to limit it to
netgroup membership or single IP addresses to have some limits on the
NFS access.
The next step is to update LDAP. This can not be done using GOsa²,
because it lack a module for automount. Instead, use ldapvi and add
the required LDAP objects using an editor.
ldapvi --ldap-conf -ZD '(cn=admin)' -b ou=automount,dc=skole,dc=skolelinux,dc=no
When the editor show up, add the following LDAP objects at the
bottom of the document. The "/&" part in the last LDAP object is a
wild card matching everything the nas-server exports, removing the
need to list individual mount points in LDAP.
add cn=nas-server,ou=auto.skole,ou=automount,dc=skole,dc=skolelinux,dc=no
objectClass: automount
cn: nas-server
automountInformation: -fstype=autofs --timeout=60 ldap:ou=auto.nas-server,ou=automount,dc=skole,dc=skolelinux,dc=no
add ou=auto.nas-server,ou=automount,dc=skole,dc=skolelinux,dc=no
objectClass: top
objectClass: automountMap
ou: auto.nas-server
add cn=/,ou=auto.nas-server,ou=automount,dc=skole,dc=skolelinux,dc=no
objectClass: automount
cn: /
automountInformation: -fstype=nfs,tcp,rsize=32768,wsize=32768,rw,intr,hard,nodev,nosuid,noatime nas-server.intern:/&
The last step to remember is to mount the relevant mount points in
tjener.intern by adding them to /etc/fstab, creating the mount
directories using mkdir and running "mount -a" to mount them.
When this is done, your users should be able to access the files on
the storage server directly by just visiting the
/tjener/nas-server/storage/ directory using any application on any
workstation, LTSP client or LTSP server.