[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

19990402: McIDAS Build (Configuring User Accounts)



>From: jannis <address@hidden>
>Organization: UCSD
>Keywords: 199903260203.TAA10824 McIDAS-X 7.50

Jeff,

>1) The build MCX was successful, but I've encountered a problem while trying
>to configure a user account.
>
>Specifically, I am having trouble at the "Copying needed files" section:
>
>"~mcidas/admin/userdata" is not present.  Is there an obvious reason for this?

No, there is no obvious reason for this.  I checked the distribution
and userdata is contained in the mcidas7.5/src directory.  I then
checked makefile and see that it is properly listed in the roster for
files that are to be linked to the $McINST_ROOT/admin directory.  If
your installation target (i.e. McINST_ROOT directory) was /home/mcidas
(i.e. the home directory of 'mcidas' whatever that happens to be), then
a 'make install', 'make install.mcx', 'make install.all' would have
linked userdata to $McINST_ROOT/admin.

>2) I am also having trouble installing the ADDE Remote server:
>I have been trying and trying this shell script "sh ./mcinet7.5.sh install 
>mcadde" but I'm wondering if I have the mcadde account set up correctly.  It
>was a bit unclear just how to set up the mcadde account. 

I am suprised by your comment that the instructions were unclear.  The
'mcadde' account should:

o have the same home directory as the user 'mcidas'
o it should not be a login account (i.e. its default shell should be
  /bin/false)
o it must be in the same group as 'mcidas' and 'ldm'

That is pretty much all that there is to setting where the account should
be.  There are a couple of more steps needed to configure 'mcadde's account:

o setup ~mcadde/.mcenv (the same as ~mcidas/.mcenv)
o run mcinet7.5.sh as 'root'

>From etc/passwd:
>  mcidas:/vfzsz4VLhRRI:2000:20:mcidas:/disk4/usr2/mcidas:/bin/csh
>  mcadde:*:3000:20:mcadde:/disk4/usr2/mcidas:/bin/csh

OK, this looks good except for the fact that 'mcadde' should have no login
shell.  The last entry for 'mcadde' in passwd on your system should look
like:

mcadde:*:3000:20:mcadde:/disk4/usr2/mcidas:/bin/false

You can edit /etc/passwd as 'root' and change this easily.

>jedac 3# cd ~mcidas
>jedac 4# sh ./mcinet7.5.sh install mcadde
>mcinet7.5: /etc/services: mcserv already set up
>mcinet7.5: /etc/services: mccompress already set up
>mcinet7.5: /etc/inetd.conf: mcserv already set up
>mcinet7.5: /etc/inetd.conf: mccompress already set up
>mcinet7.5: telling inetd to reread its configuration
>mcinet7.5: waiting for inetd to reread its configuration
>mcinet7.5: WARNING: inetd not listening
>Try running the script again in a few minutes.
>mcinet7.5: WARNING: inetd not listening on compress port
>Try running the script again in a few minutes.

The first messages are telling us that the entries for the ADDE remote
server are already in /etc/services and /etc/inetd.conf.  Why inetd
is not paying attention to the HUP signal that is being sent to it
is unknown.  You should verify that the entries have been put in
/etc/services and /etc/inetd.conf by doing a simple 'cat' of them.
The entries should be at the end of the files.  You should then
next do:

o ps -eaf | grep inetd
o kill -HUP <pid_of_inetd>

This is all that mcinetd7.5.sh is doing for you, but running the above
by hand will allow you to see any error messages that may be issued.
All of this, of course, must be done as 'root'.

If you can't get inetd to pay attention to the HUP signal, you will
probably have to reboot.


>Again, here is the machine and password...

I logged in to verify that the entries have been added to /etc/services
and /etc/inetd.conf:

cat /etc/services
 ...
mcserv          500/tcp      # McIDAS ADDE port
mccompress      503/tcp      # McIDAS ADDE compression port

cat /etc/inetd.conf
mcserv  stream  tcp     nowait  mcadde  /disk4/usr2/mcidas/bin/mcservsh 
mcservsh -H /disk4/usr2/mcidas
mccompress      stream  tcp     nowait  mcadde  /disk4/usr2/mcidas/bin/mcservsh 
mcservsh -H /disk4/usr2/mcidas

These look good.

Since I don't have 'root' access, I can't send a HUP signal to inetd, so
I can't tell it to reread its configuration file, /etc/inetd.conf.

While on your machine, I decided to see if ~mcidas/.mcenv and 
~mcidas.cshrc were setup correctly.

cat .mcenv
umask 002
MCDATA=/disk4/usr2/mcidas/workdata
MCPATH=${MCDATA}:/disk4/usr2/mcidas/data:/disk4/usr2/mcidas/help
MCGUI=/disk4/usr2/mcidas/bin
MCTABLE_READ="/disk4/usr2/mcidas/mcidas/data/MCTABLE.TXT"
MCTABLE_WRITE="/disk4/usr2/mcidas/mcidas/data/MCTABLE.TXT"
PATH=${MCGUI}:$PATH
export MCDATA MCPATH MCGUI MCTABLE_READ MCTABLE_WRITE PATH
cd $MCDATA

This looks correct.

cat .cshrc
 ...
setenv McINST_ROOT /disk4/usr2/mcidas/mcidas

if ( ! ${?MCPATH} ) then 
  setenv MCDATA /disk4/usr2/mcidas/workdata
  setenv MCPATH ${MCDATA}:/disk4/usr2/mcidas/data:/disk4/usr2/mcidas/help
  setenv MCGUI /disk4/usr2/mcidas/bin
  setenv MCTABLE_READ "${MCDATA}/MCTABLE.TXT;/disk4/usr2/mcidas/data/ADDESITE.TX
T"
  setenv MCTABLE_WRITE "/disk4/usr2/mcidas/data/ADDESITE.TXT"
  setenv XCD_disp_file $MCDATA/DECOSTAT.DAT
endif
setenv PATH ${MCGUI}:$PATH

The definition of McINST_ROOT now appears to be incorrect.  It should
be /disk4/usr2/mcidas.

I suspect that the incorrect definiton of McINST_ROOT is the cause of
'userdata' not being installed.  I verified that 'userdata' is in your
~mcidas/mcidas7.5/src directory and that the rule for installing it is
in 'makefile'.  I then decided to do a 'make install' to see what would
happen:

cd mcidas7.5/src
make install
make: ERROR: no directory: /disk4/usr2/mcidas/mcidas/bin
make: ERROR: no directory: /disk4/usr2/mcidas/mcidas/lib
make: ERROR: no directory: /disk4/usr2/mcidas/mcidas/tcl
make: ERROR: no directory: /disk4/usr2/mcidas/mcidas/lib/gui
make: ERROR: no directory: /disk4/usr2/mcidas/mcidas/inc
make: ERROR: no directory: /disk4/usr2/mcidas/mcidas/data/tutorial
make: ERROR: no directory: /disk4/usr2/mcidas/mcidas/savedata
make: ERROR: no directory: /disk4/usr2/mcidas/mcidas/workdata
make: ERROR: no directory: /disk4/usr2/mcidas/mcidas/help
make: ERROR: no directory: /disk4/usr2/mcidas/mcidas/admin
make: ERROR: no directory: /disk4/usr2/mcidas/mcidas/man
make: ERROR: no directory: /disk4/usr2/mcidas/mcidas/man/man3
make: If your environment is OK, try 'make rootdirs'
*** Error code 1 (bu21)

OK, the problem _is_ that McINST_ROOT has been incorrectly defined
to be /disk4/usr2/mcidas/mcidas.  I edited ~/.cshrc and corrected
McINST_ROOT:

vi ~/.cshrc
setenv McINST_ROOT /disk4/usr2/mcidas
source ~/.cshrc

I next saw that nothing had been installed in ~mcidas/bin, ~mcidas/help,
etc.  This goes along with the incorrect definition of McINST_ROOT.
I thought that McINST_ROOT had been correctly defined before you did
the build.  If it was not (i.e. if it was defined as it is now), the
Tcl/Tk build will have to be redone (since the location of the Tcl/Tk
libraries and init files is "burned" into Tcl/Tk executables.

I decided to proceed with an install to see if the Tcl/Tk stuff needs
to be redone:

make install.all
 ...

After doing this, 'userdata' is in ~mcidas/admin; the McIDAS executables
are in ~mcidas/bin; etc.

After doing the install, I decided to see if the Tcl/Tk stuff needed to
be remade.  I did this by starting up a McIDAS session with display
back to my machine here at Unidata:

rehash
mcidas config

(I noted that the McIDAS configuration file ~mcidas/.mcidasrc had already
been created, so I could try bringing up my GUI straight off).

This worked fine, so the Tcl/Tk stuff apparently does not have to be
redone.

I did note, however, that the 'mcidas' account does not have any
REDIRECTions setup for it, so it looks like there is a little more
configuration that must be done.

Lastly, I verified that inetd has not reread its configuration file by
doing the following from a machine here at Unidata:

telnet jedac.ucsd.edu 500
Trying...
telnet: connect: Connection refused

This shows that inetd does not yet know that it is supposed to service
requests on port 500 (and port 503 for compressed ADDE transfers), so
it verifies that the HUP to inetd failed for some reason.

If sending a HUP to the inetd process does not work "by hand", then try
rebooting your machine.  If these don't work, I will need 'root' access
to your machine to troubleshoot.

Tom

>From address@hidden  Fri Apr  2 12:12:27 1999
Thanks for fixing the problems.  The problem with port 500 was also fixed after 
reboot.

I'm assuming that the REDIRECTions setup is covered under the sections:
  Configuring McIDAS-X sessions with .mcidasrc
  Registering MD file schemas
  
I haven't run through these yet.
  
  -Jeff