As a note, all commands that install something will need to be done as effective user "root". You can "sudo" your way there or just "su -"; your choice. Please take some time to
sanely setup a build environment on another box (if possible/practical).
This article is a follow up to a previous post on How to get a Digi Edgeport/416 working with RHEL/CentOS 5
Here is the Digi Portserver II overview from Digi. Nice starting point for information.
Here is the Driver download page if the overview is too much reading.
For even less effort you can get the latest stable kernel driver this way:
wget ftp://ftp1.digi.com/support/driver/40002086_P.src.rpm
or grab the beta code like I did:
wget ftp://ftp1.digi.com/support/beta/linux/dgrp/dgrp-1.9-29.src.rpm
To build the kernel module, you will need a few prerequisite packages. These are the ones that got me what I needed. You may need more or less depending on what you already had installed:
yum -y install ncurses-devel openssl-devel rpm-build kernel-headers
rpmbuild --rebuild dgrp-1.9-29.src.rpm
Install the built dgrp-1.9-29.i386.rpm with rpm or yum. You could choose to reboot or more simply just run
modprobe dgrp
If you just want the command line setup for the tty ports under /dev/, you can run something like:
/usr/bin/dgrp/config/dgrp_cfg_node init -v -v -e never 1 IP_OR_HOSTNAME 16
If you prefer a GUI setup and have tk and xorg-x11-xauth at least installed:
/usr/bin/dgrp/config/dgrp_gui
Finding firmware version of your Digi Portserver II to tell if you need a firmware update:
telnet IP/hostname #> cpconf term
May show something like:
# PortServerII Version 3.1.13 Nov 1 2006
Post dgrp driver setup with udev if you need:
For wide open perms edit /etc/udev/rules.d/10-dgrp.rules and change the line from
KERNEL=="tty_dgrp*", PROGRAM="/usr/bin/dgrp_udev %k", NAME="%c"
to
KERNEL=="tty_dgrp*", PROGRAM="/usr/bin/dgrp_udev %k", NAME="%c", MODE="0666", OPTIONS="last_rule"
For just group perms change to group "uucp" for example, alter original line from
KERNEL=="tty_dgrp*", PROGRAM="/usr/bin/dgrp_udev %k", NAME="%c"
to
KERNEL=="tty_dgrp*", PROGRAM="/usr/bin/dgrp_udev %k", NAME="%c", MODE="0660", GROUP="uucp"
A quick way to see all of the dev files created by the dgrp driver is the default major number 253 is kept:
ls -la /dev/|grep " 253"
Make sure the dgrp kernel module is loaded:
lsmod|grep dgrp
On a sad note, following these instructions will only create a kernel module for the current kernel. You will need to do rebuild on the dgrp package on any kernel update... sorry I have not yet incorporated kmod or DKMS for a dynamic module build. There is hope for me if would just try THIS link, however.
Hi, I'm trying to compile this module to supports DKMS but I find many problems. You finally get it? I am using Ubuntu 8.04 but I think the problems come from the DKMS not the distribution. Let's see if we are lucky and can help me.
ReplyDeleteApologies for my English!
Thank you.
PJW -
ReplyDelete*So* appreciate that you took the time to set this down. It saved me hours of configuration and setup time for my Digi TS 4 Portserver (not your model, but the setup is so close - thank you Digi - that everything worked exactly as you laid it out for your box).
Thank you.
Glad I could help!
Delete