========================================================================= Tru64 UNIX FAQ ========================================================================= ============== Overview ============== The term "Alpha" generally refers to systems based on the COMPAQ Alpha processor. Unless otherwise specified, these answers refer to COMPAQ Tru64 UNIX 4.0 and above, which are the current releases. "Tru64 and Digital UNIX" are used interchangeably in this FAQ. They are also used for earlier versions which call themselves DEC OSF/1. World-Wide Web Universal Resource Locator (URL) notation is used for FTP addresses. Many people have contributed to this list, directly or indirectly. In some cases, an answer has been adapted from one or more postings on the comp.unix.ultrix or comp.unix.osf.osf1 newsgroups. Our thanks to all of those who post answers. The name (or names) at the end of an entry indicate that the information was taken from postings by those individuals; the text may have been edited for this FAQ. These citations are only given to acknowledge the contribution. The editors of this FAQ are not employees of COMPAQ Computer Corporation. This posting does not represent an official statement from COMPAQ Computer Corporation. AlphaGeneration, AlphaServer, AlphaStation, Alpha AXP, AXP, DEC, DECstation, DECsystem, OpenVMS, ULTRIX, VAX and VMS are trademarks of COMPAQ Computer Corporation. OSF/1 is a registered trademark of the Open Software Foundation. UNIX is a registered trademark in the United States and other countries, licensed exclusively through X/Open Company Ltd. Other names are properties of their respective owners. Thanks to Steve Lionel, COMPAQ Fortran group, for allowing us to take over his work on the FAQ. We welcome and solicit contributions. This is your FAQ and we want it to reflect the knowledge and cooperation of the worldwide Tru64 UNIX community. Please send FAQ updates, comments and additions to faq@tru64.org. Ken Farmer kfarmer@tru64.org www.tru64.org Last updated: Jun 25, 2001 Programming 4 - Added Insure++ ============= General Notes ============= =========== Topic Index =========== Alpha ========================================================================= 1. What does the AXP in "Alpha AXP" mean? 2. Where can I get Emacs and Epoch for Digital UNIX? 3. Where can I get technical information about Alpha? 4. Where can I get updated console firmware, patches, etc., for AlphaServer systems? 5. Where can I find a gcc binary for Tru64? Graphics ========================================================================= 1. How can I make the graphics go faster? 2. Where can I get an xv that works on Digital UNIX? 3. How do I get an xdm session as root? 4. How do I allow xdm sessions at C2 security? Hardware ========================================================================= 1. Where can I get information about Alpha chips? 2. What are the pinouts of the MMJ jacks? 3. Where can I get a disktab entry for the XXX disk? 4. How can I read/write MS-DOS floppy disks? 5. How can I get disktab information for a new disk? Misc ========================================================================= 1. Where else is Digital UNIX discussed? 2. How do I add a new terminal definition? 3. How do I boot to single-user mode? 4. I heard that OSF is dropping OSF/1. What does that mean for Digital UNIX? 5. How can I read VMS BACKUP tapes on a UNIX machine? 6. How do I contact Digital Customer Relations? 7. How do I get an ESC (escape) character on a DEC keyboard? 8. Where can I read announcements from Digital? 9. Where can I get performance information about Digital products? 10. How do I report security problems to Digital? 11. How do I deal with the swap file filling up? 12. How do I deal with login problems? 13. How do I figure out what version of Digital UNIX I have? 14. Are there any Tru64 web sites? 15. How do I free disk space for an update installation? 16. Why doesn't deleting individual system files free space for an update installation? 17. How do I tune my system for use as a web server? 18. Why does dxaccounts tells me that the password and group files are locked? Network ========================================================================= 1. Why doesn't FTP work to an XYZ system? 2. How do you use a NFS-mounted /usr filesystem on Digital UNIX? 3. Where can I get rstatd for Digital UNIX? 4. How do I switch between the AUI and 10 Base-T Ethernet ports? 5. Where can I get multicast software for Digital UNIX? 6. What's wrong with xdr_long in the Digital UNIX XDR routines? 7. How do I configure the Berkeley Packet Filter and capture tcpdump traces? 8. How do I switch to full duplex 100mb? Printing ========================================================================= 1. Printcap filter syntax example 2. TCP/IP Network Printing using socket connection 3. Parallel port connection 4. Serial Port connection 5. Network lpd remote printing 6. Network printers using lpd remote connection 7. Print filters 8. Postscript printer filter 9. Generic text printing 10. HP PCL printing 11. DEC ANSI printers 12. Selecting print filters 13. Printing postscript files on a non-postscript printer Programming ========================================================================= 1. What tools will help me port software to Digital UNIX? 2. Why can't I run dbx? 3. Why do my applications not work after I upgrade to a new version of Digital UNIX? 4. Where can I get a debugging malloc that works on Digital UNIX? 5. What's with 'ld: unresolved symbols: dnet_conn'? 6. How can I tell what program generated a core file? 7. What does "unaligned access" mean, and how can I fix it? 8. What about "unaligned access" in FORTRAN programs? 9. How can I get microsecond resolution from gettimeofday(2)? Security ========================================================================= 1. How do I authenticate users on Tru64 UNIX? Software ========================================================================= 1. What (free) tools are there for looking at system behavior? 2. How can I figure out what files translated binaries are looking for? 3. Where can I get a T-shell (tcsh)? 4. How can I use audio on AlphaStations and DECstations? 5. How do I play music CDs on CD-ROM drives? 6. Can I run binaries from RISC/ULTRIX on a Digital UNIX system? 7. Where are patches/updates for DIGITAL UNIX available from? 8. How do I move the license data when migrating to V5.0? =================== Questions & Answers =================== ========================================================================= Alpha 1 -- What does the AXP in "Alpha AXP" mean? ========================================================================= Nothing. It is part of the trademark. Digital is eliminating the use of "AXP" in new product names. ========================================================================= Alpha 2 -- Where can I get Emacs and Epoch for Digital UNIX? ========================================================================= Both a binary and sources for GNU Emacs are included on the base system CD-ROM. Epoch is available on the Alpha OSF/1 Freeware CD-ROM (see answer A1 for more information). GNU emacs 19.29 compiles for Digital UNIX "out of the box" ========================================================================= Alpha 3 -- Where can I get technical information about Alpha? ========================================================================= Sites, R.L., Ed., Alpha Architecture Reference Manual (2nd ed) (600 page book, 1995) from Digital Press (EY-T132E-DP) or Prentice-Hall , ISBN 1-55558-145-5). Digital Press has published "Alpha Architecture and Implementations" (Dileep Bhandarkar, author). The book provides a comprehensive description of all major aspects of Alpha systems. The book includes an overview of the history of RISC development in the computer industry and at Digital, the Alpha architecture, all the major processor chips, and system implementations. The book also covers RISC concepts, provides an overview of other RISC architectures, and descriptions of the new SPARC, MIPS, PowerPC, and PA-RISC microprocessors introduced in 1995. The book also discusses operating system porting issues, compiler techniques, and binary translation. Available from Butterworth-Heinemann (1-800-366-BOOK). Communications of the ACM, February 1993 issue (4 Alpha articles) Digital Technical Journal, Vol 4., No. 4 (200 pages of Alpha articles, including 4 above with fewer typos). Jim Montanaro "The Design of the Alpha 21064 CPU Chip" (42 minutes) Dick Sites and Dirk Meyer, "Alpha Architecture" (73 minutes) University Video Communications P.O. BOx 5129 Stanford CA 94309 USA (415) 813-0506 ========================================================================= Alpha 4 -- Where can I get updated console firmware, patches, etc., for AlphaServer systems? ========================================================================= There is a support page for Alphaservers. This area is accessible to both internal and external folks. The information includes firmware updates, the latest configuration utilities, software patches, a list of supported options, hardware documentation, and more. The WWW pages are located at: www.compaq.com/support/ ftp.digital.com/pub/DEC/Alpha/firmware/ Please send your comments and feedback to: alpha_server@service.digital.com ========================================================================= Alpha 5 -- Where can I find a gcc binary for Tru64? ========================================================================= For Version 4, and above, it is on the freeware cd. ========================================================================= Graphics 1 -- How can I make the graphics go faster? ========================================================================= If your application is sending lots of data (using, say, PutImage requests), try setting DISPLAY to local:0, which uses a shared memory transport between the client and the X server. ========================================================================= Graphics 2 -- Where can I get an xv that works on Digital UNIX? ========================================================================= XV 3.10a supports Digital UNIX. It can be obtained from: ftp://ftp.cis.upenn.edu/pub/xv xv is also included on the Freeware CD-ROM ========================================================================= Graphics 3 -- How do I get an xdm session as root? ========================================================================= Add the lines host:0 host.sub.domain:0 to the file /etc/securettys to allow root to login. ========================================================================= Graphics 4 -- How do I allow xdm sessions at C2 security? ========================================================================= If you get the error 'Cannot obtain database information on this terminal', Follow this advice from the Digital support people and change the files /etc/auth/system/ttys, /etc/auth/system/devassign and /etc/securettys as follows: In the following, replace host, host.sub.domain and n.n.n.n by the hostname, full domain name and IP address of the host(s) you are trying to connect from. Add lines like the following to /etc/auth/system/ttys : host\:0:t_devname=host\:0:t_xdisplay:t_login_timeout#0:chkent: Add lines like the following to /etc/auth/system/devassign : host\:0:v_devs=host\:0,host.sub.domain:0,n.n.n.n:0:v_type=xdisplay:chkent: Add lines like the following to /etc/securettys : host:0 host.sub.domain:0 At V4 (and by then the operating system is not called OSF but dUNIX or Tru64Unix), you can use wildcards for the X-terminal names and IP addresses, and must use the edauth command to operate on the databases. You could use the two commands: echo '*:*:t_devname=*:*:t_login_timeout#0:t_xdisplay:chkent:' | /tcb/bin/edauth -s -dt echo '*:*:v_type=xdisplay:chkent:' | /tcb/bin/edauth -s -dv to allow any X-terminals to connect and log in via xdm. ========================================================================= Hardware 1 -- Where can I get information about Alpha chips? ========================================================================= www.alpha-processor.com ========================================================================= Hardware 2 -- What are the pinouts of the MMJ jacks? ========================================================================= This describes the 6-pin modified modular jack (MMJ) used for serial ports on various Digital hardware. Digital carries four DB-to-MMJ adaptors. They are internally wired as follows Rdy Out TX+ TX- RX- RX+ Rdy In Adaptor Gender 1 2 3 4 5 6 Use with: -------------------------------------------------------------------------- H8575-A F 20 2 7 7 3 6&8 VTxxx terminal H8571-C M 6 3 7 7 2 20 Digital printer H8571-D M 6 3 7 7 2 20 Modem H8571-E M 20 2 7 7 3 6&8 Female terminal or LaserWriter -------------------------------------------------------------------------- RS-232 using DB-25 connectors: DTE DCE Terminal Modem or computer Pin Number Signal Name 2 TD Transmit Data -- 3 RD Receive Data ========================================================================= Hardware 3 -- Where can I get a disktab entry for the XXX disk? ========================================================================= newfs is smart enough to get the geometry of the disk from the drive, although this feature is not documented for all versions. Use newfs /dev/rrz#x /dev/rrz#x to do this. For most uses, you don't need a disktab entry on Digital UNIX. The disklabel command can get the default partition table and geometry from the disk driver and will put that in the label. When the label is present, newfs doesn't need a disktab entry either. A collection of contributed disktab entries is in /pub/DEC/ultrix-disktabs on the usual archive machines. Get a copy of the file for an up-to-date list. The disktab collection may also be used on Digital UNIX, but not all entries have been tested on all platforms. ========================================================================= Hardware 4 -- How can I read/write MS-DOS floppy disks? ========================================================================= If you have a floppy disk drive on your ULTRIX or OSF/1 system, get "mtools", a set of MS-DOS utilities for UNIX. The package can be copied from ftp://prep.ai.mit.edu/pub/gnu/mtools-2.0.7 It works on both DECstations and Alphas. When you build mtools, you need to find out which device your floppy is (/dev/rrz2c is common). Then you can clone the SPARC definitions, or #define SPARC and make /dev/rfd0c a symlink to the one you need. ========================================================================= Hardware 5 -- How can I get disktab information for a new disk? ========================================================================= For disks that do not have entries in the /etc/disktab file, the following disklabel command will query the disk itself for geometry information: disklabel -rw /dev/rrzXc unknown Where /dev/rrzXc is the device name of the disk. ========================================================================= Misc 1 -- Where else is Digital UNIX discussed? ========================================================================= You can join the tru64-unix-manager mailing lists. Send with: subscribe tru64-unix-managers in the body to Majordomo@ornl.gov [Dave Sill, de5@ornl.gov] Archives of tru64-unix-managers mailings are kept at: www.ornl.gov/cts/archives/mailing-lists/ Check out the news group comp.unix.tru64 ========================================================================= Misc 2 -- How do I add a new terminal definition? ========================================================================= Some applications on Digital UNIX use termcap; others use terminfo. tic(1) compiles a termcap definition for terminfo. It is best to add a new terminal definition both ways. ========================================================================= Misc 3 -- How do I boot to single-user mode? ========================================================================= boot -fl s -fl specifies the flags to the booted image. ========================================================================= Misc 4 -- I heard that OSF is dropping OSF/1. What does that mean for Digital UNIX? ========================================================================= [The following is a "position statement" on this subject from Digital] As part of its reorganization in March of 1994, the Open Software Foundation announced transition plans for its existing technologies. It has been well understood since then that the June 1994 release of OSF/1, the OSF's operating system source code, would be the last. The possibility remains open that OSF sponsors may choose to fund additional work in the operating system area, but no projects are underway. It is important to understand what OSF/1 is and has always been. It is not a finished operating system but a set of operating system technology components, from which vendors can pick and choose pieces of technology that complement their product development strategies. Many UNIX system vendors use elements of OSF/1 code -- Hewlett-Packard in HP-UX, IBM in AIX, and many others, including Digital in Digital UNIX. Digital uses components of OSF/1 technology, just as it integrates technology from other suppliers with its own internal development. By following this strategy of integrating needed components, Digital has been able to produce the best implementation of the UNIX operating system in the industry and to bring it to market quickly. Since the initial releases, development of Digital's product has not been dependent on OSF code. Digital's plans for the future development of Digital UNIX are fully under Digital's control, and our plans for a fully SPEC 1170 compliant version, UNIX clusters, and other leading commercial enhancements are on course. ========================================================================= Misc 5 -- How can I read VMS BACKUP tapes on a UNIX machine? ========================================================================= There is a utility called vmsbackup to do this. Earlier URLs for this software are now invalid - the following is part of a set of FreeBSD ports - it may or may not work on other UNIX systems. www.ee.freebsd.org/ports/emulators.html#vmsbackup-3.0 Vbackup is a commercial product which can read and write VMS-compatible BACKUP savesets. www.bbc.com/vbackup.htm ========================================================================= Misc 6 -- How do I contact Digital Customer Relations? ========================================================================= If you are having a problem dealing with Digital that you cannot satisfactorily resolve through your local Digital office, please contact US Customer Relations at: Internet: response@mkots3.enet.dec.com Phone: 800-DEC-INFO or 603-884-0915 FAX: 603-884-4692 Mail: US Customer Relations Digital Equipment Corporation Digital Drive, MKO2-2/D15 P.O. Box 9501 Merrimack, NH 03054-9501 Non-US customers may also use these contacts; information will be directed to the appropriate corporate office. Please include your name, organization, address, phone number and Internet address in all correspondence. ========================================================================= Misc 7 -- How do I get an ESC (escape) character on a DEC keyboard? ========================================================================= 1. Use F11 on the LK201 or LK401 (in most keyboard modes). 2. Use Ctrl-[ (left bracket) 3. Adjust the keyboard mapping in DECterm, if that's what you're using. 4. Use dxkeycaps to produce commands for xmodmap. See the manual pages for details. 5. Get an LK421-AA keyboard, a North American keyboard designed for UNIX systems. It has an ESC key, no caps lock, and the keypad has been removed so the keyboard is smaller. ========================================================================= Misc 8 -- Where can I read announcements from Digital? ========================================================================= biz.digital.announce is Digital Equipment Corporation's newsgroup for posting business information on products, services, significant contracts, organizational announcements, cooperative marketing agreements, alliances, seminars, promotions, etc. The newsgroup will be organized so that you can use a "kill" file with your newsreader to skip over (or ignore) classes of announcements that are not of interest. All postings will be organized along the following lines: Subject: Press/... Digital Press Releases Subject: Fact Sheet/... - Supporting Fact Sheets Subject: Backgrounder/... - Supporting Editorial Backgrounders Subject: Partner/... Press Releases from Digital's Partners Subject: Seminar/... Seminars offered by Digital Subject: Promotion/... Sales Promotions offered by Digital Subject: Show/... Digital Tradeshow Activities Subject: Training/... Digital Education & Training The new biz.digital hierarchy is: biz.digital.announce News and Announcements biz.digital.articles Newsletters, Catalog, and Journal Articles ========================================================================= Misc 9 -- Where can I get performance information about Tru64/Alpha products? ========================================================================= http://www.tru64unix.compaq.com/alphaserver http://www.compaq.com/alphaserver ========================================================================= Misc 10 -- How do I report security problems to Digital? ========================================================================= Security problems or questions should go to your normal Customer Support Center. ========================================================================= Misc 11 -- How do I deal with the swap file filling up? ========================================================================= Remove the file /sbin/swapdefaults and reboot. Digital UNIX has two paging modes, lazy and conservative. Conservative means that paging space is allocated as memory is allocated, guaranteeing that there is always somewhere to page to. This limits VM to the size of the paging partitions, but makes for a very robust system. Lazy is more like what people are used to with Unix - paging space is allocated when needed for paging out, you can run more jobs, but you're in big trouble when everything fills up. By default, Digital UNIX comes up in the conservative mode. Removing the swapdefaults file changes the system to lazy mode. ========================================================================= Misc 12 -- How do I deal with login problems? ========================================================================= Versions of Digital UNIX earlier than V3.0 use the /upgrade file to allow access to non-root users. Generally, on these versions, the inability of non-root users to log in is due to a problem with this file. Typically, this file gets deleted by somebody who doesn't understand its purpose. To recover from this problem, do one of the following: 1. cp -p /upgrade0 /upgrade 2. copy /upgrade from another pre-V3.0 Digitial UNIX system. 3. Obtain the O/S distribution media and extract the /upgrade0 file. a. mount -r /dev/rzc /mnt b. cat /mnt/ALPHA/BASE/OSFBASE200 | uncompress | tar xvf - ./upgrade0 c. cp upgrade0 /upgrade NOTE: the 200 in OSFBASE200 varies based on the O/S version. Digital UNIX V3.0 uses the OSF-BASE and OSF-USR PAKs to determine the amount of users allowed. A valid OSF-BASE PAK is required to activate the OSF-USR PAKs. By default, the OSF-BASE PAK alone provides 2 concurrent user support by activating an OSF-USR PAK which is automatically installed. If zero non-root users can login, then you probably have not installed your OSF-BASE PAK properly or it has expired. (Use the "lmf list" command to see the list of installed PAKs. A PAK is good if its status is "active".) Install a valid OSF-BASE PAK. If the problem still persists, then you likely do not have any OSF-USR PAK. Since one is automatically installed for you, this means that somebody inadvertantly deleted the PAK. You can recover this PAK by entering the following: /sbin/it.d/bin/twouser Two concurrent users should be allowed to login at at this time. If your problem is that only two users are allowed to login at the same time, then you probably need a larger or additional OSF-USR PAKs. If you have installed an "unlimited user" OSF-USR PAK but are seeing a restriction on the number of users allowed to login, delete all OSF-USR PAKs other than the PAK which provides for unlimited users. ========================================================================= Misc 13 -- How do I figure out what version of Digital UNIX I have? ========================================================================= The following table correlates the output of the "uname -a" command to the "marketing name" for various Digital UNIX (DEC OSF/1) versions: V2.0 240 V3.0 347 V3.0B 358.78 V3.2 214 V3.2A 17 V3.2B 214.61 V3.2C 148 V3.2D-1 41 V3.2D-2 41.64 V3.2F 69.73 V3.2G 62 V4.0 386 V4.0A 464 V4.0B 564 V4.0C 564.32 V4.0D 878 V4.0E 1091 V4.0F 1229 To determine the correct information for any version of Digital UNIX: # strings /vmunix | grep '(Rev.' | cut -f1 -d';' Or use (For DU v4.0 or higher): # sizer -v | cut -f1 -d';' ========================================================================= Misc 14 -- Are there any Tru64 web sites? ========================================================================= www.unix.digital.com www.tru64.org Please let us know of other good sites. Send additions to admin@tru64.org ========================================================================= Misc 15 -- How do I free disk space for an update installation? ========================================================================= Some users have experienced problems recovering ample disk space after an update installation has aborted due to insufficient space. The following is an example of a typical problem encountered during an update: 1) The update installation exits and indicates that additional space is needed in a particular file system (root, /usr, and/or /var) to perform the update. 2) The user deletes or moves files from the affected file system and/or removes subsets. 3) The user initiates another update attempt. 4) The update installation aborts again because of lack of space, even though the user believes that the space requested during the first attempt has been recovered. There may be several reasons for this problem: o Some users are not following the proper method for removing system files to recover disk space, as described below. o A bug has been identified in the update installation disk space calculation for AdvFS file systems. See "AdvFS Disk Space Calculation Bug" below. o Deletion of small files from an AdvFS file system may not immediately free additional space. See "Additional AdvFS Considerations" below. The proper methods for freeing disk space are as follows: 1) Remove any non-critical optional subsets using 'setld -d'. Deleting or moving individual system files without using the 'setld' command will not yield the additional space needed to continue. Refer to the appropriate appendix of the Installation Guide containing the subset size information that corresponds to the version of Digital UNIX that you have currently installed to help you decide which subsets to remove. 2) Remove any non-critical user-added files which are not part of the base or layered product inventory. Typical large space consumers are left over core files and kernels that are no longer required. 3) For those who have previously performed Digital UNIX update installations, left over obsolete system files, .PreUPD files, and .PreMRG files can use significant amounts of file system space. Use the 'updadmin' utility to first back-up then delete these files. Refer to the installation guide for more information on using updadmin. 4) For AdvFS filesystems, it is possible to save approximately 3MB in root by building a mandatory only kernel (the default) rather than an interactive kernel (i.e. do not specify the "-i" flag to installupdate). Note that you must specify the "-i" flag if there are optional kernel selections that your system depends upon that cannot be satisfied by a mandatory kernel. Section 5.20 of the Digital UNIX 4.0 installation guide gives descriptions of each kernel option. AdvFS Disk Space Calculation Bug -------------------------------- There is currently a known problem with the update space calculation procedure for AdvFS file systems. The bug may cause the update installation to report an amount of 'additional space needed' that is smaller than what is actually necessary. Therefore subsequent update attempts may still request additional space even after the amount originally requested has been freed. This bug will not corrupt your existing system or prevent you from performing an update, but it may cause you to have to free space and restart the update more than once. This bug has been fixed for Digital UNIX 4.0B. Additional AdvFS File System Considerations ------------------------------------------- When removing small files (less than 8K) from an AdvFS file system, additional free space may not be made available to the file system immediately. After the total amount of space consumed by these deleted files reaches a threshold value, all of the space is made available in one large block. This explains why deletion of several small files may not increase the available block count (as shown by "df", for example). In this case the user must continue to delete non-system user-added files until there is an adequate increase in the available block count to allow the update installation to continue. ========================================================================= Misc 16 -- Why doesn't deleting individual system files free space for an update installation? ========================================================================= Deleting files which are part of installed base or layered product subsets will not produce additional free space because the update installation takes into account that these old files will be replaced by new versions. The disk space calculation determines how much additional space is needed to replace an old version of a file with its new version. If the old version of a file is removed without removing the entire subset in which it resides, the update installation will still put the new version on the system. In this situation the full size of the new file will be allocated instead of the difference between the size of the original and new versions. For example, if /genvmunix was 7MB and a new version of /genvmunix was 8MB, update would need to reserve 1MB of free space for the new version. If /genvmunix was deleted before the update, the disk space calculation would then reserve the full 8MB for the new file. So although 7MB was freed before the update, 7MB more would be reserved during the update, which would result in no difference in the amount of additional space needed to continue the update. ========================================================================= Misc 17 -- How do I tune my system for use as a web server? ========================================================================= Elaborate instructions are given on a Web page titled "Digital UNIX Tuning Parameters for Web Servers", available at www.digital.com/info/internet/document/ias/tuning.html This page is updated from time to time, as new information becomes available. ========================================================================= Misc 18 -- Why does dxaccounts tells me that the password and group files are locked? ========================================================================= If a dxaccounts process exits ungracefully (e.g. if a kill -9 is used) then it sometimes leaves a file in /etc called .AM_is_running. Deleting this file will solve the problem. ========================================================================= Network 1 -- Why doesn't FTP work to an XYZ system? ========================================================================= Digital UNIX uses the IP type-of-service option (TOS) by default. This confuses some systems (reportedly Macintoshes). To turn off the option for ftp, create a file /etc/iptos with the following entries: ftp-control tcp 0x0 ftp-data tcp 0x0 Reboot the Alpha system. ========================================================================= Network 2 -- How do you use a NFS-mounted /usr filesystem on Digital UNIX? ========================================================================= Setting Up A "Dataless" Environment under OSF/1 (2.X & 3.X) and A Comment on DEC's Dataless Management Services Jon Forrest forrest@CS.Berkeley.EDU ftp://s2k-ftp.cs.berkeley.edu/pub/personal/forrest/remote.mounting ========================================================================= Network 3 -- Where can I get rstatd for Digital UNIX? ========================================================================= rstatd is in /usr/sbin/rpc.rstatd ========================================================================= Network 4 -- How do I switch between the AUI and 10 Base-T Ethernet ports? ========================================================================= For the DEC n000 series of systems, the syntax is: - Shutdown the system. - At the "" prompt, type: set ethernet thick or set ethernet tenbt - Reboot the system. For the AlphaStation and AlphaServer systems, the syntax is different and depends on what Ethernet adapter you are using. For Digital EtherWorks adapters, they will automatically select between AUI and 10 Base-T but you may have to use the console command: set EWA0_MODE AUI to have this happen. Use the keyword TWISTED-PAIR if that's what you've got. ========================================================================= Network 5 -- Where can I get multicast software for Digital UNIX? ========================================================================= Information about software for multicast applications on Digital UNIX is available from: s2k-ftp.cs.berkeley.edu:8000/sequoia/conferencing or ftp://s2k-ftp.CS.Berkeley.EDU/pub/sequoia/conferencing Binaries of the MBone application suite are also available at chocolate.pa.dec.com/mbone tp://chocolate.pa.dec.com/mbone ========================================================================= Network 6 -- What's wrong with xdr_long in the Digital UNIX XDR routines? ========================================================================= xdr_long is used for sending signed 32-bit values and cannot send 0xFFFFFFFF. xdr_ulong should be used instead. For 64-bit integer values, use xdr_hyper. See the manual pages for more details. This is slightly misleading. xdr_long() can send -1, which in 32 bits is 0xffffffff. xdr_long() does range checking, insuring that the top 33 bits of its 64-bit argument are all ones or all zeroes. If this is not the case, then the signed long integer is beyond the range of representation within a signed 32-bit value, and xdr_long() rightly fails. xdr_u_long() [note typo above!] insures that the top 32 bits of its 64-bit argument are all zero. If this is not the case, then the unsigned long integer is beyond ... blah blah. So, the upshot is: If you're using signed values, use xdr_long(), and DON'T use unsigned constants like 0xffffffff to set variables. If you're using unsigned values, use xdr_u_long(). In both cases, make sure you're within range for 32-bits, if you want to interoperate with 32-bit machines using native data types. ========================================================================= Network 7 -- How do I configure the Berkeley Packet Filter and capture tcpdump traces? ========================================================================= 1) Installing packet filter support tcpdump relies on a kernel option that ordinarily isn't enabled. You can fix this either by adding "options PACKETFILTER" to the system's configuration file and rebuilding (via doconfig -c ) or by: # doconfig *** KERNEL CONFIGURATION AND BUILD PROCEDURE *** Enter a name for the kernel configuration file. [ALINGO]: FILTER You want to name the configuration file 'FILTER' Is that correct? (y/n) [y]: y *** KERNEL OPTION SELECTION *** Selection Kernel Option --------------------------------------------------------------- 1 System V Devices 2 Logical Volume Manager (LVM) 3 Kernel Breakpoint Debugger (KDEBUG) 4 Packetfilter driver (PACKETFILTER) 5 STREAMS pckt module (PCKT) 6 Data Link Bridge (DLPI V2.0 Service Class 1) 7 X/Open Transport Interface (XTISO, TIMOD, TIRDWR) 8 File on File File System (FFM) 9 ISO 9660 Compact Disc File System (CDFS) 10 Audit Subsystem 11 Local Area Transport Support 12 All of the above 13 None of the above --------------------------------------------------------------- Enter the selection number for each kernel option you want. For example, 1 3 : 4 You selected the following kernel options: Packetfilter driver (PACKETFILTER) Is that correct? (y/n) [y]: ... Rebuild and boot the new kernel. 2) Create the packetfilter devices: # cd /dev # ./MAKEDEV pfilt MAKEDEV: special file(s) for pfilt: pfilt0 pfilt1 pfilt2 pfilt3 pfilt4 pfilt5 pfilt6 ... pfilt63 3) Get a better tcpdump (pre V4.0 systems only) Email me for a compressed, uuencoded file of a tcpdump that decodes NFS V3 and several other Sun RPC protocols (MOUNT, NIS, NLM, PORTMAP, and STATMON). 4) Enable local copy promiscuous mode # pfconfig +p +c ln0 (or tu0 or whatever) 5) Run tcpdump Please read the man pages before doing serious monitoring! To look at some NFS traffic, try: # tcpdump -s300 -c100 -Nt udp port 2049 [to look at all NFS traffic] # tcpdump -s300 -c100 -Nt host foo [to look at all to/from foo] -s300 "snaps" up the first 300 bytes of each message, generally enough to get lower level headers, RPC, and enough NFS protocol to make sense of the requests. -c100 says to capture 100 messages and exit. -N says to suppress the domain name (e.g. .zk3.dec.com) in hostnames. -t says to suppress printing timestamps. The result is usually still too long for a 80 column screen, I keep a wide xterm lying around for most of my tcpdump monitoring. The -m option splits some messages over multiple lines. If you send people traces, I generally recommend that you capture data to a binary file and send that. If the recipient needs to, he can run tcpdump with extra filtering or -x (hex dump) to really dig into problems. Do something like: # tcpdump -w /usr/tmp/foo.dmp -s300 udp port 2049 tcpdump: listening on ln0 Using kernel BPF filter ^C 1040 packets # compress foo.dmp # uuencode foo.dmp.Z foo.uu Capturing to a file bypasses all the decoding code which can be very slow and can generate its own IP traffic (e.g. resolving host names). ========================================================================= Network 8 -- How do I switch to full duplex 100mb? ========================================================================= Auto negotiation with hubs is frequently unreliable. The problems usually manifest themselves as slow/poor network response. I have seen actual file transfer speeds that were far worse than the 100mb/s that should have been negotiated. Look at the switch/hub port configurations. Sometimes it actually negotiates down to 10mb! If you set 100mb/fdx, be sure to hard set it on the host AND switch/hub. If you experience poor response, on what appears to be a clean network, auto negotiation problems are a good possibility to check into. To hard set 100mb/fdx at the console level: AlphaStation and AlphaServer console: Shutdown the system set EWA0_MODE FastFD Reboot It will be set each time the system boots. [Frank Bounds, fbounds@tru64.org] To hard set 100mb/fdx at the OS level: The ifconfig speed flag determines the speed (regular or fast Ethernet) and half- or full-duplex mode operation on the tu interface when that interface is using the twisted-pair port as follows: _____________________________________ Value Configuration _____________________________________ 10 10 Mbps Ethernet half-duplex 20 10 Mbps Ethernet full-duplex 100 100 Mbps Ethernet half-duplex 200 100 Mbps Ethernet full-duplex _____________________________________ After the interface is online, you can use the ifconfig up and down options to change the speed value dynamically. Stop adapter transmission with down and set the speed in the same command line. Then specify up without a speed value to restart the adapter. Example: ifconfig tu0 down speed 200 ifconfig tu0 up ========================================================================= Printing 1 -- Printcap filter syntax example ========================================================================= Replace /usr/lbin/printfilter with the appropriate print filter. For example, if you are using a PostScript printer replace /usr/lbin/printfilter with /usr/lbin/ps_level1of. When editing the printcap file make sure that: - No characters, spaces or tabs exist after the line continuation character. - Place comments between queue definitions, not in a definition. Eg: :af=/usr/lbin/lpacct:\ # Inserting comments in a definition will cause problems :if=/usr/lbin/ln03rof:\ ========================================================================= Printing 2 -- TCP/IP Network Printing using socket connection ========================================================================= Requires Tru64 UNIX V4.0a or later. lp|lp0|0:\ :ct=tcp:\ :af=/usr/adm/lpacct:\ :if=/usr/lbin/printfilter:\ :lf=/usr/adm/lp0err:\ :lp=@printer_ip_name/port_9100:\ :mx#0:\ :of=/usr/lbin/printfilter:\ :pl#66:\ :pw#80:\ :rw:\ :sd=/usr/spool/lpd0:\ :xf=/usr/lbin/xf:\ The /etc/services file must be updated to include the printer port/socket number. In this example the printer uses port 9100 so the following /etc/services entry was added. port_9100 9100/tcp The name port_9100 is user definable. If a 9100/tcp entry exists, use the name previously defined. Don't create a second entry. The port number is printer specific. Some printer port numbers are: Printer Manufacture Printer Model Port / Socket Compaq LN16 9100 LN32 9100 Digital DEClaser 3500 10001 DEClaser 5100 10001 LN15 3001 LN17 2501 LN20 35 or 6869 LN40 35 or 6869 LNC02 35 or 6869 Rapid Print 200 10001 Rapid Print 500 3001 Hewlett Packard All Printers 9100 JetDirect EX+3 9100 - port1 9101 - port2 9102 - port3 Lexmark All Printers 9100 ========================================================================= Printing 3 -- Parallel port connection ========================================================================= lp|lp0|0:\ :af=/usr/adm/lpacct:\ :if=/usr/lbin/printfilter:\ :lf=/usr/adm/lp0err:\ :lp=/dev/lp0:\ :mx#0:\ :of=/usr/lbin/printfilter:\ :pl#66:\ :pw#80:\ :sd=/usr/spool/lpd0:\ :xf=/usr/lbin/xf:\ Note, if the setup utility added :rw:, remove it. ========================================================================= Printing 4 -- Serial Port connection ========================================================================= Serial port using software XON/XOFF data flow control at 19200 baud rate. lp|lp0|0:\ :af=/usr/adm/lpacct:\ :br#19200:\ :ct=dev:\ :fc#0177777:\ :fs#03:\ :if=/usr/lbin/printfilter:\ :lf=/usr/adm/lp0err:\ :lp=/dev/tty00:\ :mx#0:\ :of=/usr/lbin/printfilter:\ :pl#66:\ :pw#80:\ :rw:\ :sd=/usr/spool/lpd0:\ :xc#0177777:\ :xf=/usr/lbin/xf:\ :xs#044000: If you have stair stepping problems, or the text runs off the page, change :fs#03: to :fs#023:. This instructs the serial port driver to insert a carriage return character after a line feed. ========================================================================= Printing 5 -- Network lpd remote printing ========================================================================= lp|lp0|0:\ :lf=/usr/adm/lp0err:\ :lp=:\ :rm=system_name:\ :rp=queue_name:\ :sd=/usr/spool/lpd0: Print filters are not used, even when specified. Printing features such as banner pages, landscape printing and tray selection must be provided by the remote system. ========================================================================= Printing 6 -- Network printers using lpd remote connection ========================================================================= lp|lp0|0:\ :lf=/usr/adm/lp0err:\ :lp=:\ :rm=printer_ip_name:\ :rp=raw:\ :sd=/usr/spool/lpd0: Some printers use the rp value to specify file processing. The value is printer dependent and case sensitive. For HP LaserJet printers, use 'text' to process text files, and 'raw' for no file processing, and for all other file types including PostScript files. Print filters are not used, even when specified. Printing features such as banner pages, landscape printing and tray selection are not available. ========================================================================= Printing 7 -- Print filters ========================================================================= This section specifies which print filter to use when lprsetup or printconfig does not include your printer model. It's possible more than one filter will work for a printer. The following selected filters will provide basic printing capabilities and will work for all connection methods. Basic printing capabilities is the ability to print text files. Preformatted files should be printed using the -x flag, for example 'lpr -Pqueue -x file.pcl'. The -x flag instructs the print system to use the pass-through filter to prevent file formatting. The pass-through filter is usually defined in the printcap entry as :xf=/usr/lbin/xf:. Some print filters, such as the lpf filter, only work on the serial port. The serial port driver provides a feature to insert a carriage return after a line feed that is not available for the parallel port, tcp/ip and lpd remote connections. Without this feature some print filters generate an output known as stair stepping. Stair stepping can look like one long line running off the page, but usually you will see the following: LINE1 LINE2 LINE3 All print filters will work on the serial port with the correct settings. Only some filters will work for parallel port, and tcp/ip printing. Don't expect access to mail bins, input trays, output trays, and other nice hardware features. This requires a device specific filter or special customizations. ========================================================================= Printing 8 -- Postscript printer filter ========================================================================= Printcap filter specification: /usr/lbin/ps_level1of Lprsetup printer type: ps_level1 This filter provides text to PostScript file conversion. The filter can't convert files containing printer control codes, such as HP PCL, or process PostScript files starting with printer specific commands such as HP PJL %-12345X. Features: Converts text files to PostScript. Portrait and landscape printing. Simplex and duplex printing. Notes: For A4 paper use the filter specification '/usr/lbin/ps_level1of -Sa4'. ========================================================================= Printing 9 -- Generic text printing ========================================================================= Printcap filter specification: /usr/lbin/pcfof +Cgeneric_text.pcf Lprsetup printer type: generic_text This setup is intended for all printers using letter paper, printing at 10 characters per inch and at 6 lines per inch. Refer to the printer manual for instructions on how to configure the printer. Features: Formats text files and eliminates stair stepping. Odd and even page printing. Notes: Change printcap setting :pw#80: to :pw#0:. For A4 paper use printer type generic_text_a4 or printer file generic_text_a4.pcf. ========================================================================= Printing 10 -- HP PCL printing ========================================================================= Printcap filter specification: /usr/lbin/pcfof +Chpdj680c.pcf Lprsetup printer type: hp680c This setup will work for impact, inkjet and laser printers that include the Hewlett Packard PCL3 through PCL5e printer programming language. Refer to the printer manual to determine if the PCL language is provided. Many printers provide more than one language. For these printers set the default language to PCL or to auto file sensing. Some printers that include the PCL language are HP, Lexmark, Xerox. Epson and Canon printers have their own language and probably won't include the PCL language. Features: Formats text files and eliminates stair stepping. Portrait and landscape printing. Odd and even page printing. Notes: Change printcap setting :pw#80: to :pw#0:. For A4 paper use printer type hp680c_a4 or print file hpdj680c_a4.pcf. Not all printers are the same, so here are some additional filter specifications to try: /usr/lbin/pcfof +Chpdj1120c.pcf /usr/lbin/pcfof +Cln17.pcf ========================================================================= Printing 11 -- DEC ANSI printers ========================================================================= Printcap filter specification: /usr/lbin/pcfof +Cgeneric_ansi.pcf Lprsetup printer type: generic_ansi Features: Formats text files and eliminates stair stepping. Odd and even page printing. Notes: Change printcap setting :pw#80: to :pw#0:. For A4 paper use printer type generic_ansi_a4 or print file generic_ansi_a4.pcf. ========================================================================= Printing 12 -- Selecting print filters ========================================================================= You need to select a filter based on the printer language, not by the printer make and model. If you don't know what languages are provided reference the printer manual. You looked in the manual and you still don't know which filter to select. Try the following: Printer Filter Type --------------------------- ----------------- HP LaserJet PCL Filter or PostScript Filter HP DeskJet PCL Filter Lexmark Laser PCL Filter or PostScript Filter Lexmark Ink Jet PCL Filter Xerox Laser PCL Filter or PostScript Filter Canon Generic Text Filter Epson Generic Text Filter All other printers Generic Text Filter If the printer is connected to the serial port you can also try the following filters: Printer Filter --------------------------- ----------------- All printers /usr/lbin/lpf Epson /usr/lbin/epsonof These epsonof and lpf filters require a printcap setting of :fs#023:. ========================================================================= Printing 13 -- Printing postscript files on a non-postscript printer ========================================================================= Tru64 UNIX does not provide this functionality. Look into using the GhostScript freeware utility. ========================================================================= Programming 1 -- What tools will help me port software to Digital UNIX? ========================================================================= The Digital Porting Assistant (available for Digital UNIX 3.2, and shipped as part of the developer toolkit on Digital UNIX 4.0) is a graphical environment which aids in the porting process. In addition to doing lint-like checking of C and Fortran code, it also contains extensive on-line help regarding developing software on Digital UNIX. Information about the Digital Porting Assistant can be found on the web at: www.digital.com/info/porting_assistant The version of lint shipped with Digital UNIX has many checks to help port software to Alpha. In particular, the -Q option is very useful. See the manual page for more details. There is also a document/book entitled: Interoperability, OpenVMS and DEC OSF/1 Interoperability Guide. EC-N3399-43. A company called Sector 7 deals with porting software from OpenVMS to Digital UNIX. www.sector7.com The -taso flag to cc will often help with making code work on the 64bit Alpha. This causes addresses to be 32-bits and should be used only as a last resort. FreePort Express is a binary translator (running on Alpha) which permits you to convert your SunOS 4.1.x (same as Solaris 1.x) user executables into Digital UNIX executables in minutes. FreePort Express runs under Digital UNIX V3.0 or later, and is available FREE of charge (hence the name). www.novalink.com/freeport-express ========================================================================= Programming 2 -- Why can't I run dbx? ========================================================================= The development environment is a separate layered product beyond the base OS. Although it is included on the Digital UNIX consolidated CD-ROM, the license must be purchased separately to use any portion of the Developer kit. Within the Digital UNIX Developer Kit the license just happens to be enforced by a check in dbx. For more information, look in: http://www.digital.com/info/lists/dec-osf1-axp-SPD-anw.html Developer Toolkit for Tru64 UNIX, Version 4.0F ========================================================================= Programming 3 -- Why do my applications not work after I upgrade to a new version of Digital UNIX? ========================================================================= Sometimes the details of the shared libraries change between releases. In general, applications compiled on an earlier version of Digital UNIX should still run on a later version. The converse may not be true. The usual solution is to recompile from scratch. ========================================================================= Programming 4 -- Where can I get a debugging malloc that works on Tru64 UNIX? ========================================================================= Insure++ from ParaSoft at http://www.parasoft.com. Capable of detecting memory corruption, memory leaks, memory allocation errors, variable definition conflicts, I/O errors, pointer errors and library errors. ftp://ftp.digital.com/pub/misc/malloc_dbg (Has not been updated for a long time...) If you get the package, be sure to read the stuff in the file contrib/dec_notes which explains how to replace malloc on the fly in an existing program. The ATOM tools with Digital UNIX 3.0 and later also help with debugging memory allocation problems. Sentinel, from AIB Software Corporation is a run-time analysis tool that supports memory access error detection as well as leak detection on Tru64 UNIX. More info, as well as free evaluation copies, is available from info@aib.com, or by calling 800-296-3000 (703-787-7700). ========================================================================= Programming 5 -- What's with 'ld: unresolved symbols: dnet_conn'? ========================================================================= Some libraries on Digital UNIX (notably the X11 library) are compiled so that they can use DECnet as well as TCP/IP. To link with such libraries, include -ldnet_stub at the end of link command. If you have DECnet software installed, use -ldnet. ========================================================================= Programming 6 -- How can I tell what program generated a core file? ========================================================================= 1. Use the dbx debugger. 2. Use the "file" program (e.g., file ) 3. Use "strings" to find clues in the core file (e.g., strings ) ========================================================================= Programming 7 -- What does "unaligned access" mean, and how can I fix it? ========================================================================= Unaligned accesses typically come up when programs use malloc(3) or other memory allocation routines in atypical ways, or when programs do certain (hazardous) kinds of type casts. malloc(3) returns data aligned to the most restrictive alignment (8 byte boundaries). If you are writing your own malloc wrapper (say to add a reference count) and you write code like this: char *mymalloc(int size) { short *newmem; newmem = (short *) malloc(size + sizeof(short)); *newmem = 1; /* initialize reference count */ return (char *) (newmem + 1); } you are then returning a pointer that is no longer 8-byte aligned. Now, code like int *i; i = (int *) mymalloc(sizeof(int)); *i = 10; will generate unaligned access messages whenever *i is used. An example of dangerous casting would be something like char buffer[100]; int i; i = (int)*((int *)&buffer[3]); The program will usually still run correctly, because an exception handler in the kernel performs an unaligned read. There are some rare cases, however, where the fixed read yields incorrect results. The messages are printed by default because one usually wants to know when a program is generating the unaligned accesses. Now, if you are only getting a few of these messages, it might not matter, but if you are getting pages of them (or worse, have turned off the logger because you were getting so many unaligned access messages), you might consider correcting your program. You can use the uac(1) (Unaligned Acces Message Control) command to turn off the messages. If you want to find the the problem in the source code, you can use dbx. Suppose the message is: Fixed up unaligned data access for pid 2337 (bozo) at pc 0x5ad364 This tells you that the problem occurs in the program "bozo". In dbx, you would type, for example: % dbx bozo (dbx) 0x5ad364/i *[main:206, 0x0x5ad364] lw r0,40(sp) dbx prints the offending instruction, along with its location: line 206 in main(). ========================================================================= Programming 8 -- What about "unaligned access" in FORTRAN programs? ========================================================================= This is most often caused by COMMON blocks in which variables are not naturally aligned. For example: REAL*4 X REAL*8 Y COMMON /CMN/ X,Y Y will be at offset 4, which is not a multiple of its size (8). The best solution is to rearrange variables in the COMMON so that real, complex and integer variables are listed in order of decreasing size, followed by CHARACTER variables. Put your declaration in an INCLUDE file to make sure all uses are consistent! You can also ask the compiler to automatically add padding to align variables through the -align dcommons switch, or through a CDEC$ OPTIONS directive. See the DEC Fortran User Manual for further details. ========================================================================= Programming 9 -- How can I get microsecond resolution from gettimeofday(2)? ========================================================================= Normally, Digital UNIX updates its internal idea of the current time once per clock tick (1024 Hz, or about once per millisecond). In Digital UNIX V4.0 and later, it is possible to rebuild the kernel to support approximately microsecond resolution from the gettimeofday(2) system call, and from the various library routines that use this system call. To enable this option, add the following line to the kernel configuration file and rebuild the kernel: options MICRO_TIME The system clock (CLOCK_REALTIME) resolution as returned by clock_getres(3) will not change. Timer resolution remains the same. However, the granularity of the time returned by gettimeofday(2) and clock_gettime(3) will now be in microseconds. The time values returned are SMP safe and monotonically increasing. The high-resolution clock can be used for timestamping and for measuring durations on the order of microseconds, such as time spent in some critical code path. ========================================================================= Security 1 -- How do I authenticate users on Tru64 UNIX? ========================================================================= Perhaps a bit of background first - generally the question is related to C2 or Enhanced Security, but the question always boils down to how can I take a given username and password and authenticate a user. Generally, this would be a combination of : pwd = getpwnam(username); if (strcmp(pwd-pw_passwd, crypt(password, pwd-pw_passwd)) == 0) return success; return fail; The above assumes char *username and char *password are filled in with "precollected" username and password... The problem/issue with this method is that for Enhanced Security configurations the pwd-pw_passwd field contains an asterisk ("*") and the password is actually stored in another database (/tcb/files/auth.db or /var/tcb/files/auth.db). In addition, the password found in those databases may not have been encrypted using the crypt() function. Tru64 UNIX solves this by providing a general purpose function "sia_validate_user()" which will accept as parameters the username and password and perform the user authentication for you regardless of the security mechanism that is in place. Using the sia_validate_user() function relieves the programmer of needing to know what security mechanism is being used on the target Tru64 UNIX system. The following is a code example which can be compiled and run as its own image or can be fit into an existing application which performs the getpwnam() and crypt() calls. % cat siavaluser.c #include #include #include #include #include int main(int argc, char *argv[]) { int myargc = 1; char *myargv[2]; char *user = "someusername"; char *pass = "yourpassword"; int auth_stat; myargv[0] = "yourapplicationname"; myargv[1] = NULL; set_auth_parameters(argc, argv); if (argc != 3) { fprintf(stderr, "usage: %s username password ", argv[0]); exit(1); } user = argv[1]; pass = argv[2]; auth_stat = sia_validate_user(NULL,myargc,myargv,NULL,user,NULL,0,NULL,pass); if (auth_stat != SIASUCCESS ) { printf("No go %d", errno); perror(""); } printf ("Done "); } % cc -g -o siavaluser siavaluser.c -lsecurity % ./siavaluser username password ========================================================================= Software 1 -- What (free) tools are there for looking at system behavior? ========================================================================= syd, a utility like top, is on the Freeware disk for versions of Digital UNIX before V3.0. It is also available for anonymous FTP from many sites. One is ftp://ftp.Uni-Koeln.DE/decosf; and there you can also get a version that works with version 3.x of Digital UNIX. The latest official version of top (3.4) supports single cpu Alphas running Digital UNIX 1.2, 1.3, 2.0, 3.0, and 3.2. It is at ftp://eecs.nwu.edu/pub/top It does not support multi-cpu alphas, because no-one with root access to a multi-cpu alpha has stepped forward to do the work. When compiling, note the warning about compiling with optimisation. lsof, a utility for listing open files, is available from: ftp://vic.cc.purdue.edu/pub/tools/unix/lsof In addition there is a program for listing locks on files that runs on 3.2 and 4.0 at least in: ftp://vic.cc.purdue.edu/pub/tools/unix/lslk vmubc is a graphical and tty-based tool for displaying statistics on CPU, UBC, and virtual memory. Note that to compile on OSF/1 2.x, add -DGSI_CPUS_IN_BOX=55 to the CFLAGS. vmubc is available from: ftp://gatekeeper.dec.com/pub/Digital/vmubc.tar.Z It was written by George Chaltas of DEC. sys_check is a ksh script, that generates a HTML file of a Digital UNIX configuration. It is supported on both V3.2C-G, and V4.0A-D systems. Sys_check is included in current Tru64 UNIX Operating system releases. http://www.tru64unix.compaq.com/sys_check/sys_check.html ========================================================================= Software 2 -- How can I figure out what files translated binaries are looking for? ========================================================================= Try setenv MXR_TRACE_SYSCALLS open,stat,fstat,access Running mxr -help will describe this environment variable along with some other useful ones. ========================================================================= Software 3 -- Where can I get a T-shell (tcsh)? ========================================================================= On the Freeware/OpenSource CD or from: www.unix.digital.com/demos/index.html ========================================================================= Software 4 -- How can I use audio on AlphaStations and DECstations? ========================================================================= There are a few options for playing audio on Alpha systems. Most workstations come with 8-kHz mono audio I/O hardware that is enabled by configuring the bba (base board audio) device in the kernel. The Sound & Motion J300 a/v TURBOchannel option card also has audio hardware that support programmable sample rates from 8kHz to 48kHz stereo. Two software packages are available to drive audio on Alpha systems: MME implements a Microsoft-style API and comes bundled with OSF/1. AF, developed at the Digital Cambridge Research Laboratory, runs on a wide range of platforms including DECstation, Alpha, Sun, SGI, and HP. It is available in source form from: ftp://ftp.digital.com/pub/DEC/AF ========================================================================= Software 5 -- How do I play music CDs on CD-ROM drives? ========================================================================= Sources for xcd are included in /usr/examples/motif/xcd. Another version of xcd is on the Freeware CD-ROM in both source and binary form, but that version may have been superseded by the one distributed with the operating system. Neither cdp nor xcd is supported by Digital. Two other programs are Workman and xmcd, both of which can be found on ftp.x.org. Of all these programs, xmcd seems to be the widest used and to have the largest database of audio CD data. ========================================================================= Software 6 -- Can I run binaries from RISC/ULTRIX on a Digital UNIX system? ========================================================================= DECmigrate for Digital UNIX Systems was announced with all of the Alpha AXP systems on November 10, 1992. mxr - MIPS Translator Runtime Environment /usr/bin/mxr is still available as late as Tru64 UNIX 4.0F ========================================================================= Software 7 -- Where are patches/updates for DIGITAL UNIX available from? ========================================================================= There is a searchable database of available updates at: www.service.digital.com/patches/ ========================================================================= Software 8 -- How do I move the license data when migrating to V5.0? ========================================================================= Use the lmf issue command, make sure that you read the man page. Before you do this it makes sense to take a backup of the lmf license database, the easiest way to do this is to tar up /var/adm/lmf.