SUSE Conversations


SUSE Linux Point of Service – LDAP Management for Dummies



By: Alex_F

June 9, 2009 10:12 am

Reads:607

Comments:0

Rating:0

Table of Contents

Introduction
Overview
Features of the Posadmin GUI
Getting started with the Posadmin GUI
     Prerequisite
     Installation of Posadmin GUI
     How to run the Posadmin GUI
GUI to Posadmin
WYSIWYG
File Structure of the Posadmin GUI
CR template example
More information about SLEPOS
About the Author

Introduction

This document describes a simple tool, which creates all necessary LDAP entries on a SUSE LINUX Point of Service (SLEPOS) Administration Server.

Please note that this tool is not part of the SLEPOS Distribution from Novell.

For all readers not interested in SLEPOS, the shell script may serve as an example how to use DIALOG(1), a simple way to display dialog boxes from shell scripts.

Overview

SUSE LINUX Point of Service (SLEPOS), also previously known as Novell Point of Service (NLPOS) uses a directory service, eDirectory or LDAP to held all the informations about branches (stores), POS client hardware and POS images. To manage POS LDAP, SLEPOS provides a CLI tool called posAdmin.pl.

When starting with SLEPOS, the catchiest part is to create the initial LDAP entries and to setup up the first scLocation object which defines the SLEPOS branch server.

Using my tool “configure_SLEPOS_ldap.sh” enables everybody, without any knowledge about POS LDAP objects to configure a base SLEPOS LDAP with one or more branch server entries, in a few seconds.

Features of the Posadmin GUI

  1. Simple shell script using dialog function to provide dialog boxes.
  2. Based on three posAdmin template files, which can be modified and extended by the user.
  3. POS HW examples provided: Futro-A230, IBM4800-722, Wincor-D1 and Wincor-D2.
  4. POS Image entries provided: IBM_JavaPOS, ThinClient-SLE10, desktop, java
  5. Roll-Out Center ready for adding new branches (scLocation) in LDAP.
  6. Supports DHCP-extern option, new feature in SLEPOS10 and SLEPOS11.
  7. Supports userPassword option for SLEPOS11 Branch Server.
  8. Latest version tested on SLEPOS11 and SLEPOS10. Should also work on NLPOS9 and IRES (IBM Retails Environment for SUSE LINUX (IRES2) based on NLPOS9).

Getting started with the Posadmin GUI

Prerequisite

  • SLEPOS Admin Server pattern selected and successfully installed.
  • posInitLdap.sh was executed.
  • dialog rpm installed.
  • LDAP up and running.

When you have downloaded “SLEPOS-LDAP-GUI.tgz”, put the tar archive in a directory of your choice on the SLEPOS Administration Server.

Installation of Posadmin GUI

Unpack the tar file with the following command:

tar -xzf SLEPOS-LDAP-GUI.tgz

In the current directory you will find the directory: POS-Admin-GUI

How to run the Posadmin GUI

Login as user “root”. To start the shell script execute the following command:

POS-Admin-GUI/configure_SLEPOS_ldap.sh

The dialog boxes as shown in chapter “GUI TO POSADMIN” below will be displayed.

GUI to Posadmin

The following screen snapshots demonstrate how the GUI looks like, and which information can be configured.

All input fields are preconfigured with values which can be modified by the user to meet the values defined with the posInitLdap.sh call, which is used to initialize SLEPOS LDAP on the administration server. The final set values will be saved and are used for further calls of the Posadmin GUI.

Dialog User Interface

Using the Up- and Down-Arrow key will jump between the input fields.

Using the TAB- key will toggle between the < OK – Exit > and < Cancel > button.

When < OK – Exit > is confirmed a final confirmation dialog – as shown below – is displayed before the posadmin calls are created and processed to add the POS object in the LDAP tree.

By using the < SPACE > key, three options can be selected:

DHCP extern A central DHCP server is used. Branch Server will not enable DHCP service!
Add default POS Hardware Only used the first time call, to setup up POS HW objects.
Add default POS Image Only used the first time call, to setup up POS Image objects.

The function of the dialog buttons are:

< OK > OK – write selection to LDAP
< Restart > Start the configuration dialog again.
< Quit > Exit Posadmin GUI

When < OK > is confirmed the POS LDAP objects are written into the SLEPOS LDAP. Please note, that trying to add already existing entries will fail, and only new entries will be added. Therefore it is no problem, to remove wrong entries in the LDAP tree with an LDAP browser and to add entries again with the Posadmim GUI.

WYSIWYG

Using a LDAP browser of your choice, YaST2 LDAP Brower or JXplorer (JXplorer is an open source, internationalized Java LDAP Browser with an extensible architecture.) the contents of the SLEPOS LDAP can be viewed and edited. After LDAP initialization (posInitLdap.sh), the Company Name (o= <organization>) and Country (c= < 2digit country code >) and a default “minimal” POS image entry can be found in the LDAP tree, as shown below.

When a Branch Server, the POS HW and images were added by the PosAdmin GUI you will find the following LDAP entries as shown by the next screen snapshot.

File Structure of the Posadmin GUI

After running configure_SLEPOS_ldap.sh the following files are created:

.configure_ldap Generated script which contains the posAdmin calls.
posadmin.log Result log after execution of .configure_ldap

The files below ~/POS-Admin-GUI/templates:

ldap_bs_template posAdmin template for adding a Branch Server (scLocation)
ldap_cr_template posAdmin template for adding POS clients
ldap_pos_template posAdmin template for adding POS images
.dialogrc Color definition file for the dialog function
.setval Storage of the user input values.

CR template example

The following posAdmin template adds a POS client object for a IBM SurePOS 722 system.

echo "Add scCashRegister type \"IBM SurePOS 722\" to LDAP ..."
posAdmin.pl --user cn=admin,o=COMPANY_TEMPLATE,c=COUNTRY_TEMPLATE --password PASSWORD_TEMPLATE \
 --base cn=global,o=COMPANY_TEMPLATE,c=COUNTRY_TEMPLATE --add --scCashRegister \
--cn "IBM4800-722" --scCashRegisterName "IBM4800722" \
--scPosImageDn "cn=IBM_JavaPOS,cn=default,cn=global,o=COMPANY_TEMPLATE,c=COUNTRY_TEMPLATE" \
--scDiskJournal "TRUE"

posAdmin.pl --user cn=admin,o=COMPANY_TEMPLATE,c=COUNTRY_TEMPLATE --password PASSWORD_TEMPLATE  \
--base cn="IBM4800-722",cn=global,o=COMPANY_TEMPLATE,c=COUNTRY_TEMPLATE \
--add --scConfigFileTemplate --cn "XF86Config" --scMust "TRUE" \
--scConfigFile "/etc/X11/XF86Config" --scConfigFileData "XF86Config-4800722" \
--scBsize 1024

posAdmin.pl --user cn=admin,o=COMPANY_TEMPLATE,c=COUNTRY_TEMPLATE --password PASSWORD_TEMPLATE \
--base cn="IBM4800-722",cn=global,o=COMPANY_TEMPLATE,c=COUNTRY_TEMPLATE \
--add  --scHarddisk --cn "hda" --scDevice "/dev/hda" \
--scHdSize "40960" \
--scPartitionsTable "1024 S x;34960 L /; x L /backup"

Please note: IBM4800722 defines the HW type string (posbios) which indentifies the IBM POS system.

IBM_JavaPOS defines the POS image name which is defined for this HW type. HW specific configuration files which overlay files integrated in the POS images can be imported in LDAP. The example XF86Config-4800722 defines a XF86Config file which must be located within the templates directory, that it could be imported in LDAP. No config files are provided with the SLEPOS-LDAP-GUI.tgz and must be provided by the user!

More information about SLEPOS

SLEPOS is based on SUSE LINUX Enterprise (SLE), so far the only Enterprise Linux for POS based on SUSE LINUX Enterprise Server and/or SUSE LINUX Enterprise Desktop.

About the Author

Axel Schmidt is working since 2001 for SUSE LINUX GmbH. In the current position as Enterprise Architect – POS Solutions, Axel is incorporated in the Novell Service division in EMEA.

For comments or any questions about SUSE LINUX for retail, banking or check out terminals please feel free to post a message to axel.schmidt@novell.com

For further information about SLEPOS contact your local Novell Solution Provider, or request a Sales Call from Novell

or call (+1) 800-529-3400 U.S/Canada
(+1) 801-861-1349 Worldwide

VN:F [1.9.22_1171]
Rating: 0.0/5 (0 votes cast)

Tags:
Categories: SUSE Linux Enterprise Point of Service, Technical Solutions

Disclaimer: As with everything else at SUSE Conversations, this content is definitely not supported by SUSE (so don't even think of calling Support if you try something and it blows up).  It was contributed by a community member and is published "as is." It seems to have worked for at least one person, and might work for you. But please be sure to test, test, test before you do anything drastic with it.

Comment

RSS