Novell is now a part of Micro Focus

GroupWise 6.5 for Linux: Running GroupWise 6.5 in a Pure Linux Environment

Articles and Tips: article

Tay Kratzer

01 Mar 2004


GroupWise 6.5 for Linux is a self-contained groupware product that can run in a pure Linux environment. GroupWise 6.5 for Linux includes the following software:

  • Administration: ConsoleOne for Linux with GroupWise 6.5.1 Snapins

  • Server Agents: All GroupWise 6.5.1 Agents such as the POA, MTA, GWIA, and WebAccess Agents

  • Client: The GroupWise Cross-Platform Client

GroupWise 6.5 for Linux is yet another enterprise-class solution from Novell for the Linux platform. Novell GroupWise third-party vendors are joining Novell to further strengthen GroupWise on the Linux platform. However, the reality is that most GroupWise systems are running in a NetWare server/Windows workstation environment. As such, most GroupWise administrators will want to integrate GroupWise 6.5 for Linux into their already existing NetWare server/Windows workstation environment.

As is customary with Novell solutions, GroupWise 6.5 for Linux does not require you to "rip and replace" your existing infrastructure. In fact, for customers already on the GroupWise 6.5 platform, it's not even an upgrade. You can just tuck GroupWise 6.5 for Linux into your already existing system. GroupWise 6.5 for Linux is completely compatible with other non-Linux GroupWise agents and clients that already exist in a GroupWise 6.5 system. For example, a GroupWise 6.5 MTA on a NetWare server can seamlessly communicate with a GroupWise 6.5 POA on a Linux server. The GroupWise Windows client can seamlessly access a GroupWise post office that's running on a Linux server. So can any one of the many GroupWise client solutions that are currently available, such as the GroupWise Cross-Platform client, Microsoft Outlook, IMAP clients, GroupWise WebAccess, and Wireless clients such as Pocket PC, Palm OS, WML and HDML devices.

This article explains how to create a GroupWise post office on a Linux server within an existing GroupWise system running in a NetWare server/Windows workstation environment. The only thing that can be difficult about integrating GroupWise 6.5 for Linux is the Linux learning curve. So read on to learn a little bit more about Linux before you take the plunge.

Linux Primer

Different versions of Linux can have vast differences in appearance, menu choices and utilities. All shell commands and utilities at a terminal or shell session (which is like a DOS command prompt) are generally the same on all versions of Linux. So it's usually simplest to explain a Linux procedure from the perspective of running a terminal or shell session rather than assuming that the Linux installation has a graphical user interface (GUI) to perform a certain task.

Note: Linux is case sensitive. Be sure to use the correct case for commands, as well as for switches and parameters, as you execute a command.

However, the steps in this article are based on SUSE LINUX Enterprise Server 8. Some of the procedures use commands and utilities in a terminal session. Others use GUI-based utilities that come with SUSE LINUX Enterprise Server 8. (For more information on commonly used terminal commands see Common Linux Terminal/Shell Commands.)

Current GroupWise 6.5 System Layout

Following is an example system that closely mirrors the average GroupWise 6.5 environment:

Existing Servers: NetWare 6 and NetWare 6.5 fully patched running various GroupWise 6.5 agents.

GroupWise Administrator's Workstation: Windows 2000, with the latest NetWare client. ConsoleOne 1.3.5 (or better) with the GroupWise 6.5.1 Snapins.

SUSE LINUX Installation and Configuration

First, let's introduce a Linux server. Throughout this article, we'll use SUSE LINUX Enterprise Server 8 with all the updates that are installed from online sources when the server is first installed. We won't concentrate on how to install SUSE LINUX Enterprise Server 8 in this article because the installation is far too simple for words-really!

Note: When you install the SUSE LINUX Enterprise Server 8 server, you are required to enter a password for "root." Remember this password.

The installation of SUSE LINUX Enterprise Server 8 is simpler than any other operating system I have installed. It's just a matter of doing the following:

  1. Plug the server into your network with access to the Internet.

  2. Configure the server BIOS so it boots the server from a CD-ROM drive first.

  3. Insert the first installation CD for SUSE LINUX Enterprise Server 8.

  4. Re-boot the server.

  5. Follow the very simple installation prompts, always accepting the default settings unless you know a good reason to change them.

Root Login

Now, log into SUSE LINUX Enterprise Server 8 as the user "root" by following these steps:

  1. Select the Start Application icon.

  2. Select the Logout menu choice.

  3. If the prompt reads "End session for root," click Cancel because you're already logged in as "root." If the prompt reads "End session for ," select "Login as different user" and when you have a Login prompt, login as "root."

For the remainder of this article I'll assume you're logged in as "root." Also, just so we're on the same page, I'll assume you're using the KDE desktop.

Note: Be aware that logging in as "root" is risky-like logging into eDirectory as the admin user.

Static IP Address Configuration

Use the YaST configuration utility that comes with SUSE LINUX Enterprise Server 8 to assign a static IP address for the SUSE LINUX Enterprise Server 8 server. YaST is similar to the Control Panel on a Windows machine.

  1. Select the Start Application icon.

  2. Select YaST2 from the System menu.

  3. From within YaST2, select the Network/Basic icon.

  4. Select Network card configuration.

  5. Select the Change... button to configure the Network Interface Card.

  6. Fill in the IP Address and Subnet mask and then click on the Routing button to fill in the Default Gateway (the router that allows the network hosts to talk to hosts outside the current subnet).

Generally, the IP address changes automatically. Use the "ifconfig" command in a terminal/shell session to confirm this by taking the following steps:

  1. Open a terminal/shell session by clicking the seashell and monitor icon on the Taskbar.

  2. Within the terminal session type: ifconfig

  3. Look at the inet addr: section from the ifconfig command results and make sure that it shows the IP Address that you assigned. If the IP Address is not what you assigned, log out and reboot the Linux server and log in again as the user root.

Create Windows Connectivity to the Linux Server

To create a new GroupWise post office on the Linux server, the administrator's workstation that is running ConsoleOne must have a drive mapped to the Linux server. Then share the Linux server's hard drive on the network. This way Windows workstations can map a drive (often called a "share") to the Linux server.

Windows workstations natively speak a network protocol called SMB (Server Message Block). This protocol is commonly known as Windows Networking or the CIFS protocol. Just below the SMB protocol is a supporting protocol that SMB requires, called NetBIOS. By configuring a Linux server to support these two protocols, NetBIOS and SMB, the SUSE LINUX Enterprise Server 8 server can share it's hard-drive. The software to enable this functionality is referred to as SAMBA or SAMBA server (note the reference to SMB).

Take three simple steps to implement a basic, yet secure, SAMBA service:

  1. Create a Linux user login.

  2. Create a SAMBA user login. In this article, gwadmin is used as both the Linux user login and the SAMBA user login.

  3. Activate the required daemons (services) to run the SAMBA server. All the commands are explained in the next three steps and are shown in Figure 1.

What employees can see and do on innerweb depends on their identity, which is quantified by title, department, location and personal preferences, such as color scheme preferences.

Figure 1

Step 1 Create the Linux user gwadmin on the linux server.

  • Open a terminal/shell session on the Linux server.

  • Add the gwadmin user, make a home directory for that user and add that user to the "root" group by issuing the following command:

    useradd -mg root gwadmin
  • Assign a password for gwadmin:

    passwd gwadmin

Fill in the password when prompted. In this example, use novell as the password. (Don't worry about the messages you may get such as "Bad password: too simple." I tried several password variations and got similar messages.)

Step 2 Add the user gwadmin as a user that can authenticate to the SAMBA server.

  • Open a terminal/shell session on the Linux server.

  • Issue a command to add the gwadmin user's credentials to the SAMBA server:

    smbpasswd -a <userid> <password>.
  • Following is the syntax using the gwadmin account as our example:

    smbpasswd -a gwadmin novell

Step 3 Activate the netbios (NMB) and SAMBA (SMB) daemons.

  • Open a terminal/shell session on the Linux server.

  • Change to the directory /etc/rc.d:

    cd /etc/rc.d
  • Start the nmb daemon:

    ./nmb start
  • Start the smb daemon:

    ./smb start

Note: Both of these daemons support the "status" and the "stop" parameters. (See Figure 1.)

Step 4 From the Windows workstation, map a drive to the Linux server.

  • From the administrator's Windows workstation, right-click on Network Neighborhood or My Network Places (depending on your Windows version), and select Map Network Drive.

    Note: Do not select Novell Map Network Drive because the NetWare client is not enabling the NetBIOS/SMB protocol; Windows is enabling it.

  • Choose a drive letter and fill in the IP address of the Linux server and the Linux userid. (See Figure 2.) For example:

    "\\137.65.55.215\gwadmin" (without the quotes).

  • Click Finish.

  • When it prompts you for the username and password, enter the Linux username and password you used earlier when issuing the "smbpasswd" command, and then click OK. Again, in our example, the username is gwadmin and the password is novell.

Map a drive to the Windows share created on a Linux server.

Figure 2

You now have a drive letter mapped to the SUSE LINUX Enterprise Server 8 server from the GroupWise administrator's Windows workstation. On the Linux server, the location that has been mapped in this example is /home/gwadmin. Now that you have a drive letter mapped to it, the next step is to create the post office on the Linux server.

Create a New GroupWise Post Office on the Linux Server

  1. From the drive letter that you mapped to the Linux server, in Windows Explorer create a folder/directory for your post office with a name that does not exceed eight characters, such as itspo. In our example, this created the itspo directory under /home/gwadmin on the Linux server.

    Note: Linux is case sensitive. I suggest you create the folder in lowercase.

  2. Now create a GroupWise post office on the Linux server. The steps for creating a GroupWise 6.5 post office on the Linux server are the same as if the post office were being created on a NetWare or a Windows server. Creating a post office is as simple as following a wizard, so this section highlights only the major steps:

    • In ConsoleOne, connect to the GroupWise domain off of which this new post office will be created.

    • From the GroupWise view, right-click on the domain that will own the new post office.

    • Select New and then Post Office.

    • Fill in all of the appropriate fields for the "Post Office Database Location." Browse to and select the folder/directory you created on the Linux server. Figure 3 shows the ITSPO post office being created.

    • Keep the Configure Link option checked, and click OK.

    • Finish the post office creation wizard. Note that the IP address that you indicate will be the IP address of the Linux server.

    • From your Windows workstation, go to the post office directory and confirm that the post office directory contains the files wphost.db and ngwguard.dc. Also, confirm that the OFVIEWS directory was created, and it should have a subdirectory off of it called WIN. The WIN directory should contain several files.

    Note: The name of the ngwguard.dc must be all lowercase. For example, the name of the file must not be Ngwguard.dc or NGWGUARD.DC, etc. if the file is named anything other than ngwguard.dc, correct it by renaming the file to ngwguard.old and then renaming it back to ngwguard.dc.

Create a new post office that will be placed on the Linux server.

Figure 3

Prepare GroupWise Installation Software and Determine the Linux Mount Point for CD-Rom Installations

The GroupWise 6.5 for Linux software is commonly distributed from Novell in three different forms:

  1. An *.ISO image that can be burned to a CD.

  2. A CD Disc.

  3. A file with a filename extension of *.TAR.GZ. The *.TAR.GZ file is a Linux file that is archived and compressed similar to a Windows/DOS *.ZIP file.

Take the following steps to prepare your media for installation:

CD-Rom Disc and *.iso Image

Placing a CD in the CD-ROM drive of a Linux server doesn't guarantee that the CD is available. The disc may be mounted and available by default, or...it may not be. So make sure your CD is mounted and accessible. Also, there's no such thing as a drive letter in Linux. So in order to get to a CD-ROM Disc, access it from a "mount point" from the /media folder. Follow along to see how:

  1. If you already have a CD for GroupWise 6.5 for Linux, skip to step 2. If you only have an *.ISO image, burn the *.ISO image to a CD using CD burner software that will burn *.ISO images. You may burn the *.ISO image on a Windows machine.

  2. Insert the CD into the CD-ROM drive.

  3. Confirm that the CD is mounted.

  • Open up a terminal/shell session.

  • Type the mount command to determine what the mount point is for the device "/dev/sr0" which is a device type of iso9660:

    mount

    In the response that is returned from the mount command, look for text similar to the following:

    /dev/sr0 on /media/cdrom type iso9660

    On my server, I get the following response from the mount command:

    /dev/sr0 on /media/cdrecorder type iso9660

    This means the CD is mounted and its mount point is /media/cdrecorder.

  • From the terminal/shell prompt, change to the /media/&lt;device name> directory. For example:

    cd/media/cdrom. Or in the case of my server, cd/media/cdrecorder.

  • When you get to the mount point, get a directory listing and confirm that you see the contents of the CD-ROM Disc. The command for listing files is ls. (See the Common Linux Commands table.)

    If your CD is not mounted, troubleshoot and try to mount the CD in the Control Center utility by taking these steps:

  • Select the Start Application icon.

  • Select Control Center.

  • Select Information from the Control Center.

  • Select Block Devices.

  • Determine the mount point that is mapped to /dev/sr0.

  • Mount /dev/sr0 from the Control Center.

Working with a *.TAR.GZ File

SUSE LINUX Enterprise Server comes with a GUI-interface utility called "Ark" that can un-archive or unzip *.TAR.GZ files. Ark does not need much explanation because it's easy to use.

  1. Find the Ark utility under Start Application | System | Tools | Ark.

  2. Within Ark, browse to the *.TAR.GZ file.

  3. Select Action | Extract and define a location to which you'll unzip the file on the Linux server. For example, /gw651sdd.

Install the GroupWise 6.5 for Linux Agent Software

This is the easiest part of this process. The GroupWise Agent installation is wizard-driven with a GUI installation. Following are steps for installing the GroupWise Agent software.

  1. Open up a terminal/shell session.

  2. Go to either the mount point on the CD-ROM Disc or the place where you extracted the TAR.GZ file. For example you might type in the command:

    cd /mount/cdrom

    or if the contents of the TAR.GZ file are in a directory called gw651sdd:

    cd /gw651sdd
  3. You should have a file named "install". Execute install by typing the command:

    ./install
  4. A GUI install screen comes up. Select Install Products and then GroupWise Agents and then Install GroupWise Agents. Let the wizard install the GroupWise 6.5 for Linux agent.

  5. After the agents have been installed, select Configure GroupWise Agents.

  6. Proceed through the wizard and configure the path to the post office. (See Figure 4.)

Use the wizard to configure the GroupWise 6.5 for Linux Agent.

Figure 4

Run the GroupWise 6.5 for Linux Post Office Agent Software

The GroupWise 6.5 for Linux Post Office Agent (POA) software can be run in a couple of different ways. When you first run the POA, it's best to load the POA so you can see the POA's user interface. Load the POA with command line parameters at first without using a startup file. Then as you've confirmed that the POA will load, you can rely on more automated methods for loading the GroupWise 6.5 POA on Linux. Here are the steps I first used to load my GroupWise POA for the ITSPO post office.

  1. Open up a terminal/shell session.

  2. Type a special command to allow a GUI application to launch from a terminal/shell session:

    xhost + localhost

Note: If you get an error when using the xhost command or when you go to load the GroupWise POA, and the GUI screen doesn't come up, try the following:

  1. In the terminal session, switch to the user gwadmin:

    su gwadmin
  2. Enter the command: xhost + localhost

  3. Log back in as root with the su root command. This procedure generally clears up problems using the xhost command.

  4. Change to the /opt/novell/groupwise/agents/bin directory:

    cd /opt/novell/groupwise/agents/bin
  5. Type the command to run the POA allowing it to show its interface. Add the switch to tell the POA the home location of the post office and use the ampersand symbol to tell the POA to run in the background:

    ./gwpoa -show -home /home/gwadmin/itspo &

    You should get a screen similar to the one shown in Figure 5. If you get errors about the ngwguard.dc file, read the note earlier in this article on how to fix this error.

  6. Once you have confirmed that the POA will load correctly, bring it down, and load it using a startup file. When you installed and configured the POA from the installation wizard, it created a startup file in the /opt/novell/groupwise/agents/share directory. In our example, the ITSPO.poa startup file was created in the /opt/novell/groupwise/agents/share directory. Use the following syntax to incorporate this file into the run command of the POA. It is assumed that the current directory is /opt/novell/groupwise/agents/bin:

    ./gwpoa -show @../share/ITSPO.poa &

The GroupWise 6.5 for Linux Post Office Agent software can be run with command line parameters or from a startup file.

Figure 5

If the Linux server is re-booted, the GroupWise POA will still come up without any effort on your part. The GroupWise Agent installation made a load script called "grpwise" which is in the /etc/rc.d directory. A symbolic link (like an alias) to the load script is placed in the /etc/rc.d/rc5.d directory. The name of the symbolic link in the .../rc5.d directory is "S99grpwise." Scripts referenced in the .../rc5.d directory are automatically run when the server boots up. However, when the POA loads from the script file, you can't see its GUI interface. So in order to see evidence of the POA, use the "ps" command which shows loaded processes. Use the following ps command syntax to find the instances of the GroupWise POA that are running:

ps -eaf | grep gwpoa

On my server, there was a listing of several GWPOA processes, with their process id (pid). See the example of the first couple of lines that are listed:

root 1178 1 2 15:46 pts/1 00:00:00 ./gwpoa ....
root 1179 1 2 15:46 pts/1 00:00:00 ./gwpoa ....
root 1180 1 2 15:46 pts/1 00:00:00 ./gwpoa ....

By issuing the kill command on the first instance of the GWPOA, I can terminate the GroupWise POA. Following is the kill command I used to bring down the GroupWise 6.5 POA for Linux, referencing the pid for the first instance of the GroupWise POA:

kill 1178

And if you want to start the GroupWise POA again without the GUI interface, go to the /etc/rc.d/rc5.d directory and enter the following command:

./S99grpwise

Now that you've created the post office, you can create a test user and test logging in with any one of the GroupWise clients listed at the beginning of this article. You can also monitor the GroupWise POA on the Linux server from a Web browser using the HTML monitoring interface built into the POA.

*Summary

GroupWise 6.5 agents look familiar to those who have already administered groupwise. between the commands in the linux primer in this article and a little bit of practice you'll find that implementing groupwise on the linux platform is simple-and fun!

Common Linux Terminal/Shell Commands


Task
Command
Examples
DOS Equivalent

list the contents of a directory

ls

List all files in a directory: ls

List all files in a directory which start with "gw": ls gw*

List all files and their sizes in a directory: ls -s

List files in a directory with verbose information

about the files: ls -la

dir or dir gw*

print the name of the current working directory

pwd

List the name of the current directory: pwd

chdir

change directory

cd

Change to the root directory: cd /

Change to the /etc directory: cd /etc

cd/ or cd/etc

make a directory

mkdir

Make a directory called "dir1": mkdir dir1

md dir1

delete/remove a directory

rmdir

Delete or remove a directory called "dir1": rmdir dir1

rd dir1

read a file and display it on the screen

cat

View the contents of file.txt: cat file.txt

The file has a lot of text that scrolls by and you want to view it screen by screen:

cat file.txt | more

type or type file.txt | more

find a file or directory

find

Find the "file2.txt" file that is located somewhere on your Linux server:

find / -name file2.txt

Find the "Novell" directory that is located somewhere on your Linux server: find / -name Novell

No direct equivalent DOS command

move a file to a new path

mv

Move the "file.txt" file from the /temp directory to the /etc directory: mv /temp/file.txt /etc

move /temp/file.txt /etc

rename a file

mv

Rename the "file.txt" file to "test.txt": mv file.txt test.txt

ren file.txt test.txt

delete/remove a file

rm

Delete/remove the "file.txt" file: rm file.txt

del file.txt

break out of a process

Ctrl-c

You used a command and now you want to break out of it:

Hold down the Ctrl key and the c key.

Ctrl-c

clear the screen

clear

Clear the current terminal screen: clear

cls

find a command that will help you to do something, but you don't know the name of the command

apropos

Find commands related to creating a zip file: apropos zip

The help command is somewhat like apropos

print help information regarding a command

--help

Many shell-based utilities (not all) will print a help screen by adding the --help switch to the end of the command. For example: ls --help

/?

Sometimes there's just too much information or text coming at you. The "grep" command helps you filter the information.

(See example)

Find commands related to zip files, but with specific mention to "gz": apropos zip | grep gz

No direct equivalent DOS command

Checking Post Offices on a Linux Server with GWCHECK

The GroupWise 6.5 for Linux Post Office Agent can run Mailbox/Library Maintenance (GWCHECK) jobs that you issue from ConsoleOne. But on the occasions when you need to run a stand-alone GWCHECK, you should run the Linux-based GWCHECK for post offices housed on a Linux server. GWCHECK should be installed right on the Linux server that houses your GroupWise post office. Here are the steps for installing, and starting GWCHECK on a Linux server.

  1. Make sure that a GroupWise 6.5 for Linux CD or Software Distribution Directory is accessible from the Linux server.

  2. Open a terminal/shell session on the Linux server.

  3. Using the cd and ls commands navigate to the /admin directory on the GroupWise 6.5 for Linux CD or the GroupWise 6.5 for Linux Software Distribution Directory.

  4. In the /admin directory issue the ls command to locate the *.rpm that is used to install the GroupWise 6.5 GWCHECK software. For example the name of the file might be:

    groupwise-gwcheck-6.5.1.i386.rpm.

    Note: An *.rpm file is an installation file created using the Redhat Package Manager format. The *.rpm file format is a popular installation file format for Linux, somewhat like the InstallShield format on the Windows platform.

  5. To install the *.rpm file, use the rpm command with the install, verbose, and progress hash mark switches as shown:

    rpm -ivh &lt;filename.rpm>.

    For example:

    rpm -ivh groupwise-gwcheck-6.5.1.i386.rpm
  6. The GroupWise GWCHECK software is installed to the /opt/novell/groupwise/gwcheck/bin directory. The executable name is:

    gwcheck. Use the ./ parameter to run the gwcheck code.

    For example:

    ./gwcheck

When you run gwcheck you will get the Mailbox/ Library Maintenance (GWCHECK) configuration interface similar to the Windows GWCHECK interface, as shown in the figure below.

* Originally published in Novell Connection Magazine


Disclaimer

The origin of this information may be internal or external to Novell. While Novell makes all reasonable efforts to verify this information, Novell does not make explicit or implied claims to its validity.

© Copyright Micro Focus or one of its affiliates