个人工具

UbuntuHelp:AutofsLDAP

来自Ubuntu中文

Wikibot讨论 | 贡献2008年10月19日 (日) 14:20的版本

跳转至: 导航, 搜索


Introduction

Automount is the modern way to mount directories over a network. It is far much easier to manage and are more economic in bandwith. In this howto, autofs will be configured through LDAP directory: in that way, we have a centralised configuration and we use a maximum the LDAP that has been setup. Great, isn't it ?

Installation

First of all, automount is composed of two parts : kernel module and user land utilities. Kernels in modern GNU/Linux distributions are compiled with support for automount. You just have to install user land utilities : install the following packages autofs-ldap ldap-utils (see InstallingSoftware). If you plan to only use flat files configuration, you do not need to install the autofs-ldap package: installation is described in UbuntuHelp:Autofs howto.

Configuration

Configuring LDAP automount consists of several parts:

  • configure openldap server to load the autofs-ldap schema
  • entering LDAP entries for defining mountpoints
  • entering LDAP entries for defining directories
  • defining on the client to use LDAP for automount configuration

On the server

Tell the slapd daemon to load /etc/ldap/schema/autofs-ldap.schema:

sudo nano /etc/ldap/slapd.conf

and add the line

#Schema and objectClass definitions
include /etc/ldap/schema/autofs.schema

The autofs.schema line must be inserted after core.schema and cosine.schema Finally restart the slapd service:

sudo /etc/init.d/slapd restart

Populating LDAP

In the LDAP directory, you have to enter two kind of entries:

  • entries that defines the mountpoint
  • entries that defines the directory under a mountpoint

Here is an example of LDAP entries based on the UbuntuHelp:OpenLDAPServer installation.

dn: ou=admin,dc=example,dc=com
ou: admin
objectClass: top
objectClass: organizationalUnit

dn: ou=automount,ou=admin,dc=example,dc=com
ou: automount
objectClass: top
objectClass: organizationalUnit

dn: ou=auto.master,ou=automount,ou=admin,dc=example,dc=com
ou: auto.master
objectClass: top
objectClass: automountMap
  
dn: cn=/home,ou=auto.master,ou=automount,ou=admin,dc=example,dc=com
cn: /home
objectClass: top
objectClass: automount
automountInformation: ldap:ou=auto.home,ou=automount,ou=admin,dc=example,dc=com --timeout=60 --ghost

dn: cn=lionel,ou=auto.home,ou=automount,ou=admin,dc=example,dc=com
cn: lionel
objectClass: top
objectClass: automount
automountInformation: -fstype=nfs,rw,hard,intr,nodev,exec,nosuid,rsize=8192,wsize=8192  nfs.example.com:/export/home/lionel

On the client

On the client, you only have to add LDAP map to the automount entry of /etc/nsswitch.conf. Edit you /etc/nsswitch.conf and add the line:

automount:      files ldap

The package ldap-utils have to be configured. Edit /etc/ldap/ldap.conf:

BASE    dc=example,dc=com
URI     ldap://ldap.example.com

Launch

autofs look in the LDAP directory for automountMap. You just have to launch autofs:

sudo /etc/init.d/autofs start

Test

Just check with a mount that automount is well launched:

mount | grep automount
automount(pid5058) on /home type autofs (rw,fd=4,pgrp=5058,minproto=2,maxproto=4)