Net.digest summarizes helpful
technical discussions on the comp.sys.hp.mpe Internet newsgroup and
3000-L mailing list. Advice here is offered on a best-effort, Good
Samaritan basis. Test these concepts for yourself before applying
them to your HP 3000s.
No one knows what the next few months will bring. Possibilities include OpenMPE, MPE licensed to some third party, nothing, or something else not even thought of yet. As always, Ill try to keep this column and Hidden Value relevant and timely by reporting on issues of interest as they come up on 3000-L.
As always, I would like to hear
from readers of net.digest and Hidden Value. Even negative comments
are welcome. If you think Im full of it or goofed, or a
horses behind, let me know. You can reach me at email@example.com.
Following Black Wednesday there has been renewed interest in the HFS file system (POSIX.1) and the shell (POSIX.2) as a way to become familiar with the concepts underlying various flavors of Unix, here called *nix. A number of posts dealt with the basics of Posix on MPE/iX, so Ill try to put everything together in a how-to-get-started with Posix section.
Posix (Portable Operating System Interface) support was first added to MPE in release 4.5 and was deemed important enough that it occasioned a name change from MPE/XL to MPE/iX. Posix support led to the porting of gnu, which enabled the ports of Apache, Samba, Bind, Syslog, etc. and, arguably, extended the life of MPE. All *nixes are POSIX.1- and POSIX.2-compliant, so if you do not already have a Unix or Linux system handy, you can start your learning on good old MPE/iX.
Starting with MPE/iX 5.0, HP has included a really nice Computer Based Training (CBT) module on the Hierarchical File System (HFS). This is where your journey should begin:
The following is an example from the training (I wonder if the correct answer is different today?):
Before we proceed, lets stop to ask a question, just to ensure youve got the fundamental idea. Which of the following statements best summarizes the reason why HP has brought Posix-compliant interfaces to the MPE/iX operating system and the HP 3000?
A. Posix is the first step in HPs plan to move all HP 3000 users to Unix
B. Posix is a tool that HP is using to bring new applications to MPE from the Unix environment.
C. Posix is a piece of software that HP is using to eventually combine the HP 3000 and the HP 9000 into a single system.
Once you are comfortable with the HFS, it is time to venture into the land of the shell. The shell is just a program (sh.hpbin.sys) that gives you the look and feel of a *nix system. If youve catalogued the UDC file HPPXUDC.PUB.SYS, then all you need to do to get in the shell is type sh at a colon prompt. If you have not catalogued the UDC file, then enter the shell with the command :xeq sh.hpbin.sys -L
The -L is critical. This says initialize the environment by executing the script: /etc/profile. To see what this does, before going into the shell for the first time, display it with :print /etc/profile
This script sets various environment variables used to customize the shell experience such as terminal type (TERM) and also sets tabs. It is strongly recommended that you not modify this file since it will be overwritten on an OS update. If you want to further customize your experience for your entire system, create a file /etc/profile.local with your customizations in it. The last thing /etc/profile does is execute the /etc/profile.local if the file exists. You can further customize your personal experience by creating a file .profile in your home directory. For example, my .profile file contains export PS1=[!] $PWD $ which sets my prompt to the command history number in square brackets followed by the current working directory:  /SYSADMIN/PUB $
All in good time, though; for now, the defaults will suffice. The shell contains an online manual of just about everything. Because this is Posix, and therefore perverse, it is called the man pages instead of help. The command is man something where something is what you want information about. Try man man and man sh. [Hint: the space bar or page down key will cause the next page to be displayed. q will quit the man subsystem.]
The shell can easily be confusing. For example, the following three commands all do the same thing, display a file one page at a time:
$ cat filename | more
$ more < filename
$ more filename
Let man be your friend.
Some references: MPE/iX Shell and Utilities Reference Manual Vols 1&2 (Manual Part # 36431-60001). This two-volume tome presents the man pages in print form. This is available in PDF form at docs.hp.com and on the documentation CDs.
MPE/iX Shell and Utilities Users Guide (Manual Part # 36431-90002). This is a great collection of tutorials on various aspects of the shell. Unfortunately, it is only available in print form and cannot be found on docs.hp.com or any of the documentation CDs.
Try any of the *nix for Dummies or Teach Yourself *nix in 24 hours books, though you might want to order from one of the online stores to avoid the embarrassment of having your colleagues see you with it. Seriously, youve got to start somewhere, and these books are not a bad way to go.
You say youre ready to try some real *nix?
Youve mastered the Posix shell in MPE/iX and are ready to move on to a real *nix system. Of course, this assumes you do not already have a real *nix system. Where to start? There are at least two schools of thought, though both make use of Linux because it is inexpensive (or even free) and runs on relatively inexpensive Intel hardware.
Gavin Scott talked about his use of a product called VMware (www.vmware.com) to host multiple operating systems, one of which is Red Hat Linux (www.redhat.com), simultaneously on one PC. This is particularly good if you are space-limited or just dont want the hassle of dealing with multiple physical machines. VMware does require a fairly robust PC (at least a 400 MHz processor and 256Mb RAM) and is far from free ($329 list for the full product with documentation). You can download a free demo version, however, to test if this is the way for you.
What Ive done is take my current generation-minus one PC (it was just taking up space in a closet anyway) and load Red Hat Linux on it. As long as you have a decent video card for X-Windows and enough memory (I have 128Mb, but 64Mb would probably be okay), even a P-133 system makes an adequate Linux test machine. If youre doing this at home and have broadband service, throw in one of the many firewall/routers (I use Linksys), a keyboard/mouse/monitor switch box and you can have a nice little two-machine home network with both machines having Internet access. Add free QCTerm to your Windows PC and you can telnet to your Linux system for added fun. If I did not already have a spare PC then I would probably go the VMware route rather than buy a PC just to try out Linux.
[Hint: If you are using QCTerm to access a Linux system, you will need to set the tabs in QCTerm and the TERM environment value for the display to look correct. The command tset (in the MPE/iX Posix shell it is tabs, go figure) will set the tabs appropriately, and Ive found that export TERM=hp2392 works fine for a terminal definition. These can be set either in your logon script or profile.]
What does this mean, and should I worry?
If not a worry, can I disable these console messages?
** NS/3000 NetIPC ERROR IN VT; Job: #S64; PIN: 270; Info: 1
- Error: 42;
This question comes up often enough on 3000-L I thought it was time to put it to bed once and for all. Fortunately, James Hofmeister of the Worldwide Technology Network Expert Center cooperated by posting the definitive answers.
If you logon on with :hello and logoff with :bye with NS-VT you get:
1:04/#S7/51/LOGON FOR: JPH56426,MANAGER.SYS,WORK ON LDEV #4.
1:04/#S7/51/LOGOFF ON LDEV #4.
If you logon with :hello and do not logoff, but instead [x] the terminal emulator window:
1:01:05/#S8/51/LOGON FOR: JPH56426,MANAGER.SYS,WORK ON LDEV #4.
1:05/#S8/51/LOGOFF ON LDEV #4.
** NS/3000 NetIPC ERROR IN VT; Job: #S8; PIN: 64; Info: 1
- Error: 42;
This is true with NS-VT and not with Telnet. I would not recommend turning this logging message off for two reasons:
1) Turning off class 5 in NS-Services will turn off all NETIPC errors returned to the console for NS-Services.
2) The same error 42 is reported in the case of a Duplicate IP address.
The best I can recommend is to train your users to not [x] an NS-VT window but instead logoff with :bye or to ignore the Error: 42 message on the console unless troubleshooting a specific problem. Oh yes, you could use Telnet instead of NS-VT to avoid the message.
Thanks, James. I would note that x-ing out of a VT terminal emulator session while in block mode used to be the principal cause of hung sessions. While this appears to have been fixed for the most part, it is still best to avoid this situation with user training.
Copyright The 3000 NewsWire. All rights reserved.